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 :

Formulaire et base de données [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Inscrit en
    Août 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 7
    Par défaut Formulaire et base de données
    Je suis debutante en php et j' ai de gros probleme avec mon formulaire,il n'arrive pas a inserer les donnees dans mon data base.j'utilise php version 4.1.0 et Easyphp 1.5 ;voici en resume le code du file enregistrement.htm:
    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
    <head>
    <title></title>
    </head>
    <body>
    <table width="800" border="0">
    <tr> 
    <td><form name='client' method="post" >
    <table width="800" border="0">
    <tr> 
    <td>idclient</td>
    <td colspan="3"><input name="idcliente" type="text" size="20" maxlength="20"></td>
    </tr>
    <tr> 
    <td>nom</td>
    <td colspan="3"><input name="nom" type="text" size="40" maxlength="20"></td>
    </tr>
    <tr> 
    <td>prenom</td>
    <td colspan="3"><input name="prenom" type="text" size="40" maxlength="20"></td>
    </tr>
    <tr> 
    <td
    ..........
    </td>
    <td colspan="3.....</td>
    </tr>
    <tr> 
    <td>&nbsp;</td>
    <td colspan="3">&nbsp;</td>
    </tr>
    <tr> 
    <td><input name="button" type=button onClick="location.href='client.php'" value="envoie"></td>
    <td><input name="button2" type=button onClick="location.href='modifi.php'" value="Modifie"></td>
    <td><input name="reset" type="reset"  value="reset"></td>
    <td><input type=button onClick="location.href='cancella.php'"  name="cancella" value="effacer enregistrement" ></td>
    </tr>
    </table>
    </form>
    </td>
    </tr>
    </table>
    </body>
    </html>
    voici le code du file client.php version complete
    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
    <?php
     
    if (empty($idclient) or empty($nom) or empty($prenom))
    {
         $conn = mysql_connect("localhost", "", "")
               or die("Connessione al database fallita");
     
         mysql_select_db("AgenceVoyage") or die("impossible trouver la base de donnees!");
     
    $sql = "INSERT INTO client(idcliente, nome, prenom) VALUES('$idclient', '$nom', '$prenom')"; 
    $ris = mysql_query($sql) or die("impossible effectuer la query!");
     
     mysql_close();
    	 ;		
    }
    else
    {	
    include("enregistrement.htm");
    echo"<script>alert(\"remplir tous le formulaire.'\);</script>
    ";
    }
      include("pagina.htm");  
      echo"<br>";
      echo"<br>";
      echo"<br>";
      echo"<br>";
      echo"<br>";
      echo"<br>";
      echo"<br>";
      echo"<br>";
     
      echo"<p align='center'>";
      echo"<a href='clienti.php'>BIENVENU VOUS POUVEZ VOUS ENREGISTRER</a>";
      echo"</p>"; 
     
       ?>
    quand j'envoie mon formulaire il me dit:"impossible effectuer la query".la data base a deja ete créée sur mysql.j' ai essaye de raccourcir mon code htm pour vous faire voir l'essentiel.Je vous remercie de me repondre

  2. #2
    Membre Expert

    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 249
    Par défaut
    Regle n°2 ;o)

  3. #3
    Membre Expert

    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 249
    Par défaut
    Citation Envoyé par epsilon10
    je viens de modifier mon code par apport a ta reponse mais ca ne change rien.l' erreur est la meme.Comment puis je ajouter la fonction var_dump()? tres sincerement j' ai encore du mal a comprendre a quoi ca sert.Merci
    Merci d'utiliser le forum et non les MPs... sauf pour une demande perso, là c'est pas le cas.

    Si ca change rien c'est que t'as pas mis ce qu'il fallait au bon endroit... l'interet de la regle n°2 est d'avoir un message d'erreur *lisible* et qui *aide* a résoudre l'erreur et pas seulement un message genre "ca marche pas"

    pour le var_dump, tu n'en a pas besoin tout de suite, mais ca permet d'afficher le type et le contenu d'une variable, ce qui est tres utile parfois pour débugger (ressource, objet, string(1) au lieu de string(0), boolean au lieu de int, etc...)

  4. #4
    Nouveau membre du Club
    Inscrit en
    Août 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 7
    Par défaut formulaire et base de donnees
    la chose la plus etrange depuis que j'essaie de faire fonctionner ce site c'est le fait que le script java dans le code client.php ne fonctionne pas.independemment du fait que les champs soient rempli ou pas l'erreur est toujours la meme.quelqu'un peut m'expliquer pourquoi?

    Flagnag jetes un coup sur ce que j'ai pu faire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
     
    if (empty($idclient) or empty($nom) or empty($prenom))
    {
    	 $conn = mysql_connect("localhost", "", "") or die("errore di connessione");
    	 mysql_select_db("agencevoyage") or die("impossible trouver la base de donnees");
    	 $ris =mysql_query("INSERT INTO client(idclient, nom, prenom) VALUES('$idclient', '$nom', '$prenom')") 
    	 or die("INSERT INTO client(idcliente, nom, prenom)VALUES('$idclient', '$nom', '$prenom')<br>".mysql_error("impossible executer la query!"));
     
    	 mysql_close();
    voici l'erreur che je recois :
    Warning: Supplied argument is not a valid MySQL-Link resource in c:\programmi\easyphp\www\umbria vacanze\client.php on line 9
    INSERT INTO clienti(idcliente, nom, prenom,) VALUES('', '', '')

  5. #5
    Nouveau membre du Club
    Inscrit en
    Août 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 7
    Par défaut formulaire et base de donnees
    Message pour Fladnag
    escuses moi pour l'erreur sur la nickname et merci pour ton interet.

  6. #6
    Membre Expert

    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 249
    Par défaut
    tes messages d'erreurs sont bizarres et pas coherents avec le morceau de code. Ca me laisse penser que tu les as recopiés a la main plutot que par copier/coller...

    1) met tes requetes dans des chaines de caracteres du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $req="INSERT ...";
    $res= mysql_query($req) or ($req.'<br>'.mysql_error());
    2) Regle n°1 et Regle n°2

    Là avec ton code on ne sait pas vraiment ce qu'il se passe.

    indique aussi la ligne 9 avec un commentaire

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 85
    Par défaut
    Bonjour,

    Warning: Supplied argument is not a valid MySQL-Link resource in c:\programmi\easyphp\www\umbria vacanze\client.php on line 9
    INSERT INTO clienti(idcliente, nom, prenom,) VALUES('', '', '')
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if (empty($idclient) or empty($nom) or empty($prenom))
    {

    Tu essayes d'intégrer des valeurs vides ???



    $idclient , $nom et $prenom ne sont définis nul part....

    ...pour récupérer une valeur dans un formulaire, il faut utiliser $_POST['nom']...par exemple

    Bonne chance...

  8. #8
    Nouveau membre du Club
    Inscrit en
    Août 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 7
    Par défaut formulaire et base de donnees
    Je suis desespere par les resultats .Voici mon code client.php apres de multiples modifications.Je vous en pris aidez moi.

    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
    <?php
     
       $idclient=$_POST['idclient'];
       $nom=$_POST['nom'];
       $prenom=$_POST['prenom'];
     
       if (empty($idclient) or empty($nom) or empty($prenom))
    {
    	print"<script>alert('remplir tout le formulaire!');</script>";
    	print"<script>history.back();</script>"; 
    	exit();/*on sort du file php */
    }
     
    $conn = mysql_connect("localhost", "", "") or die("erreur de connection");
     
    mysql_select_db("agencevoyage") or die("impossible trouver la base de donnes");
     
    $sql ="INSERT INTO client(idclient,nom,prenom) VALUES('$idclient','$nom','$prenom')";
    $ris =mysql_query($sql)
    or die("impossible executer la requete!");
     
    mysql_close();
     
      include("page.htm");  
      print"<br>";
      print"<br>";
      print"<br>";
      print"<br>";
      print"<br>";
      print"<br>";
      print"<br>";
      print"<br>";
     
      print"<p align='center'>";
      print"Mes felicitations $nom $prenom ,votre enregistrement a été effectué.<br>";
      print"<a href=\"reservation.htm\">Reserve ton voyage ici</a>";
      print"</p>"; 
       ?>
    La seule reponse che j'obtient independemment du fait que le formulaire soit vide ou plein est:"remplir tout le formulaire". pourquoi la boucle if ne fonctione -t-il pas comme il faut?

    En passant comment integre t-on les valeurs vides?

  9. #9
    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
    Par défaut
    Salut

    Pour chipoter : une instruction "if" n'est pas une "boucle"
    Sinon, tu peux t'inspirer du code que j'ai publié ici : Les formulaires et PHP 5

    [Edit] Ton nom d'utilisateur est vide dans l'appel à mysql_connect() : c'est incorrect, il devrait être "root". Cela m'étonne que tu n'aies pas le bon message d'erreur. Ah oui, lis bien les conseils de Fladnag : inclus mysql_error() dans tes or die()...

  10. #10
    Nouveau membre du Club
    Inscrit en
    Août 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 7
    Par défaut formulaire et base de donnees
    Merci beaucoup pour votre interet.Je vais profiter de la fin de semaine pour lire ces cours .

  11. #11
    Nouveau membre du Club
    Inscrit en
    Août 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 7
    Par défaut formulaire et base de donnees
    j'ai lu les cours.Apres quelques manipulations je me suis rendu compte que les donnees contenu dans mon formulaire n' arrive pas au fichier php .
    La seule reponse che j'obtient independemment du fait que le formulaire soit vide ou plein est:"remplir tout le formulaire". pourquoi la boucle if ne fonctione -t-il pas comme il faut?
    l' if ne fonctione pas parce le fichier client.php ne recoit rien.J'utilise un formulaire avec plusieurs boutons(4).J' ignore si c'est a l'origine de mes problemes.voici le code du fichier qui contient le 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
    <html>
    <head>
    <script language="javascript"> 
     
    function controlla() {
        if (document.client.action=="") return false; 
    return true ; 
    } 
     
    function gotopage(page) 
    {
        document.client.action = page; 
        document.client.submit(); 
    } 
    </script>
    </head>
     
    <body>
    <form action="" name="client" method="post" onSubmit="return controlle()" >
    <input name="idclient" type="text" size="20" maxlength="20">
    <input name="nom" type="text" size="40" maxlength="20"> 
    <input name="prenom" type="text" size="40" maxlength="20"> 
    .......
    <input type="button" name="bouton1" value="envoie au database" onClick="gotopage('client.php')"> 
     
    <input type="button" name="bouton2" value="Modifie la database" onclick= "gotopage('modifie.php')">
     
    <input name="reset" type="reset"  value="Reset"> 
     
    <input type= "button" name="bouton3" value="efface mes donnees du database" onClick="gotopage('efface.php')" >
    </form>
    </body>
    </html>
    Quel est le probleme?

  12. #12
    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
    Par défaut
    <form action="client.php"

    Lis bien les tutos : je suis persuadé que tu aurais pu y trouver ce que tu cherchais.

  13. #13
    Nouveau membre du Club
    Inscrit en
    Août 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 7
    Par défaut formulaire et base de donnees
    Merci à tous,j'ai resolu mon probleme.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Insertion données formulaire dans base de données
    Par westlaux dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 21/06/2007, 21h17
  2. formulaire / php / base de données
    Par amandine_drooplette dans le forum Langage
    Réponses: 6
    Dernier message: 07/06/2007, 14h14
  3. Formulaire et base de données
    Par Néo{le pélo du 974} dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 04/06/2007, 13h04
  4. Formulaire et base de données
    Par Marye dans le forum IHM
    Réponses: 4
    Dernier message: 08/02/2007, 23h07
  5. [Conception] Formulaire et base de donnée ?
    Par heldev dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 10/03/2006, 18h09

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