Variable $msg non transmise ou refresh ne se fait pas - PHP - Programmation
Marsh Posté le 11-11-2006 à 08:22:47
Tu peux essayer la redirection en php:
Code :
|
C'est mieux également de mettre le chemin complet pour les redirections.
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 ...
Marsh Posté le 11-11-2006 à 11:54:49
Utilises plutôt $_POST au lieu de $HTTP_POST_VARS
Marsh Posté le 11-11-2006 à 13:36:19
Tu as également la fonction urlencode() disponible:
Code :
|
Note que tu peux évidemment sauvegarder le résultat de urlencode('..') si ton message est fixe, pour gagner une nanoseconde
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) :
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 :
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