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

PHP & Base de données Discussion :

Lier mon formulaire à ma bdd


Sujet :

PHP & Base de données

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 46
    Par défaut Lier mon formulaire à ma bdd
    bonjour,

    Je me suis lancée dans le php dpeuis peu..
    J'ai créer un formulaire sur mon site. Les visiteurs peuvent y insérer un com.
    J'airemaris que ces com soit stockés dans ma BDD mais cela ne fonctionne pas..
    J'ai pourtant tout vérifié...
    voici mo code :

    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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> 
    <head> 
    <title> envoyer</title> 
    </head> 
    <body> 
    <?php 
    require_once("config.php");
    if ((isset($_POST["pseudo"]))&&(isset($_POST["mail"]))&&(isset($_POST["message"])))
    {
     
    mysql_connect(HOST,USER,PASSWD) or die ('Impossible de se connecter à la BDD'.mysql_error()); 
    mysql_select_db(DB);
     
    $pseudo=$_POST["pseudo"];
    $mail=$_POST["mail"]; 
    $message=$_POST["message"]; 
     
    $pseudo=mysql_real_escape_string($pseudo);
    $mail=mysql_real_escape_string($mail);
    $message=mysql_real_escape_string($message);
     
    $sql="SELECT * FROM message";
    $Req="INSERT INTO mess VALUES('$pseudo','$mail','$message')"or die(mysql_error());
    mysql_query($Req) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());  
    mysql_close();
    }
     
    ?> 
    </body>
     
    </html>

    Pensez-vous que j'ai fais une erreur quelquespart?? sachant qu'aucune erreur n'est retournée.

    Merci bien.

  2. #2
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    Bonjour,

    Citation Envoyé par senderia Voir le message
    J'airemaris que ces com soit stockés dans ma BDD mais cela ne fonctionne pas..
    Une erreur s'affiche ? Qu'est ce qui se passe exactement ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 46
    Par défaut
    justement rien.
    J'envoie mon formulaire et j'accède à ma page merci d'avoir laissé votre com (je m'ai pas mis ici dans mon code ) et puis qd je me rend sur phpmayadmin aucun enregistrement n'est présent..

    alors voilà..ça fait 2 jours que je suis dessus et je sais plus quoi faire..

  4. #4
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    Juste un petit détail, même si ça ne règlera pas ton problème, au lieu de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $pseudo=$_POST["pseudo"];
    $mail=$_POST["mail"];
    $message=$_POST["message"];
     
    $pseudo=mysql_real_escape_string($pseudo);
    $mail=mysql_real_escape_string($mail);
    $message=mysql_real_escape_string($message);
    tu peux faire directement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $pseudo=mysql_real_escape_string($_POST["pseudo"]);
    $mail=mysql_real_escape_string($_POST["mail"]);
    $message=mysql_real_escape_string($_POST["message"]);
    Et sinon c'est normal que sur tes 2 requêtes, un coup ta table s'appelle message et l'autre coup elle s'appelle mess ?

    Peux tu rajouter un echo devant cette ligne pour voir ce que ta variable contient ?
    (Et le or die(mysql_error()) ne doit pas etre mis ici)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo $Req="INSERT INTO mess VALUES('$pseudo','$mail','$message')";

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 46
    Par défaut
    alors j'ai fais les modif.. pas d'erreur.. rien ne 's'affiche.. avec echo c'est censé marquer quoi? dsl je débute..

    voici le code corrigé :

    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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> 
    <head> 
    <title> envoyer</title> 
    </head> 
    <body> 
    <?php 
    require_once("config.php");
    if ((isset($_POST["pseudo"]))&&(isset($_POST["mail"]))&&(isset($_POST["message"])))
    {
     
    mysql_connect(HOST,USER,PASSWORD) or die ('Impossible de se connecter à la BDD'.mysql_error()); 
    mysql_select_db(DB);
     
    $pseudo=mysql_real_escape_string($_POST["pseudo"]);
    $mail=mysql_real_escape_string($_POST["mail"]);
    $message=mysql_real_escape_string($_POST["message"]);
     
    $sql="SELECT * FROM messages";
    echo $Req="INSERT INTO messages VALUES('$pseudo','$mail','$message')";
    mysql_query($Req);
    mysql_close();
    }
     
    ?> 
    <a href= "http://localhost/C/accueil.html"><img src="Image\BB.gif"></a> 
    <br><br><br>
    <center>
    <font color="blue" size = 15> Je vous remercie pour le message!! </font>
    </center>
     
    </body>
     
     
    </html>

  6. #6
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    C'est censé afficher la requête..

    Mais si rien ne s'affiche, c'est que tu ne rentre pas dans la condition

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ((isset($_POST["pseudo"]))&&(isset($_POST["mail"]))&&(isset($_POST["message"])))
    Peux tu montrer le code html du formulaire qui affiche cette page ?


    Et sinon, est ce que le texte "Je vous remercie pour le message!!" s'affiche bien en bas de page ?

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 46
    Par défaut
    alors, le message Je vous remercie pour le message s'affiche sur une eutre page quand j'appuie sur "envoyer" (le bouton).

    Voici mon formulaire :

    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
    47
    48
    49
    50
    51
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
                           "http://www.w3.org/TR/REC-html40/loose.dtd">
     
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    </head>
    <body>
    <h1 style="text-align : center;"> <img src="Image\R.gif"></h1>
    <FORM id="livredor"  method="POST" action="envoyer.php">
    <br/>
    <br/>
    <br/>
    <table>
      <tr>
        <td>
          <strong>Votre Pseudo: </strong>
        </td>
        <td>
          <input name="pseudo" type="text" size="50"/>
        </td>
      </tr>
      <tr>
        <td>
          <strong>Votre mail: </strong>
        </td>
        <td>
          <input name="mail" type="text" size="50"/>
        </td>
      </tr>
      <tr>
        <td>
          <strong>Votre message : </strong>
        </td>
        <td>
          <textarea name="texte" cols="50" rows="20"/>
          </textarea>
        </td>
      </tr>
      <tr>
        <td>
          <input name="annuler" type="reset" value="Annuler"/>
        </td>
        <td>
          <input name="soumettre" type="submit" value="Envoyer"/>
        </td>
      </tr>
    </table>
    </form>
    </body>
    </html>


    merci

  8. #8
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    Ton textarea s'appelle "texte" or tu essayes de récupérer "message" dans ton php.
    Tu dois donc modifier le name de ton textarea en "message"

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 46
    Par défaut
    hello,
    alors quand je met message la page où il y a écrit "je vous remercie;.." ne s'affiche plus.. ça me met " Internet Explorer ne peut pas afficher cette page Web "


    edit, qd je réactualise cette page j'accède à ma page je vous remercie...
    comprends plus rien là

  10. #10
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    Surement un petit bug

    Pense à cliquer sur résolu si ça l'est

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 46
    Par défaut
    un bug? mais que faire alors? car rien ne s'affiche dans ma BDD..
    pff je désespère là .. moi qui voulait créer moi même mon tout premier formulaire.. ben c'est raté lol

    merci en tout cas pour ton aide.

    Bonne fête.
    bizz

  12. #12
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    je parlais d'un bug passagé de IE.

    Mais la requête s'affiche maintenant ?

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 46
    Par défaut
    non, ça me met toujours "Internet Explorer ne peut pas afficher cette page Web " de plus rien ne se met dans la bdd.


    j'ai essayé avec mozilla même pb.

  14. #14
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    Tu peux essayer de commenter mysql_connect et mysql_select_db ?

  15. #15
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 46
    Par défaut
    commenter?
    te dire ce que fais ces deux lignes de commande?

  16. #16
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    Non, rajoute // devant les lignes
    ça permet de ne pas les interpréter.

  17. #17
    Membre averti
    Inscrit en
    Juin 2008
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 29
    Par défaut
    bonjour et bonne année à tous.

    moi je débarque ici pendant que tout le monde dort encore (il y en a même qui ronflent) et je lis un peu les questions/réponses, ça fait toujours du bien de s'instruire.

    commenter une ligne en php c'est mettre // devant le code


    alors quand je met message la page où il y a écrit "je vous remercie;.." ne s'affiche plus.. ça me met " Internet Explorer ne peut pas afficher cette page Web "
    la page appelée est envoyer.php, elle s'ouvre bien si tu l'appelles directement par l'url ?

    C'est quelle erreur qui s'affiche ? détaille le message d'erreur stp, ou bien met une capture d'écran

    du côté html, il y a d'innombrables erreurs de syntaxes

    les \ devrait être des /

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     <img src="Image\R.gif"><img src="Image\BB.gif">
    tu mets <FORM et tu fermes </form

    en (x)Html toutes les balises sont écrites en minuscules

    tu fermes bien tes balises input mais pas celle des images et des br
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src="chemin/image.ext" /> <br />
    tu mets bien un style à ton h1 mais ton élément font est mal renseigné
    15 quoi ? paires de chaussettes ?

    remplace :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <font color="blue" size = 15> Je vous remercie pour le message!! </font>
    par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <p style="font-size:15px; color: #0000ff;"> je vous remercie pour le message!!</p>
    [EDIT] si les champs de la table "message" sont "pseudo, mail, mess" la requête s'écrit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $Req="INSERT INTO message(pseudo, mail, mess) VALUES('$pseudo','$mail','$message')"or die(mysql_error());
    mysql_query($Req) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
    le select ici ne sert à rien

    Je rajouterais une balise meta entre les balises "head" pour le retour automatique à la page de formulaire genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <meta http-equiv="refresh" content="1; url=formulaire.php">

  18. #18
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 46
    Par défaut
    bonjour,
    dsl pour la réponse tardive mais je n'ai pas pu passer avant avec tous les invités à la maison.
    Je repasse demain en début de soirée.
    Je testerais ce qui a été mis.
    Merci bien!!


    Bonne année aussi!!!

  19. #19
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 46
    Par défaut
    me revoilà, je profite d'un petit moment pour m'eclipser vous mettre ce que je viens de découvrir!!
    j'ai une erreur..enfin quelquechose se passe

    Notice: mysql_connect() [function.mysql-connect]: SQL safe mode in effect - ignoring host/user/password information in C:\wamp\www\C\Livredor\envoyer.php on line 13
    si j'ai bien compris je n'arrive pas à me connecter à la bdd?

    merci

    bizzz

  20. #20
    Membre averti
    Inscrit en
    Juin 2008
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 29
    Par défaut
    clic gauche sur l'icône de WAMP > PHP > Configuration PHP > décocher "safe mode"

Discussions similaires

  1. Réponses: 3
    Dernier message: 04/03/2015, 21h12
  2. [1.x] Problème : Mon formulaire enregistre 2 fois en BDD
    Par kevinQ dans le forum Débuter
    Réponses: 2
    Dernier message: 20/06/2012, 18h55
  3. [MySQL] Mon formulaire envoie des champs vide à ma BDD (PHP/MYSQL)
    Par neoweiter dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 06/07/2009, 08h22
  4. [Système d'aide] Lier mon *.hlp à mon projet
    Par termerair dans le forum MFC
    Réponses: 2
    Dernier message: 18/01/2005, 13h39
  5. [Debutant(e)]mise à jour de mon formulaire via JSP
    Par kouadjalain dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 11/08/2004, 15h43

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