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 :

[FTP] probléme de echo


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 58
    Points : 16
    Points
    16
    Par défaut [FTP] probléme de echo
    Hello

    J'ai un petit probléme mon générateur de login de s'affiche pas sur ma page. D'où vien l'erreur ?
    En espérant que sa soit claire
    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
     
     
    require("conf.php");
    $LieuIns= $_POST["LieuIns"];
    $LieuRes= $_POST["LieuRes"];
    $TranchAge= $_POST["TranchAge"];
    $Sexe= $_POST["Sexe"];
    $Activ= $_POST["Activ"];
     
     
    // CONNEXION A LA BASE DE DONNEE 
    $db_link = @mysql_connect($sql_serveur,$sql_user,$sql_passwd); 
    if(!$db_link) {echo "Connexion impossible à la base de données <b>$sql_bdd</b> sur le serveur <b>$sql_server</b><br>Vérifiez les paramètres du fichier conf.php"; exit;} 
     
    // Fonction de génération de login 
    function Login() { 
        srand(time()); 
        $a="abcdefghijklmnopqrstuvwxyz0123456789"; 
         for($i; $i<=7; $i++) { 
             $Login.=substr($a, (rand()%(strlen($a))),1); 
         } 
        return($Login); 
    } 
     
    $login=Login(); 
    if (!empty($login)) { 
        echo $login."<br>\n"; 
    } 
    $id=ID(); 
     
     
    //Mettre à jour la table 
    $req="insert into Inscription (LieuInscrip,LieuRes,Age,Sex,Activite,Login) values ("'.$_POST['LieuIns'].'", "'.$_POST['LieuRes'].'", "'.$_POST['Age'].'", "'.$_POST['Sex'].'", "'.$_POST['Activite'].'", "'.$_POST['Login'].'")';
    $requete=mysql_db_query($sql_bdd,$req,$db_link) or die(mysql_error()); 
    echo $req; 
     
    } 
    ?>

  2. #2
    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 Re: probléme de echo
    Citation Envoyé par ardamus
    J'ai un petit probléme mon générateur de login de s'affiche pas sur ma page. D'où vien l'erreur ?
    Parce qu'il y a une erreur ? Qu'est ce qui te fait dire ça ?

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 58
    Points : 16
    Points
    16
    Par défaut
    rien ne s'affige sur la page donc il doit avoir des erreures

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 109
    Points : 131
    Points
    131
    Par défaut
    return n'est pas une fonction !
    devient:

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 58
    Points : 16
    Points
    16
    Par défaut
    rien ne s'affiche, meme avec le changement

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 109
    Points : 131
    Points
    131
    Par défaut
    Citation Envoyé par ardamus
    rien ne s'affiche, meme avec le changement
    Bha faut topuver d'ou vient l'erreur !

    met en commentaire ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if (!empty($login)) { 
        echo $login."<br>\n"; 
    }
    et fait juste l'echo de $login

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo ("=>$login<=");
    pour voir.

  7. #7
    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
    Il faut que tu parseme ton code de echo pour voir où le script passe et où il ne passe pas.
    Exemple :
    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
     
    <?php
    echo "Debut du script <br>"; //////////////
    require("conf.php");
    echo "Recup des parametres <br>"; //////////////
    $LieuIns= $_POST["LieuIns"];
    $LieuRes= $_POST["LieuRes"];
    $TranchAge= $_POST["TranchAge"];
    $Sexe= $_POST["Sexe"];
    $Activ= $_POST["Activ"];
     
     
    // CONNEXION A LA BASE DE DONNEE 
    echo "Connexion à la base<br>"; //////////////
    ....
    Puis quand tu as resolu ton bug, tu enleves ces traces.
    Procède par étapes.

  8. #8
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    @dev_php_205 : de même que echo, return peut être utilisé avec ou sans parenthèses.

    @ardamus : commence par utiliser mt_rand() plutôt que rand(), c'est conseillé dans la doc.
    Ensuite, je te suggère d'éviter les caractères i, I, l, L, 1, o, O et 0 pour éviter les confusions.
    Pour régler ton problème, affiche toutes les erreurs en environnement de développement : tu ne définis pas $i.
    Cela te donnera quelque chose comme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    function Login() {
        $a = 'abcdefghijklmnopqrstuvwxyz0123456789';
        $Login = '';
         for($i=0; $i<=7; ++$i) {
             $Login .= $a{mt_rand(0, strlen($a)-1)};
         }
        return($Login);
    }
     
    echo Login();

  9. #9
    Membre averti Avatar de XtofRoland
    Profil pro
    Inscrit en
    Août 2005
    Messages
    357
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2005
    Messages : 357
    Points : 392
    Points
    392
    Par défaut
    sans en etre sur,
    $Login.= ne marche que si $Login vaut qqc
    donc si tu rajoute $Login = "" ; avant de boucler ca devrait aller
    (j'ai pas verifié ce que je dis)
    Le but de tout developpeur OO est de devenir une référence.
    Mon avatar est un ambigramme, les curieux peuvent le retourner ;-)
    Aider <> Faire a la place de!!!

  10. #10
    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
    Citation Envoyé par XtofRoland
    sans en etre sur,
    $Login.= ne marche que si $Login vaut qqc
    donc si tu rajoute $Login = "" ; avant de boucler ca devrait aller
    (j'ai pas verifié ce que je dis)
    Ca marche sans preinitialisation. Tu obtiens un joli warning, mais ca marche.

  11. #11
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Citation Envoyé par Mr N.
    Tu obtiens un joli warning, mais ca marche.
    Visiblement, les warnings ont été désactivés sur sa config, sinon il aurait su pourquoi cela ne fonctionnait pas.

  12. #12
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 109
    Points : 131
    Points
    131
    Par défaut
    @ Kirkis

    Sur :
    http://fr3.php.net/manual/fr/function.return.php

    Note : Notez que puisque return() est une structure de langage et non pas une fonction, les parenthèses ne sont pas requises : en fait, il est classique de les ignorer, même si cela ne change rien et vous devriez actuellement en faire de même, PHP ayant moins de travail dans ce cas.
    C'est ce qui est recommande ...

  13. #13
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 58
    Points : 16
    Points
    16
    Par défaut
    J' ai fait des modifes mais rien de change.


    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
     
    require("conf.php");
    $LieuIns= $_POST["LieuIns"];
    $LieuRes= $_POST["LieuRes"];
    $TranchAge= $_POST["TranchAge"];
    $Sexe= $_POST["Sexe"];
    $Activ= $_POST["Activ"];
     
     
    // CONNEXION A LA BASE DE DONNEE 
    $db_link = @mysql_connect($sql_serveur,$sql_user,$sql_passwd); 
    if(!$db_link) {echo "Connexion impossible à la base de données <b>$sql_bdd</b> sur le serveur <b>$sql_server</b><br>Vérifiez les paramètres du fichier conf.php"; exit;} 
     
     
     
    // Fonction de génération de login 
     
    function Login() { 
        $a = 'abcdefghijklmnopqrstuvwxyz0123456789'; 
        $Login = ''; 
         for($i=0; $i<=7; ++$i) { 
             $Login .= $a{mt_rand(0, strlen($a)-1)}; 
         } 
        return($Login); 
    } 
     
    echo Login();
     
     
    //Retourne à la page du formulaire si certain champ son vide 
    if($pseudo_membre==""){ 
        echo "Vous devez remplire tous les champs<br><br><a     href=\"javascript:window.history.back()\">Retour</a>";exit; 
    } else { 
     
     
    //Mettre à jour la table 
    $req="insert into Inscription (LieuInscrip,LieuRes,Age,Sex,Activite,Login) values ("'.$_POST['LieuIns'].'", "'.$_POST['LieuRes'].'", "'.$_POST['Age'].'", "'.$_POST['Sex'].'", "'.$_POST['Activite'].'", "'.$_POST['Login'].'")';
    $requete=mysql_db_query($sql_bdd,$req,$db_link) or die(mysql_error()); 
    echo $req; 
     
    } 
    ?>

  14. #14
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 109
    Points : 131
    Points
    131
    Par défaut
    Comme te l'as dit Mr N.

    met des echo a chaque etape de ton script pour voir ou il passe !

  15. #15
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 58
    Points : 16
    Points
    16
    Par défaut
    j'ai mi tous les echo? mais rien ne s'affiche

  16. #16
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    On va y aler tranquillement : d'une part, tu as une connexion à la BDD avec un echo si ça ne fonctionne pas : pas d'affichage, la fonction passe.
    Ensuite, tu echo le retour de la fonction que je t'ai passé, qui fonctionne très bien. Pas d'echo n'a lieu, donc je sèche totalement.
    Il y a quelque chose que tu ne nous dis pas. Si tu mets un echo sur la première ligne du script, il l'affiche ?

  17. #17
    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
    Tu es sur que tu appelles la bonne page ?
    dans ton fichier php.ini, que vaut la valeur display_errors ?

  18. #18
    Membre éclairé Avatar de Yobs
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    675
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2004
    Messages : 675
    Points : 846
    Points
    846
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    //Mettre à jour la table 
    $req="insert into Inscription (LieuInscrip,LieuRes,Age,Sex,Activite,Login) values ('".$_POST['LieuIns']."', '".$_POST['LieuRes']."', '".$_POST['Age']."', '".$_POST['Sex']."', '".$_POST['Activite']."', '".$_POST['Login']."')"; 
    $requete=mysql_db_query($sql_bdd,$req,$db_link) or die(mysql_error()); 
    echo $req; 
     
    } 
    ?>
    en fait il y avait un ' à la place de " à la fin de ta variable $req donc c'est normal que rien ne soit afficher.

    EDIT: je suis allé un peu trop vite en besogne il y avait pas mal d'erreur entre les " et '. Par contre je pense que le serveur ne montre pas les erreurs sinon tu les aurais vu, ce n'est pas très pratique pour le debuggage.
    Chaque problème a une solution, mais il est plus facile de répondre si le problème est correctement renseignés

  19. #19
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 58
    Points : 16
    Points
    16
    Par défaut
    Merci tout s'affiche:

    Debut du script
    Recup des parametres
    Connexion à la base
    9cidgcld
    Retour


    Il y a encore un probléme, les données "LieuInscrip, LieuRes, Age, Sex, Activite, Login" ne s'enregistre pas dans ma BD.D'où cela pourrai t'il venir ?

  20. #20
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 109
    Points : 131
    Points
    131
    Par défaut
    Citation Envoyé par ardamus
    Merci tout s'affiche:

    Debut du script
    Recup des parametres
    Connexion à la base
    9cidgcld
    Retour


    Il y a encore un probléme, les données "LieuInscrip, LieuRes, Age, Sex, Activite, Login" ne s'enregistre pas dans ma BD.D'où cela pourrai t'il venir ?
    En faisant un echo de ta requete SQL ?

Discussions similaires

  1. [FTP] Problème pour uploader un fichier
    Par Crazyblinkgirl dans le forum Entrée/Sortie
    Réponses: 10
    Dernier message: 07/01/2008, 22h21
  2. Réponses: 4
    Dernier message: 06/01/2006, 10h45
  3. [ftp] problème d'upload
    Par FFF dans le forum Serveurs (Apache, IIS,...)
    Réponses: 1
    Dernier message: 21/12/2005, 09h05
  4. [FTP] problème header("location:......")
    Par K4trix dans le forum Langage
    Réponses: 23
    Dernier message: 30/11/2005, 11h53
  5. [ftp] problèmes!
    Par itsmii dans le forum MFC
    Réponses: 4
    Dernier message: 01/09/2004, 11h34

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