Problème - variable non récupérée

Problème - variable non récupérée - PHP - Programmation

Marsh Posté le 18-04-2006 à 08:26:39    

Bonjour,
J'ai un formulaire par lequel on envoie du texte ($msg) et un script qui récupère ces données pour les rajouter à un fichier dont le nom est composé de propositions_ $idblague .txt Tout marche à merveille sauf que quand $idblague=001 les données se trouvent dans un fichier propositions_.txt Je précise qu'idblague a été donné par l'adresse du fichier (par ex index.php?idblague=001).
Où est le problème?

 

Voici le formulaire:

Code :
  1. <form name="send" method="post" action="index.php">
  2. <input type="hidden" name="name" value="'.FilterText($name).'">
  3. <input type="hidden" name="page" value="blagues">
  4. <input type="hidden" name="idblague" value=<?php echo ($idblague) ?> >
  5. <input type="text" name="msg" size="100">&nbsp;<input type="submit" value="Envoyer">
  6. </form>


Voici le traitement de ce formulaire:

Code :
  1. <?
  2. if($action==1){
  3. Function WriteMyFile($contenu){
  4. $fp = fopen("messages.txt", "w" );
  5. $r = fwrite($fp, "$contenu" );
  6. fclose($fp);
  7. }
  8. Function ReadMyFile(){
  9. $max=13;
  10. $fcontents = file("messages.txt" );
  11. $lines=count($fcontents);
  12. if ($lines<$max){$startline=0;}else{$startline=$lines-$max;}
  13. for ($i = 0; $i <= $max; $i++) {$contenu .= $fcontents[$i+$startline];}
  14. return $contenu;
  15. }
  16. return $ReplyText;
  17. }
  18. //
  19. if($msg!="" ){
  20.         if($msg=="la tete" ){
  21.            
  22.             Function WriteMyFile($contenu){
  23.             $fp = fopen("messages.txt", "w" );
  24.             $r = fwrite($fp, "$contenu" );
  25.             fclose($fp);
  26.             }
  27.             Function ReadMyFile(){
  28.             $max=13;
  29.             $fcontents = file("messages.txt" );
  30.             $lines=count($fcontents);
  31.             if ($lines<$max){$startline=0;}else{$startline=$lines-$max;}
  32.             for ($i = 0; $i <= $max; $i++) {$contenu .= $fcontents[$i+$startline];}
  33.             return $contenu;
  34.             }
  35.            
  36.            
  37.            
  38.             WriteMyFile("Un utilisateur a trouvé la bonne réponse ! <BR>".ReadMyFile());
  39.        
  40.         }
  41.        
  42.        
  43.         else {
  44.        
  45.         if($msg!="" ){
  46.        
  47.         Function WriteMyFile($contenu){
  48.         $fp = fopen("messages.txt", "w" );
  49.         $r = fwrite($fp, "$contenu" );
  50.         fclose($fp);
  51.         }
  52.         Function ReadMyFile(){
  53.         $max=13;
  54.         $fcontents = file("messages.txt" );
  55.         $lines=count($fcontents);
  56.         if ($lines<$max){$startline=0;}else{$startline=$lines-$max;}
  57.         for ($i = 0; $i <= $max; $i++) {$contenu .= $fcontents[$i+$startline];}
  58.         return $contenu;
  59.         }
  60.        
  61.         WriteMyFile($msg."<BR>".ReadMyFile());
  62.        
  63.         }
  64.         }
  65. }else{
  66. }
 

Reply

Marsh Posté le 18-04-2006 à 08:26:39   

Reply

Marsh Posté le 18-04-2006 à 14:38:42    

Sans la partie du code qui ouvre ou crée le fichier "propositions_xxx.txt", il est impossible de savoir d'où vient ton probléme.
 
Tout ce qu'on peut dire, c'est que

Citation :

index.php?idblague=001

<>

Citation :

<form name="send" method="post" action="index.php"><input type="hidden" name="idblague" value="001">


mais que

Citation :

index.php?idblague=001

=

Citation :

<form name="send" method="get" action="index.php"><input type="hidden" name="idblague" value="001">

 
 
PS : met toujours des guillemets autour de la valeur du "value" d'une balise, ca t'évitera de t'intéroger pendant des heures si tu te retrouve avec un espace au milieu du texte.


Message édité par omega2 le 18-04-2006 à 14:39:57
Reply

Marsh Posté le 18-04-2006 à 15:47:30    

Ils sont où les $_GET et les $_POST ?! C'est honteux un code pareil ...

Reply

Marsh Posté le 19-04-2006 à 12:07:25    

Vaedan a écrit :

Ils sont où les $_GET et les $_POST ?! C'est honteux un code pareil ...


Je suis newbie alors c'est déjà pas mal!  :whistle:

 

J'ai cerné le problème mais j'ai déjà fait pas mal d'essais et je vois pas comment faire.... :pt1cable:  Pouvez m'aider??? Merci!  :jap:

Reply

Marsh Posté le 19-04-2006 à 12:12:27    

www.php.net
 
tout est là....

Reply

Sujets relatifs:

Leave a Replay

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