Se connecter avec
S'enregistrer | Connectez-vous

header capricieux

Dernière réponse : dans Programmation
Expert Programmation

Bonjour,

J'ai un petit problème de redirection après une insertion en bdd, voici le code:

  1. ...
  2. if (!eregi("^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,3})$",$mail)) {
  3.  
  4. header('Location: erreur.php?erreur=EmailInvalid');
  5. }
  6. else {
  7.  
  8. $pseudo_sql = addslashes($pseudo);
  9. $pass_sql = addslashes($pass);
  10. $pass_md5 = md5($pass_sql);
  11. $mail_sql = addslashes($mail);
  12.  
  13. require ('config.php');
  14. mysql_connect ("$host", "$bdd", "$pass");
  15. mysql_select_db ("$bdd");
  16.  
  17. $req = mysql_query ("INSERT INTO pigeon_user VALUES ('', '".$pseudo_sql."', '".$pass_md5."', '".$mail_sql."', '".time()."')");
  18.  
  19. header('Location: index.php?action=RedirectRegister');


Je vous ai mis le petit bout de code de vérif d'email, parce que le header fonctionne si l'email est invalide mais par contre, pour l'inscription dans la bdd, tout s'inscris mais la redirection ne se fais pas... et je n'ai aucune erreur php.

Merci de m'aider!

Autres pages sur : header capricieux

Lassé par la pub ? Créez un compte
Expert Programmation

Je n'ai fais aucun echo, je viens d'essayer de mettre le header avant la requete d'inscription a la bdd et il me redirige bien, bon le truc c'est que rien ne s'inscrit vu que la redirection se fais avant...

Il n'a plus fonctionner a partir du moment ou je l'ai mis après la connexion à la bdd...

J'ai un ami qui a eu le même problème et je dois t'avouer qu'après avoir chercher un bon moment , je n'ai rien trouvé :/ 

Php est très capricieux concernant l'utilisation de la méthode header() :( 
Expert Programmation

Est-ce que par hasard, tu n'enverrais pas de données au client avant l'appel de header ?

L'appel à header doit se faire avant tout envoi de contenu HTML au client (sinon ça n'a pas de sens en HTTP).
Si l'on ne peut pas faire autrement, il faut tout bufferiser, pour n'envoyer les données HTML qu'après changement de header (avec ob_start et ob_end_flush).
Un exemple: http://www.un-programmeur-php.ca/articles/header.php
Lassé par la pub ? Créez un compte
Tom's guide dans le monde