Variable $msg non transmise ou refresh ne se fait pas

Variable $msg non transmise ou refresh ne se fait pas - PHP - Programmation

Marsh Posté le 11-11-2006 à 04:23:29    

Bonjour,
 
Dans un script d'inscription, j'ai un petit soucis de refresh ou de non-transmission de $msg.
 
Voici une partie du script.
 
Cette partie fonctionne (refresh et le $msg s'affiche) :

Citation :

if($action == "verif" )
{
 
$login = $HTTP_POST_VARS["login"];
$email = $HTTP_POST_VARS["email"];  
 
$login = strip_tags($login);
$email = strip_tags($email);
 
if (empty($login) || empty($email))
{
 echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"0; URL = ?msg=Les+champs+sont+obligatoires+!\">";
 exit;
}


 
C'est celle là qui me pose problème, le $action == "verif s'effectue mais soit il refresh ensuite avec juste "?" sans msg=....... soit il ne refresh pas après la vérif :

Citation :


else
{
 $taille  = 15;
 $lettres = "abcdefghjkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ123456789#$%";
 srand(time());
 for ($i=0;$i<$taille;$i++)
 {
  $User_Pwd.=substr($lettres,(rand()%(strlen($lettres))),1);
 }
 
 $date = date("d/m/Y" );
 
 $sql = "INSERT INTO $tb_membres (id, User_Login, User_Pwd, email, date, active) VALUES ('', '$login', '".md5($User_Pwd)."', '$email', '$date', '1')";
 mysql_query ($sql);
 
 $sendto  = "$email";
 $subject = "Votre Compte Personnel sur $nom_site";
 $body    = "Bonjour !\n\nUn accès vient de vous être créé sur $nom_site ($url_site) !\nAfin de pouvoir vous y connecter, voici vos identifiants de connexion :\n\nLogin    :  $login\nPassword :  $User_Pwd\n\n\n____________________________________________________________________________________________\n\nCECI EST UN EMAIL AUTOMATIQUE ! NE REPONDEZ PAS ! AUCUNE REPONSE NE VOUS SERA RETOURNEE !\n\n____________________________________________________________________________________________\n$nom_site";
   
 
 mail($sendto,$subject,$body,$from);
 
 echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"0; URL = ?msg=Un+email+contenant+vos+identifiants+vient+de+vous+être+envoyé+!\">";
 }
 
mysql_close($db);
 
}
 
?>


 
Yaurait-il un problème dans ces quelques lignes ?
 
Merci de votre aide.
 
yul_B

Reply

Marsh Posté le 11-11-2006 à 04:23:29   

Reply

Marsh Posté le 11-11-2006 à 08:22:47    

Tu peux essayer la redirection en php:

Code :
  1. header('Location: http://ton.url?msg=');
  2. exit;


C'est mieux également de mettre le chemin complet pour les redirections.

Reply

Marsh Posté le 11-11-2006 à 11:22:40    

Merci Sigmar_
 
J'ai essayé le header location mais idem. J'ai finalement viré les accents dans le message et cela semble fonctionner.
 
A suivre ...

Reply

Marsh Posté le 11-11-2006 à 11:54:49    

Utilises plutôt $_POST au lieu de $HTTP_POST_VARS ;)


---------------
Viendez sur le Newbie-Project et essayez le Newbie-Directory (nouveau)
Reply

Marsh Posté le 11-11-2006 à 13:36:19    

Tu as également la fonction urlencode() disponible:

Code :
  1. header('Location: mapage.php?msg=' . urlencode('identifiants envoyés') );
  2. exit;


Note que tu peux évidemment sauvegarder le résultat de urlencode('..') si ton message est fixe, pour gagner une nanoseconde ;)

Reply

Sujets relatifs:

Leave a Replay

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