[PHP HTML] Récupération de chaînes

Récupération de chaînes [PHP HTML] - Programmation

Marsh Posté le 03-05-2001 à 09:49:07    

Je récupère une chaîne avec un script php que je récupère avec la méthode post et j'essaye de l'analyser. Quel est le caractère de fin de chaîne?
ça marche ça :
$i=0;
while ($i<strlen($chaine)){
 while($chaine[$i]!='fin de chaine'){
  $ligne=$ligne.$ligne[$i];
  $i++;
 }
 echo "$ligne<br>";
}

Reply

Marsh Posté le 03-05-2001 à 09:49:07   

Reply

Marsh Posté le 03-05-2001 à 10:36:29    

la fonction ord() retourne la valeur ascii d'un caractère.
Le code pour le retour chariot est 10.
Donc :  

Code :
  1. $i=0;
  2. while ( $i < strlen( $chaine ) )
  3. {
  4.    $ligne = "";
  5.    while( ord( $chaine[$i] ) != 10 )
  6.    {
  7.       $ligne = $ligne.$chaine[$i];
  8.       $i++;
  9.    }
  10.    echo "$ligne<br>";
  11. }


 
J'en conclus que tu as réussi à passer tes 50Ko en POST !

 

[edit]--Message édité par Mara's dad--[/edit]


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 03-05-2001 à 11:06:45    

Non, pour l'instant je test avec moins mais apparement tout ne passe pas. Je te tiendrai au courant sur ce post si tu veux.
Merci pour la fin de chaîne, je vais tester
:=)

Reply

Marsh Posté le 03-05-2001 à 12:40:06    

J'ai testé ce code avec 92Ko dans le textarea sans problème !
 

Code :
  1. <html>
  2. <head>
  3.   <title>Test</title>
  4. </head>
  5. <body>
  6. <?php
  7. if( isset( $chaine ) )
  8. {
  9.    $ligne = "";
  10.    while ( $pos = strpos( $chaine, chr(10) ) )
  11.    { 
  12.       $line = substr( $chaine, 0, $pos - 1 );
  13.       $chaine = substr( $chaine, $pos + 1 );
  14.       echo "$line<br>"; 
  15.    }
  16.    // Pour la dernière ligne qui n'est pas terminée par un retour chariot
  17.    if( strlen( $chaine ) > 0 )
  18.    {
  19.       echo "$chaine<br>"; 
  20.    }
  21. }
  22. ?>
  23. <FORM action="tst.php3" method=POST>
  24. <TEXTAREA cols=65 rows=25 name=chaine></TEXTAREA>
  25. <INPUT type=submit>
  26. </FORM>
  27. </body>
  28. </html>


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 03-05-2001 à 15:03:47    

Je te remercie beaucoup alors, çaveut dire que mes scripts ont des erreurs. Je vais arranger ça!, grâce à toi!
MERCI, enfin qlq'un qui aide vraiment!
C'est cool, j'y retourne!

Reply

Marsh Posté le 03-05-2001 à 15:18:39    

Le principal problème de ton algo est qu'il traite la chaîne caractère par caractère.
C'est sans problème pour quelques disaines de caractères, mais pour plusieurs Ko, il vaut mieux faire confiance à strpos() pour trouver les retours chariots.
Bon courrage pour la suite !


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed