[RESOLU]redirection php a partir d'un form le tout sur un seul fichier

redirection php a partir d'un form le tout sur un seul fichier [RESOLU] - PHP - Programmation

Marsh Posté le 26-10-2010 à 17:19:28    

Salut  :hello:  
 
Je cherche à faire une redirection assez bizarre.  
En fait, je cherche a, en rentrant une URL dans un formulaire, rediriger l'utilisateur sur la dite URL tout en y rajoutant une variable a sa fin.
Le tout, si possible dans un seul fichier.
 
Voici pour l'instant mon code (qui ne fonctionne pas):

Code :
  1. <?php
  2. if(isset($_POST['novar']))
  3.   {
  4.     $bearnovar=$_POST['lien'].'?'$_POST['powner'];
  5.     header("Location: ".$bearnovar);
  6.   }
  7. if(isset($_POST['avar']))
  8.   {
  9.     $bearnovar=$_POST['lien'].&.$_POST['powner'];
  10.     header("Location: ".$bearavar); 
  11.   }
  12. ?>
  13. <html><body>
  14.   <form method="post" action="pwn.php">
  15.     <input type="text" value="" name="lien" />
  16.     <input type="hidden" value="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" name="powner" />
  17.     <button type="submit" value="1" name="novar" >GO (?) </button>
  18.     <button type="submit" value="1" name="avar" >GO  (& ) </button>
  19.   </form>
  20. </body></html>


 
le formulaire est envoyé sur lui-même et, normalement, la partie php devrais récupérer l'URL, y ajouter ?powner=aaaa ou &powner=aaaa suivant le bouton auquel l'utilisateur appuie et renvoyer l'utilisateur sur la nouvelle URL.
 
L'erreur (chargement de la page, avant d'entrer quoi que ce soit): Parse error: syntax error, unexpected T_VARIABLE in /var/www-SSL/pwn2.php on line 4
Mon diagnostique: Malgré l'utilisation de if isset, il cherche quand même les variables qui ne sont pas encore définies...
 
Voilou, si vous avez une solution, n’hésitez pas.
 
PS: je suis toujours en train d'apprendre le PHP, seulement, comme je suis autodidacte, j'ai certainement de grosses lacunes sur des trucs tout simples tout en ayant des bases solides sur des trucs plus compliqués.  
PPS: A partir de demain, je serais en voyage donc je ne pourrais répondre que soit dans la journée d'aujourd'hui, soit dans 2~3 jours...


Message édité par mlmmlmmlm le 26-10-2010 à 18:57:47
Reply

Marsh Posté le 26-10-2010 à 17:19:28   

Reply

Marsh Posté le 26-10-2010 à 17:54:49    

t'as oublier un . apres '?'

Reply

Marsh Posté le 26-10-2010 à 18:35:50    

Merci, j'avais oublié aussi les '' pour encadrer le &.
 
Maintenant, il me met une autre erreur:  
Warning: Cannot modify header information - headers already sent by (output started at /var/www-SSL/pwn2.php:1) in /var/www-SSL/pwn2.php on line 5
 
Ça veux dire que je doit utiliser un autre type de redirection qu'avec headers?

Reply

Marsh Posté le 26-10-2010 à 18:44:50    

t'as pas un espace , un saut de ligne avant ton <?php, t'as vérifie que c'est pas en UTF-8 avec BOM ?

Reply

Marsh Posté le 26-10-2010 à 18:54:10    

Merci, c’était bien la signature UFT8 =]
 
Pour les interessés, voici le code final:

Code :
  1. <?php
  2. if(isset($_POST['novar']))
  3.   {
  4.     $bearnovar=$_POST['lien'].'?'.$_POST['powner'];
  5.     header("Location: ".$bearnovar);
  6.   }
  7. if(isset($_POST['avar']))
  8.   {
  9.     $bearavar=$_POST['lien'].'&'.$_POST['powner'];
  10.     header("Location: ".$bearavar); 
  11.   }
  12. ?>
  13. <html><body>
  14.   <form method="post" action="pwn.php">
  15.     <input type="text" value="" name="lien" />
  16.     <input type="hidden" value="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" name="powner" />
  17.     <button type="submit" value="1" name="novar" >GO (?) </button>
  18.     <button type="submit" value="1" name="avar" >GO (& ) </button>
  19.   </form>
  20. </body></html>


Message édité par mlmmlmmlm le 26-10-2010 à 18:54:51
Reply

Sujets relatifs:

Leave a Replay

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