Prob d'affichage dun aray

Discussion dans 'Web, design' créé par d e v, 29 Mai 2004.

Statut de la discussion:
Fermée.
  1. Offline
    d e v ex membre
    Ba voila j'ai fait un scirpt a la facon minichat pour que 10phrases reste enregistrée mais a l'affichage sa ne marche pa ( voir gra ou est l'erreur )



    <?
    if (isset($_POST['pseudo']) AND isset($_POST['message']))
    {
    if ($_POST['pseudo'] != NULL AND $_POST['message'] != NULL)
    {

    mysql_connect("mysqlbox", "login", "motdpass");
    mysql_select_db("bdd");

    $message = htmlentities ($_POST['message']);
    $pseudo = htmlentities ($_POST['pseudo']);

    mysql_query("INSERT INTO minichat VALUES('', '$pseudo', '$message')");

    mysql_close();
    }
    }

    ?>

    <form action="chat.php" method="post">

    <center>
    Pseudo : <input type="text" name="pseudo"><br>
    Message : <input type="text" name="message"><br>

    <input type="submit" value="Envoyer">
    </center>

    </form><p>



    <?

    mysql_connect("mysqlbox", "pseudo", "motdpass");
    mysql_select_db("bdd");

    $reponse = mysql_query("SELECT * FROM minichat ORDER BY ID DESC LIMIT 0,10") or die(mysql_error());

    mysql_close();

    while ($donnee = mysql_fetch_array($reponse) );
    {
    ?>

    <? echo $donnee['pseudo']; ?> : <? echo $donnee['message']; ?>
    <p>

    <?

    }

    ?>
    d e v, 29 Mai 2004
    #1
  2. Offline
    Carambar He once forgot how to cry
    Jette un coup d'oeil sur le contenu de l'array avec ceci :

    Code:
    echo ('<pre>'); print_r($donnee); die();
    Carambar, 29 Mai 2004
    #2
  3. Offline
    kokotchY Elite
    je ne vois pas l'utiliter du die() !

    sinon d3v-, c'est peut etre la table minichat que tu n'as pas crée !

    a la fin apres ce que Fearless a dit d'ajouter, mets ceci :
    echo mysql_error();
    pour voir s'il y a une erreur sql

    (tu aurais pu dire que ce n'était pas de toi :roll: )
    kokotchY, 29 Mai 2004
    #3
  4. Offline
    Carambar He once forgot how to cry
    Pas besoin de crier ;) . Le die a toute son utilité puisque cette instruction interrompt la génération d'un page et se limite à l'affichage du contenu d'un variable. Crois moi, ca se justifie lorsqu'une page comporte beaucoup d'éléments graphiques et autres. Ca évite aussi d'exécuter des modifications de la DB en SQL qui pourrais s'y trouver par la suite.

    Bonne question :p . Est-ce qu'elle existe cette table ?
    Carambar, 29 Mai 2004
    #4
  5. Offline
    kokotchY Elite
    a ouais pas con le coup du die, j'y avais jamais pensé (bien que je ne l'utilise que dans les mysql_query(...) or die() )
    kokotchY, 29 Mai 2004
    #5
  6. Offline
    d e v ex membre
    ué la table minichat est crée
    d e v, 29 Mai 2004
    #6
  7. Offline
    kokotchY Elite
    tu as essayé de mettre un mysql_error() ?
    kokotchY, 29 Mai 2004
    #7
  8. Offline
    d e v ex membre
    ué y a rien
    d e v, 30 Mai 2004
    #8
  9. Offline
    d e v ex membre
    jl'avais dja mi :]
    d e v, 30 Mai 2004
    #9
  10. Offline
    kokotchY Elite
    et pourquoi ca ne marche pas ?
    rien ne s'affiche ?
    kokotchY, 30 Mai 2004
    #10
  11. Offline
    guslinux Gamerz'ien
    tu es sur de pouvoir mettre un "-" dans un nom de table ou de champ ... un "_" oui ... mais j'ai deja eu des blemes avec un soft Java basé sur une DB Access ... donc je pense que c du SQL pour les deux, donc logiquement, pas de "-" en MySQL.
    guslinux, 30 Mai 2004
    #11
  12. Offline
    kokotchY Elite
    il n'y a pas de - ni de _ dans les champs et tables !
    kokotchY, 30 Mai 2004
    #12
  13. Offline
    xXFMCXx ex membre
    Il y a une petite erreur dans ton script...
    Mais tu aurais dû avoir un message d'erreur, c'est pourquoi je ne comprends pas très bien, regarde à la fin de ta ligne "while(... ". Il y a un ";". Ce qui provoque une erreur étant donné qu'une ligne while le peut se finir qu'avec une "{".

    Bonne chance !
    xXFMCXx, 6 Juin 2004
    #13
  14. Offline
    kokotchY Elite
    non mais c'est effectivement ca l'erreur !
    pour une boucle (if, while, for) le bloc { } n'est pas obligatoire si on ne mets qu'une ligne :
    if ($test == 3) echo test;
    va afficher test sir $test = 3

    ici comme il n'y a aucune action, il ne fait rien
    kokotchY, 6 Juin 2004
    #14
  15. Offline
    xXFMCXx ex membre
    :cool: lol
    xXFMCXx, 6 Juin 2004
    #15
Statut de la discussion:
Fermée.