Problème de requête SQL
Forum Programmation : Problème de requête SQL
Bonjour,
J'ai fait un formulaire en HTML et une base de donée en PHP. Lorsque je rentre des données dans mon formulaire, ça n'a rien sur ma base de donnée !
Je vous laisse le script du formulaire.html :
Code :
|
voici le script de la base de donnée qui s'appelle test(save).php :
Code :
|
Je sais qu'il faut utiliser INSERT INTO dans mon script de forumaire. Je vous en serai très reconnaissant si pouvez m'aider ! D'avance, je vous en remercie !
Je suis perdu...
Cordialement,
mysql_query("INSERT INTO le_nom_de_ta_table VALUES('entré1', 'entré2', 'entré3' etc etc)" )
voila, si tu parle de mettre les données dans la BDD
Message édité par sil3ncer le 06-06-2007 à 09:22:14
D'accord, pour la synthaxe de mysql_query("INSERT INTO le_nom_de_ta_table VALUES('entré1', 'entré2', 'entré3' etc etc)" ) et je vais mon fichier formulaire.html ou à l'autre fichier.php ? Dans mon fichier.html, il ma
Si j'ai deux tables à mettre, comment je dois procéder ?
Merci.
Si ta deux table a mettre, tu réecrit la meme requete en changeant le nom de la table et les entrés.
Même si c'est les deux tables sont reliées entre elles, il ne faut pas faire de jointure ?
Si je mets dans mon fichier.html , qu'en penses-tu de codes ?
Code :
|
Corrige si nécessaire ! Merci.
Ben la synthaxe a l' air correct mais par contre ce que tu peux mettre dans else, c' est a nouveau le formulaire avec un petit message pour dire qu' il faut completer tout les champs ou un truc dans le genre.
Je viens d'apporter quelques modifications. Je rappelle que j'ai mis dans mon fichier.html qui concerne le formulaire !
Code :
|
Qu'en penses-tu de :
Code :
|
Je dois mettre quoi dans ACTION ???
Par ailleurs, ce qui serait bien, c'est que les boutons 'Précédent', 'Effacez', 'Ajoutez', 'Suivant' marche bien et qu'on mette une sorte de compteur pour visualiser ces fiches mêmes si on mis les données dans la bases de données... J'aime pas trop les exemples, j'aimerai bien qu'on utilise ce que je propose. Merci.
Code :
|
Merci de prendre en compte ce que je viens de dire, car je débute tout juste à faire des formulaires...
Mais à partir du moment qu'on utilise du php dans une page html, ne doit-on pas renommer cette page en *.php ou *.phtml ?
Perso quand je fais mes formulaires je met le php en haut de page !
Sinon je vais regarder ton code pour te repondre comme il faut !
Ok, merci !
Pour le formulaire, j'ai fait une combinaison HTML et PHP....
J'ai besoin d'aide !
Merci
J'ai corrigé mon formulaire, mais je rencontre des failles...
Code :
|
Merci
En faite il faut que tu fasse ton formulaire avec uniquement de l' html. Dans action justement tu mettras le nom de la page PHP et quand tu cliquera sur le bouton valider (<input type="submit" value="valider" />, c' est la page php qui se rechargera et c est donc dans ste page que tu devras traiter toute les donné et les enregistré dans la base de donné. Parcque c' est vrai que la c' est un peu tout dans le desordre
et tu as meilleur temps d utilisé la methode post.
Message édité par sil3ncer le 06-06-2007 à 11:55:53
La page test(save).php te sert à afficher les donnéees c'est ça ? (en cliquant sur suivant ???)
Le bouton Ajouter ben ajoute les infos dans la table ?
Le bouton precedent va ou ?
Le bouton Effacer je me doute bien ce qu'il fait ! lol
Je vais expliquer en détails sur les différentes pages, car c'est pas trop claires !
test(save).php est ma page sui me sert de base de données , ok ?
formulaire.html : ce n'est pas la peine d'expliquer ce que ça veut dire.
Une fois que j'ai rentré mes données dans mon formulaire, il faut que ça mette dans ma base de données, mais ça ne fait rien (en cliquant sur 'Ajoutez'). Et bien sûr, l'idéal c'est de mettre un petit compteur 'id' pour mieux savoir le numéro de fiche où on se trouve....
Si on clique sur 'Suivant', ça devrait afficher une nouvelle fiche_client. Mais, ça ne fait rien du tout !
Si on clique sur 'Précédent, ça devrait afficher la fiche_client précédemment créée, mais ça ne fait rien du tout !
Je ne fais du copier-coller des mes codes-scripts, car je vous ai tout laissés dans ce topic, me semble-t-il ?
[B]Je ne veux pas qu'on me fasse des exemples généraux, mais j'aimerai que vous utilisez ce que je vous laissais pour m'aider ! Merci. [/B]
Merci pour votre aide !
Un de mes amis m'a dit qu'il fallait mettre l'extention .php et .html
Personne ne vient m'aider ????
Ou ça ?
Moi j'ai tester vite fait chez moi mais j'ai renommé le formulaire.html en formulaire.php car des qu'il y a du php dans une page c'est obligatoirement en *.php que la page doit etre !
Comme je n'ai pas la base de données les tests ne sont pas vraiment vrai !
Voila mes modifs si ça peut t'aider sinon il faudrait que j'ai les fichiers directement ! Adapte le à ton cas !
<?php
if ($_POST['suivant']) {
//Connexion BDD
mysql_connect("localhost","root","" );
$base=mysql_select_db("mlr1" );
if((!empty ($_POST['NOM'])) AND (!empty ($_POST['Prénom']))) {
mysql_query("INSERT INTO client VALUES ('".$_POST['NOM']."','".$_POST['Prénom']."'),'".$_POST['Mobile']."',
'".$_POST['Email']."','".$_POST['Qualité']."')" );
mysql_query("INSERT INTO adresse VALUES ('".$_POST['Adresse1']."','".$_POST['Adresse2']."'),'".$_POST['Code Postal']."',
'".$_POST['Ville']."','".$_POST['Fixe']."','".$_POST['Fax']."')" );
echo 'Requête exécutée';
header("test(save).php" );}
else {echo "Impossible d'exécuter cette requête...";}
}
?>
<HTML>
<BODY>
<form action="formulaire.php" method="post">
<FIELDSET STYLE="background: #FFFFDD ;">
<LEGEND STYLE="background: #FFFF88 ;"><B>FICHE_CLIENT</B></LEGEND>
<CENTER><TABLE BORDER="0" CELLSPACING="0" CELLPADDING="4" WIDTH="100%">
<TR>
<TD WIDTH="20%"><B>Civilité</B>
<TD WIDTH="70%">
<INPUT TYPE=RADIO NAME=civilite VALUE="Mademoiselle">Mademoiselle
<INPUT TYPE=RADIO NAME=civilite VALUE="Madame" CHECKED>Madame
<INPUT TYPE=RADIO NAME=civilite VALUE="Monsieur">Monsieur
<TR>
<TR>
<TD><B>NOM</B>
<TD> <INPUT TYPE=TEXT NAME=Nom SIZE=35 MAXLENGTH=80>
<TD><B>Prénom </B>
<TD> <INPUT TYPE=TEXT NAME=Nom SIZE=35 MAXLENGTH=80>
<TR>
<TR>
<TD><B>Qualité</B>
<TD> <INPUT TYPE=TEXT NAME=Nom SIZE=10 MAXLENGTH=80>
<TD><B>Email</B>
<TD> <INPUT TYPE=TEXT NAME=Nom SIZE=20 MAXLENGTH=80>
<TR>
<TR>
<TR>
<TD><B>Fixe</B>
<TD> <INPUT TYPE=TEXT NAME=Nom SIZE=20 MAXLENGTH=80>
<TD><B>Fax</B>
<TD> <INPUT TYPE=TEXT NAME=Nom SIZE=20 MAXLENGTH=80>
<TD><B>Mobile</B>
<TD> <INPUT TYPE=TEXT NAME=Nom SIZE=20 MAXLENGTH=80>
<TR>
<TD> <U><I> Résidence principale : </I></U>
<TR>
<TD><B> Adresse 1 </B>
<TD> <INPUT TYPE=TEXT NAME=Nom Size=35 MAXLENGTH=80>
<TR>
<TD><B> Adresse 2 </B>
<TD> <INPUT TYPE=TEXT NAME=Nom Size=35 MAXLENGTH=80>
<TD><B> Code Postal </B>
<TD> <INPUT TYPE=TEXT NAME=Nom SIZE=5 MAXLENGTH=80>
<TD><B> Ville </B>
<TD> <INPUT TYPE=TEXT NAME=Nom SIZE=35 MAXLENGTH=80>
<TR>
<TD> <U><I> Résidence secondaire : </I></U>
<TR>
<TD><B> Adresse 1 </B>
<TD> <INPUT TYPE=TEXT NAME=Nom Size=35 MAXLENGTH=80>
<TR>
<TD><B> Adresse 2 </B>
<TD> <INPUT TYPE=TEXT NAME=Nom Size=35 MAXLENGTH=80>
<TD><B> Code Postal </B>
<TD> <INPUT TYPE=TEXT NAME=Nom SIZE=5 MAXLENGTH=80>
<TD><B> Ville </B>
<TD> <INPUT TYPE=TEXT NAME=Nom SIZE=35 MAXLENGTH=80>
<TR>
<TD><B>Pays</B>
<TD> <SELECT NAME=Pays>
<OPTION>France
<OPTION SELECTED>Suisse
</SELECT>
<TR>
<TD><B>Commentaire</B></TD>
<TD><TEXTAREA rows="5" name="commentaires">Tapez ici vos commentaires</TEXTAREA></TD>
<TR>
</TABLE></CENTER>
</FIELDSET>
<CENTER><TABLE BORDER="0" CELLSPACING="0" CELLPADDING="10" WIDTH="100%">
<TH>
<INPUT TYPE="submit" NAME="suivant" VALUE="suivant">
</TABLE></CENTER>
</FORM>
</HTML>
J'ai une erreur à la ligne 3
Notice: Undefined index: suivant in c:\documents and settings\néo\mes documents\test\formulaire.php on line 3
Code :
|
Merci encore !
Je comprends mon erreur de la ligne que j'ai spécifié... :s
Je veux dire : je ne comprends pas mon erreur ! désolé
je sais pas si vous avez bien compris : je ne comprends pas mon erreur à la ligne 3 que j'ai spécifié un peu au-dessus !
AIDEZ-moi.
Merci.
Je vous laisse mon mail : aurelienbeauchaud@gmail.com pour bien m'expliquer par écrit !
Bonne soirée,
ce serait cool si vous pouvez m'aider maintenant, comme ça, j'aurai moins de soucis.
Merci.
Si tu as copié tout mon code ! remplace la premiere ligne php par ceci :
if (isset($_POST['suivant']) && $_POST['suivant'] == 'suivant') {
SInon il faudrait que tu me fasse un zip avec tes fichiers pour que je saches vraiment qui fait quoi parce que c'est un peu flou pour moi !
Comment on fait pour envoyer un fichier.zip ???? Car, dans 'message privé', il n'y a pas l'onglet piéce-jointe....
Si tu veux, tu me laisser ton Mail et je te l'envoie par ce biais.
Merci de me spécifier.
Censored !
Message édité par kephren14 le 07-06-2007 à 10:18:53
Salut Kephren14 ! Est-ce que tu as bien reçu mon Mail ? J'espère que tu as bien compris ce que je t'ai dit ?
Merci.
Oui j'ai bien reçu ! Je suis en train de regarder ça !
Comme tu as pû constater, j'ai fait quelquechose ! Merci pour ton soutien.
Avant de continuer je te renvoie ce que j'ai modifier pour que tu me dises ce qui va ou non !
Encore mieux !
Teste le direct :
http://sixelaempire.keo.in/test/do [...] ulaire.php
Voilà, je viens de tester et c'est mis "requête exécutée". Donc, pas de soucis. Tu peux m'envoyer le script STP par Mail STP ?
Dis-moi, est-ce qu'il est possible de mettre un compteur 'id' dans cette fiche de telle manière qu'on peut revenir sur les anciennes fiches et sur les précédentes ? Je ne sais pas si c'est correct en disant ça...
Maintenant, j'ai besoin de faire une requête par critére, par exemple trier par code postal, par nom alphabétique etc... Pour faire des Mailling, si tu vois je veux dire ?
Merci encore.
Ouai ! je vois à peu prés pour le tri !
Le tri je peux le faire sur la page save(test).php !
Sinon je finis le formulaire et je te l'nevoie deja pour que tu voyes ça !
Cool et c'est génial
Je ne sais pas si tu as bien compris pour le compteur 'id' sur la fiche_client ; c'est pour connaître ce qu'on a tappé précédémment (l'utilité du bouton 'précédent'), ce qu'il y a de suivants (bouton 'suivant') afin de savoir où on en est. Tu comprends mieux ?
Euh non desolé ! lol
(Pour parcourir les fichies selon l'ID ?)
Je suis sur la fiche d'un client Id 5 ! precedent va sur le 4 ???
Oui, c'est bien ! Je suis fier de toi lol !!! Tu sais compter ma parole ,
Ben vas y fou toi de moi aussi !
Tu peux te debrouiller tout seul si c'est ça !
Attention, un client peut avoir plusieurs adresses, donc au niveau des 'ID' dans la BDD, il est normal que les 'ID' sont identiques pour un même client avec plusieurs adresses différentes... La compréhension est mieux ?
Donc, je pense qu'il faudrait un autre 'ID' sur la fiche_client pour parcourir ces fiches... dans formulaire.php Tu penses que c'est faisable ?
Je plaisante, soit pas susceptible ! un peu d'humour
moi aussi ! Tu as reçu le fichier ?
Oui, merci !
Je vais tester
Ok, ça m'a mis "requête exécutée"... Ca n'a rien dans ma BDD...
Au fait, ça veut dire quoi 'addslashes' ? J'ai entendu parler que c'est anti-injection SQL , je ne sais pas si c'est bien ça... Et je pense que c'est fortement recommandé de le mettre...
ah oui faut que tu fasses des modifs dans ta table !
Code :
|
Code :
|
ça marche bien et je t'en remercie encore une fois
Pour les 'ID_CLIENT', ça me mets tout le temps "0" pour les nouveaux clients... Aussi, pour la partie [I]Résidence secondaire[/i], ça n'affiche pas quand on le sait dans la fiche_client !
Quand, je fais la requête SQL
Code :
|
ça n'affiche rien !
J'ai fait cette requête sous MySQL, bien sûr
oui j'avais vu je l'avais modifié manuellement! ça vient de la clé !
Je ne comprends pas ce que tu viens de me dire...
Comment faire avec ce que je t'ai dit juste au-dessus (aussi bien pour la requête SQL que l'autre).... ?
Bonjour Kephren14 !
En fait, je suis en stage, pour te donner une idée ce que je fais actuellement.
Je viens de faire des tests comme convenu et à ma grande surprise : ça affiche bien pour la 'résidence principale' (pas de soucis), mais pas pour la 'résidence secondaire'... Mon tuteur m'a dit qu'il serait bien qu'on puisse consulter les fiches_clients à l'aide des ID qu'on pourra utiliser l'ID_client en cliquant sur le bouton 'suivant' et/ou sur le bouton 'précédent'.
Comment procéder ?
Merci.
Merci encore pour ton soutien même si je ne comprends pas...
(\__/)
(='.'=)
(" )_(" )
Il y a 2097 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.
