IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Système] Problème avec header() ...


Sujet :

Langage PHP

  1. #1
    Membre régulier Avatar de tom06440
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2004
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 150
    Points : 102
    Points
    102
    Par défaut [Système] Problème avec header() ...
    Bonjour @tous

    j'ai un gros soucis avec la fonction header()

    sur 2 sites différents mais créé à partir du meme code et hébergé au meme endroit un fonctionne impec et l'autre non

    sachant que cette erreure apprait sur un fichier identique en tout point sur les 2 sites ...

    Voici l'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Warning: Cannot modify header information - headers already sent by (output started at /home3/t/touslesscripts/www/design/header.php:117) in /home3/t/touslesscripts/www/PassOublie.php on line 34
    voici le code la page question :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
     
    <?
    // Envoi d'un nouveau mot de passe
    session_start();
     
    include("includes/config.php");
    include("includes/session.php");
     
    include("design/header.php");
     
    if(isset($_POST['ButtonPassOublie'])){
    	// Recherche de l'email dans la base
    	$res_email = mysql_query("select * from users_datas where email='".$_POST['P1']."' limit 1");
    	if(mysql_num_rows($res_email)==1){
    		$pass = rand(100000,999999);
    		$pass_crypt = md5($pass);
    		// Enregistrement du nouveau mot de passe dans la base
    		mysql_query("update users_datas set motpasse='".$pass_crypt."' where email='".$_POST['P1']."' limit 1");
    		// Envoi d'un email contenant le nouveau mot de passe
    		$row_user = mysql_fetch_array($res_email);
    		$recipient = $row_user['nom']." ".$row_user['prenom']." <".$row_user['email'].">";
    		$subject = "Nouveau mot de passe";
    		$message = "Bonjour,<br><br>";
    		$message .= "Voici conformément à votre demande, votre nouveau mot de passe : ".$pass."<br><br>";
    		$message .= "Celui ci a été généré automatiquement pour plus de sécurité.<br>";
    		$message .= "Vous pourrez le remodifier dans la gestion de votre compte.<br><br>";
    		$message .= "<a href=http://www.webmaster-paradise.com>Webmaster-Paradise</a>";
    		mail($recipient, $subject, $message, $MailHeaders);
    		// Message de confirmation
    		header("Location: Login.php?NewPass=oui");
    		exit;
     
     
    	} else {
    		header("Location: Login.php?erreur_email=oui");
    		exit;
    	}
     
     
    } else {
    	header("Location: Login.php");
    	exit;
    }
     
    include("design/footer.php");
    ?>
    merci de votre aide

  2. #2
    Membre régulier Avatar de tom06440
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2004
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 150
    Points : 102
    Points
    102
    Par défaut
    je reprécise que ce code fonctionne sur 1 site mais pas sur l'autre ...

  3. #3
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Qu'y a t il ici : design/header.php:117 ?

  4. #4
    Membre régulier Avatar de tom06440
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2004
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 150
    Points : 102
    Points
    102
    Par défaut
    le haut du design ... mais le code fonctionne sur un site mais pas sur l'autre avec exactement la même chose ...

    Les javascripts ne peuvent pas interférer avec header() ?

    Je sais que header doit etre mis avant tout code html, mais la fonction header("Location: ...");

    fonctionne partout ou je l'ai mis et même après du code html sauf sur cette page de ce site

  5. #5
    Membre expérimenté

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Points : 1 639
    Points
    1 639
    Par défaut
    Citation Envoyé par tuning-attitude
    le haut du design ... mais le code fonctionne sur un site mais pas sur l'autre avec exactement la même chose ...

    Les javascripts ne peuvent pas interférer avec header() ?

    Je sais que header doit etre mis avant tout code html, mais la fonction header("Location: ...");

    fonctionne partout ou je l'ai mis et même après du code html sauf sur cette page de ce site
    Non, tu as tord : les headers ne peuvent pas être envoyés après de l'html, sinon tu obtiens le message que tu cites.
    A mon avis, sur le site où ça marche, tu ne dois pas avoir d'html produit dans header.php.

    Sinon, envois-nous exactement le code html produit dans la page d'erreur.

  6. #6
    Membre expérimenté

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Points : 1 639
    Points
    1 639
    Par défaut
    Au passage, exit étant une fonction (ou plus exactement un élément de langage), elle doit normalement se coder :

  7. #7
    Membre expérimenté

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Points : 1 639
    Points
    1 639
    Par défaut
    Autre chose. Pourquoi tu envois un header et un footer, alors que ce script provoque forcément une redirection (si je l'ai bien lu) ?

  8. #8
    Débutant
    Homme Profil pro
    Inscrit en
    Avril 2003
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Togo

    Informations forums :
    Inscription : Avril 2003
    Messages : 50
    Points : 60
    Points
    60
    Par défaut
    Salut

    si tu veux (si tu le peux biensur) eviter juste les messages sans trop comprendre pourquoi essaies du javascript.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    //code php
    ?>
    <script type="text/javascript">
     location.href='login.php'; // par exemple
    </script>
    <?
    // suite de code php
    J'espere que ca peut t'aider
    @+

  9. #9
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 422
    Points : 238
    Points
    238
    Par défaut
    Citation Envoyé par fofovi72
    Salut

    si tu veux (si tu le peux biensur) eviter juste les messages sans trop comprendre pourquoi essaies du javascript.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    //code php
    ?>
    <script type="text/javascript">
     location.href='login.php'; // par exemple
    </script>
    <?
    // suite de code php
    J'espere que ca peut t'aider
    @+
    Avec cette solution, n'importe qui peut désactiver le javascript sur son navigateur et passer outre. Avec le header de PHP, il n'y a pas ce genre de problèmes

  10. #10
    Membre expérimenté

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Points : 1 639
    Points
    1 639
    Par défaut
    Citation Envoyé par fofovi72
    Salut

    si tu veux (si tu le peux biensur) eviter juste les messages sans trop comprendre pourquoi essaies du javascript.
    Ca ne ressemble pas trop à du code propre, tout cela...

  11. #11
    Membre régulier Avatar de tom06440
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2004
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 150
    Points : 102
    Points
    102
    Par défaut
    g supprimé mon header.php et mon footer.php et ça fonctionne
    mais je ne l'ai pas retiré sur l'autre site et çs fonctionne quand meme

    alors même en connaissant mon erreur, je n'ai toujours pas trouvé pourquoi d'un site à un autre à code identique, les scripts ne réagissent pas pareil ...

    Je crois qu'on peut dans ce cas appliquer la théorie que l'informatique n'est pas une science exacte !

    Sinon pour le javascript je préfère éviter car si on désactive ça bloque par le fait le site donc je préfère utiliser une redirection serveur

    Si un jour quelqun trouve le bug qui cause ça dans php ...

    Une dernière chose, un troisième site que j'ai n'a pas non plus ce problème de header tout en étant mis après le code html ...

    Bonne soirée @tous

  12. #12
    Membre régulier Avatar de tom06440
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2004
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 150
    Points : 102
    Points
    102
    Par défaut
    vg33 pour répondre à ta question, c'est simplement un oubli lors d'un copié collé (les habitudes du développement cobol )

    mais sur 2 hébergement et 2 sites estétiquement différent mais qui utilisent le même code ne réagissent pas pareil ... (aussi même hébergeur)

    mystère mystère ...

  13. #13
    Membre expérimenté

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Points : 1 639
    Points
    1 639
    Par défaut
    Citation Envoyé par tuning-attitude
    g supprimé mon header.php et mon footer.php et ça fonctionne
    mais je ne l'ai pas retiré sur l'autre site et çs fonctionne quand meme
    As-tu vérifié, sur le site qui fonctionnait, si le header.php renvoyait du html ?

  14. #14
    Membre régulier Avatar de tom06440
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2004
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 150
    Points : 102
    Points
    102
    Par défaut
    en tout cas le fichier en contient car c'est tout le haut du design ...
    et le footer le bas et entre les deux mes scripts

    pour l'instant je cherche mais je trouve pas d'ou vient cette différence de fonctionnement

  15. #15
    Membre chevronné
    Avatar de ska_root
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    1 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Août 2005
    Messages : 1 203
    Points : 1 839
    Points
    1 839
    Par défaut
    Citation Envoyé par tuning-attitude
    Je crois qu'on peut dans ce cas appliquer la théorie que l'informatique n'est pas une science exacte !
    je sais pas d'où tu sors ça... il existe de trés rares problèmes logiques que seul un matheux invétéré peut déceler.
    Tu devrais le savoir vu que Cobol n'est pas si éloigné que ça d'une série de 1 et de 0

    ton problème est on ne peut plus logique, le header ne fonctionne pas parce que un segment est envoyé au navigateur avant. Cela peut-être un espace avant "<?" (y compris dans les includes) Il peut s'agir d'un message d'erreur aussi... genre un retour de requête sql

    bref, y'a forcément quelque chose qui diffère entre tes deux sites
    ;-)

  16. #16
    Membre régulier Avatar de tom06440
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2004
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 150
    Points : 102
    Points
    102
    Par défaut
    non car g simplement fait une copie du fichier du site ki fonctionne vers celui qui fonctionne pas

    donc forcément le code executé est le même

    et ou ije te confirme que cobol est très proche du binaire et ce language permet de savoir maitriser copier coller

Discussions similaires

  1. [Système] Problème avec variables
    Par marie4449 dans le forum Langage
    Réponses: 3
    Dernier message: 22/05/2006, 19h42
  2. Problème avec header et session
    Par byvan dans le forum Langage
    Réponses: 3
    Dernier message: 19/04/2006, 09h25
  3. [Système] Problème avec les formulaires
    Par Ludo75 dans le forum Langage
    Réponses: 9
    Dernier message: 02/02/2006, 11h13
  4. Problème avec header & session_s
    Par cristolb dans le forum Langage
    Réponses: 8
    Dernier message: 31/01/2006, 00h38
  5. [JpGraph] problème avec header
    Par ciesco dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 08/01/2006, 17h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo