Insert into MYSQL avec PHP
Résolu/Fermé
cestmoi
-
29 oct. 2008 à 14:16
cest_moi Messages postés 7 Date d'inscription mercredi 29 octobre 2008 Statut Membre Dernière intervention 29 octobre 2008 - 29 oct. 2008 à 17:38
cest_moi Messages postés 7 Date d'inscription mercredi 29 octobre 2008 Statut Membre Dernière intervention 29 octobre 2008 - 29 oct. 2008 à 17:38
A voir également:
- Insert into MYSQL avec PHP
- Touche insert - Guide
- Easy php - Télécharger - Divers Web & Internet
- Mysql community server - Télécharger - Bases de données
- Disk boot failure insert system disk and press enter - Guide
- Reboot and select proper boot device or insert boot media in selected boot device and press a key - Forum Windows
11 réponses
XatOr
Messages postés
742
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
5 décembre 2010
34
29 oct. 2008 à 14:31
29 oct. 2008 à 14:31
Salut je ne m'y connais pas trop en PHP mais sinon j'ai des connaissances dans d'autres langages. Apparament ici ton code est bon mais il te manque une chose. En effet, tu déclares bien ta requête mais tu ne l'éxècute pas réellement juste en mettant :
$result = mysql_query("INSERT INTO bourse (Nom,Prenom,Email,type,Taille,Qui) VALUES('$nom','$prenom','$email','$vetement_type','$taille','$qui')");
Maintenant il te faut trouver le bout pour l'executer.
$result = mysql_query("INSERT INTO bourse (Nom,Prenom,Email,type,Taille,Qui) VALUES('$nom','$prenom','$email','$vetement_type','$taille','$qui')");
Maintenant il te faut trouver le bout pour l'executer.
cest_moi
Messages postés
7
Date d'inscription
mercredi 29 octobre 2008
Statut
Membre
Dernière intervention
29 octobre 2008
1
29 oct. 2008 à 14:38
29 oct. 2008 à 14:38
Merci
Je ne me connais pas en php non plus :) mais il me semble (de tous ce que j'ai lu) que ça execute bien ma requête. Je me remets à la recherche.
Je ne me connais pas en php non plus :) mais il me semble (de tous ce que j'ai lu) que ça execute bien ma requête. Je me remets à la recherche.
Re-bonjour
J'ai oublié de dire que je reçois bien le message que le vêtement a été pris en compte et je ne reçois aucune message d'erreur.
Merci d'avance
Moi
J'ai oublié de dire que je reçois bien le message que le vêtement a été pris en compte et je ne reçois aucune message d'erreur.
Merci d'avance
Moi
XatOr
Messages postés
742
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
5 décembre 2010
34
29 oct. 2008 à 14:36
29 oct. 2008 à 14:36
Désolé, en fait mysql_query permet d'executer la requête donc tu avais raison.
Ne faut-il pas mettre des quote/guillemets pour encadrer le nom des champs ?
Ne faut-il pas mettre des quote/guillemets pour encadrer le nom des champs ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
InAme19
Messages postés
539
Date d'inscription
samedi 13 septembre 2008
Statut
Membre
Dernière intervention
29 novembre 2012
62
29 oct. 2008 à 14:41
29 oct. 2008 à 14:41
Ton mysql_close(); doit être entre tes balises <?php et ?>
XatOr
Messages postés
742
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
5 décembre 2010
34
29 oct. 2008 à 14:45
29 oct. 2008 à 14:45
Oui mais le problème ne vient pas de là car la requête ne s'execute pas..
XatOr
Messages postés
742
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
5 décembre 2010
34
29 oct. 2008 à 14:44
29 oct. 2008 à 14:44
Essaies ca :
$result = mysql_query("INSERT INTO bourse (Nom,Prenom,Email,type,Taille,Qui) VALUES('$nom','$prenom','$email','$vetement_type','$taille','$qui');", $db)
Dis moi quoi stp ;)
$result = mysql_query("INSERT INTO bourse (Nom,Prenom,Email,type,Taille,Qui) VALUES('$nom','$prenom','$email','$vetement_type','$taille','$qui');", $db)
Dis moi quoi stp ;)
cest_moi
Messages postés
7
Date d'inscription
mercredi 29 octobre 2008
Statut
Membre
Dernière intervention
29 octobre 2008
1
29 oct. 2008 à 14:59
29 oct. 2008 à 14:59
En fait, j'ai continué avec mes tests et ça semble que le 'insert' fonctionne bien (j'ai bien ajouté le balise ?> )
MAIS, j'ai fait un 'echo' de mes variables et les variables sont vide - donc, il ne sont pas insérer.
Il me semble maintenant que mon problème vient de mon html - donc je recommence mes tests
Vous connaissez html par chance ;)
MAIS, j'ai fait un 'echo' de mes variables et les variables sont vide - donc, il ne sont pas insérer.
Il me semble maintenant que mon problème vient de mon html - donc je recommence mes tests
Vous connaissez html par chance ;)
XatOr
Messages postés
742
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
5 décembre 2010
34
>
cest_moi
Messages postés
7
Date d'inscription
mercredi 29 octobre 2008
Statut
Membre
Dernière intervention
29 octobre 2008
29 oct. 2008 à 15:00
29 oct. 2008 à 15:00
Uhm moi je connais oui pourquoi pas toi ???!!! ò_Ô
cest_moi
Messages postés
7
Date d'inscription
mercredi 29 octobre 2008
Statut
Membre
Dernière intervention
29 octobre 2008
1
>
XatOr
Messages postés
742
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
5 décembre 2010
29 oct. 2008 à 15:04
29 oct. 2008 à 15:04
Pas beaucoup - donc, je galère.
C'est mon premier page *snif*
C'est mon premier page *snif*
XatOr
Messages postés
742
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
5 décembre 2010
34
>
cest_moi
Messages postés
7
Date d'inscription
mercredi 29 octobre 2008
Statut
Membre
Dernière intervention
29 octobre 2008
29 oct. 2008 à 15:28
29 oct. 2008 à 15:28
Je peut peut-être t'aider ?
cest_moi
Messages postés
7
Date d'inscription
mercredi 29 octobre 2008
Statut
Membre
Dernière intervention
29 octobre 2008
1
>
XatOr
Messages postés
742
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
5 décembre 2010
29 oct. 2008 à 15:47
29 oct. 2008 à 15:47
Voila mon code
<HTML>
<HEAD>
<TITLE>La Bourse aux Vêtements</TITLE>
<STYLE TYPE="text/css">
TD {color:blue}
TD.a {color:red;font-family: courier;font-size:80%}
TD.b {color: green}
</STYLE>
</HEAD>
<BODY>
<FORM ACTION="ins_donnees.php" enctype="text/plain" METHOD="POST">
<table>
<caption><H1> Please enter your clothes one by one, pressing submit to send each piece of clothing to our database</H1></caption>
<tr>
<td rowspan=3 class="a"><b>Détails : </b>
<td class="b"> Surname :
<td colspan="2"><input type="text" name="surname" size="20">
<tr>
<TD class="b"> First name :
<tb colspan="2"><input type="text" name="firstname" size="20">
<tr>
<td class="b">Email address :
<tb colspan="2"><input type="text" name="email" size="25">
<tr><td colspan=4><hr>
<tr>
<td class="a" rowspan="5"><b>Vêtements:</b>
<td class="b" align="center">Type of clothing
<td align=left>
<select size="3" name="clothing">
<option>Trousers</option>
<option>snowsuit</option>
<option>socks</option>
<option>jumper</option>
</select>
<tr><td colspan=3><hr>
<tr>
<td class="b" align="center">Who for
<td align=left>
<ul>
<li><input type="radio" name="qui" value="Man"> Homme
<li><input type="radio" name="qui" value="woman"> Femme
<li><input type="radio" name="qui" value="Boy"> Garçon
<li><input type="radio" name="qui" value="Girl"> Fille
</ul>
<tr><td colspan=3><hr>
<tr>
<td class="b" align="center">Size
<td align=left>
<select size="3" name="size">
<option>36</option>
<option>38</option>
<option>40</option>
<option>42</option>
<option>44</option>
<option>46</option>
</select>
<tr><td colspan=3><hr>
<button type="submit" name="button1" value="Envoyer">Envoyer</button>
</table>
</form>
</body>
</html>
Si j'execute cette code en local sur mon ordinateur avec action="mailto:mon_email" je vois bien que les paramètres sont remplies, mais dés que j'utilise php ça semble que les paramètres sont vides
donc le code php avec les echos
<?php
define ("NOM","mon nom" );
define ("PASSE", "mon_mot_de_passe" );
define ("SERVEUR", "sql.free.fr" );
define ("BASE", "mon nom" );
$nom = $_POST['surname'];
$prenom = $_POST['firstname'];
$email = $_POST['email'];
$vetement_type=$_POST['clothing'];
$qui=$_POST['qui'];
$taille=$_POST['size'];
$db = mysql_connect(SERVEUR, NOM, PASSE) or
die('Erreur de connexion à la base de données <br />Erreur: '.mysql_error());
mysql_select_db(BASE, $db);
$result = mysql_query("INSERT INTO bourse (Nom,Prenom,Email,type,Taille,Qui) VALUES('$nom','$prenom','$email','$vetement_type','$taille','$qui')");
echo "surname is $nom";
echo "prenom is $prenom";
echo "email is $email";
echo "vetement_type is $vetement_type";
echo "qui is $qui";
echo "taille is $taille";
if (!$result)
{
die('Requête invalide : ' . mysql_error());
}
else
{ ?>
<div id="center_text">Votre vêtement a bien été prise en compte.<br/></div>
<?php
}
mysql_close();
?>
je recois aucune erreur et il semble, en fait, qu'un insert est fait, car je vois une ligne dans la base de données, mais avec que les nulls remplis (default null) et les autre champs sont vides (j'ai maintenant 4 records dans la base mais les champs sont vide.
La table est declaré avec toutes les colonnes en varchar2 et le interclassment est latin1_general_ci. Je n'ai pas fait les fautes de frappe (il me semble) entre les noms des colonnes et mon insert.
Si tu peux m'aider je serais heureuse :)
Malheureusement, je dois aussi travailler sur Oracle (mon 'vrai' métier) au même temps - donc, si tu as les problèmes en Oracle, je pourrais t'aider :)
<HTML>
<HEAD>
<TITLE>La Bourse aux Vêtements</TITLE>
<STYLE TYPE="text/css">
TD {color:blue}
TD.a {color:red;font-family: courier;font-size:80%}
TD.b {color: green}
</STYLE>
</HEAD>
<BODY>
<FORM ACTION="ins_donnees.php" enctype="text/plain" METHOD="POST">
<table>
<caption><H1> Please enter your clothes one by one, pressing submit to send each piece of clothing to our database</H1></caption>
<tr>
<td rowspan=3 class="a"><b>Détails : </b>
<td class="b"> Surname :
<td colspan="2"><input type="text" name="surname" size="20">
<tr>
<TD class="b"> First name :
<tb colspan="2"><input type="text" name="firstname" size="20">
<tr>
<td class="b">Email address :
<tb colspan="2"><input type="text" name="email" size="25">
<tr><td colspan=4><hr>
<tr>
<td class="a" rowspan="5"><b>Vêtements:</b>
<td class="b" align="center">Type of clothing
<td align=left>
<select size="3" name="clothing">
<option>Trousers</option>
<option>snowsuit</option>
<option>socks</option>
<option>jumper</option>
</select>
<tr><td colspan=3><hr>
<tr>
<td class="b" align="center">Who for
<td align=left>
<ul>
<li><input type="radio" name="qui" value="Man"> Homme
<li><input type="radio" name="qui" value="woman"> Femme
<li><input type="radio" name="qui" value="Boy"> Garçon
<li><input type="radio" name="qui" value="Girl"> Fille
</ul>
<tr><td colspan=3><hr>
<tr>
<td class="b" align="center">Size
<td align=left>
<select size="3" name="size">
<option>36</option>
<option>38</option>
<option>40</option>
<option>42</option>
<option>44</option>
<option>46</option>
</select>
<tr><td colspan=3><hr>
<button type="submit" name="button1" value="Envoyer">Envoyer</button>
</table>
</form>
</body>
</html>
Si j'execute cette code en local sur mon ordinateur avec action="mailto:mon_email" je vois bien que les paramètres sont remplies, mais dés que j'utilise php ça semble que les paramètres sont vides
donc le code php avec les echos
<?php
define ("NOM","mon nom" );
define ("PASSE", "mon_mot_de_passe" );
define ("SERVEUR", "sql.free.fr" );
define ("BASE", "mon nom" );
$nom = $_POST['surname'];
$prenom = $_POST['firstname'];
$email = $_POST['email'];
$vetement_type=$_POST['clothing'];
$qui=$_POST['qui'];
$taille=$_POST['size'];
$db = mysql_connect(SERVEUR, NOM, PASSE) or
die('Erreur de connexion à la base de données <br />Erreur: '.mysql_error());
mysql_select_db(BASE, $db);
$result = mysql_query("INSERT INTO bourse (Nom,Prenom,Email,type,Taille,Qui) VALUES('$nom','$prenom','$email','$vetement_type','$taille','$qui')");
echo "surname is $nom";
echo "prenom is $prenom";
echo "email is $email";
echo "vetement_type is $vetement_type";
echo "qui is $qui";
echo "taille is $taille";
if (!$result)
{
die('Requête invalide : ' . mysql_error());
}
else
{ ?>
<div id="center_text">Votre vêtement a bien été prise en compte.<br/></div>
<?php
}
mysql_close();
?>
je recois aucune erreur et il semble, en fait, qu'un insert est fait, car je vois une ligne dans la base de données, mais avec que les nulls remplis (default null) et les autre champs sont vides (j'ai maintenant 4 records dans la base mais les champs sont vide.
La table est declaré avec toutes les colonnes en varchar2 et le interclassment est latin1_general_ci. Je n'ai pas fait les fautes de frappe (il me semble) entre les noms des colonnes et mon insert.
Si tu peux m'aider je serais heureuse :)
Malheureusement, je dois aussi travailler sur Oracle (mon 'vrai' métier) au même temps - donc, si tu as les problèmes en Oracle, je pourrais t'aider :)
XatOr
Messages postés
742
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
5 décembre 2010
34
29 oct. 2008 à 16:17
29 oct. 2008 à 16:17
Re,
essaie ca :
$result = "INSERT INTO bourse (Nom,Prenom,Email,type,Taille,Qui) VALUES('$nom','$prenom','$email','$vetement_type','$taille','$qui')";
mysql_query($result)
En fait tu stockes dans $result ta requête et dans une ligne à part, t'execute ta requête en utilisant ta variable..
essaie ca :
$result = "INSERT INTO bourse (Nom,Prenom,Email,type,Taille,Qui) VALUES('$nom','$prenom','$email','$vetement_type','$taille','$qui')";
mysql_query($result)
En fait tu stockes dans $result ta requête et dans une ligne à part, t'execute ta requête en utilisant ta variable..
cest_moi
Messages postés
7
Date d'inscription
mercredi 29 octobre 2008
Statut
Membre
Dernière intervention
29 octobre 2008
1
29 oct. 2008 à 17:20
29 oct. 2008 à 17:20
toujours pas de résultât - je veux dire, je crée bien une ligne dans ma table, mais sans données.
XatOr
Messages postés
742
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
5 décembre 2010
34
29 oct. 2008 à 17:24
29 oct. 2008 à 17:24
Bah écoute je suis désolé mais là je planche... Cependant, tu peux regarder ici : http://www.infos-du-net.com/forum/267347-21-lien-formulaire-html-base-donne , le problème a été résolu !
cest_moi
Messages postés
7
Date d'inscription
mercredi 29 octobre 2008
Statut
Membre
Dernière intervention
29 octobre 2008
1
29 oct. 2008 à 17:28
29 oct. 2008 à 17:28
Alors, des nouvelles - j'ai mis des valeurs en dur dans le mysql insert (au lieu des paramètres) et tous fonctionne à la merveille - donc, vraiement un problème de recuperation des paramètres entre le html et le php.
Je continuerai demain, ou ce soir à la maison, car il faut que je termine mon programme Oracle :(
Merci pour l'aide
Je continuerai demain, ou ce soir à la maison, car il faut que je termine mon programme Oracle :(
Merci pour l'aide
XatOr
Messages postés
742
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
5 décembre 2010
34
29 oct. 2008 à 17:34
29 oct. 2008 à 17:34
De rien, bon courage !
cest_moi
Messages postés
7
Date d'inscription
mercredi 29 octobre 2008
Statut
Membre
Dernière intervention
29 octobre 2008
1
29 oct. 2008 à 17:38
29 oct. 2008 à 17:38
Problème résolu!
J'ai changé POST into GET et j'ai enlevé le enctype=text/plain et voilà!
J'ai trouvé une autre site avec le problème
https://bugs.php.net/bug.php?id=26004
et le changement de post/get a fonctionné
Merci et bonne soirée
J'ai changé POST into GET et j'ai enlevé le enctype=text/plain et voilà!
J'ai trouvé une autre site avec le problème
https://bugs.php.net/bug.php?id=26004
et le changement de post/get a fonctionné
Merci et bonne soirée