probleme avec un formulaire

probleme avec un formulaire - PHP - Programmation

Marsh Posté le 17-08-2004 à 19:54:30    

slt @ tous :hello:
 
je me crée un petit formulaire mais g des erreures et je ne vois pas ou elle sont
je me suis basé sur un autre formulaire et j'en ai modifié le contenu mais la ca plante  :cry:  
 
pouvez vous m'aider  [:airforceone]

<html>
<body>
<?
require("conf.php3" );
 
switch($action) {
/*-----------------------------------------------------------------*/
/* AJOUT DANS MySQL   */
/*-----------------------------------------------------------------*/
 
case "add";
 
// CONNEXION A LA BASE DE DONNEE
$db_link = @mysql_connect($sql_serveur,$sql_user,$sql_passwd);
if(!$db_link) {echo "Connexion impossible à la base de données <b>$sql_bdd</b> sur le serveur <b>$sql_server</b><br>Vérifiez les paramètres du fichier conf.php3"; exit;}
 
// TEST SUR LES VALEURS SAISIES
if($titre=="" ){echo "Votre titre<br><br><a href=\"javascript:window.history.back()\">Retour</a>";exit;}
if($weblink=="" ){echo "l'adresse du site<br><br><a href=\"javascript:window.history.back()\">Retour</a>";exit;}
if($description=="" ){echo "Vous n'avez pas saisi de description<br><br><a href=\"javascript:window.history.back()\">Retour</a>";exit;}
if($mat1=="" ){echo "Vous n'avez pas saisi la 1ère matière<br><br><a href=\"javascript:window.history.back()\">Retour</a>";exit;}
if($mat2=="" ){echo "Vous n'avez pas saisi la 2nde matière<br><br><a href=\"javascript:window.history.back()\">Retour</a>";exit;}  
if($note=="" ){echo "Vous n'avez pas saisi la note<br><br><a href=\"javascript:window.history.back()\">Retour</a>";exit;}
 
  // INSERTION DANS LA TABLE  
 $requete=mysql_db_query($sql_bdd,"insert into membre values ($titre,\"$weblink\",\"$description\",\"$mat1\",\"$mat2\",\"$note\" )",$db_link) or die(mysql_error());
 // CHAMPS SUPLEMENTAIRES, complétez la requête précédente en ajoutant les variables et en respectant l'ordre des colonnes de la table. Exemple :
 // insert into membre values ($idnew,\"$id\",\"$pseudo_membre\",\"$passe_membre\"" )
 
 // REDIRECTION VERS LA PAGE D'ENTREE DE L'ESPACE MEMBRE
 echo "Vos infos ont été upgradées :)";
 }
 
// DECONNEXION MYSQL
mysql_close($db_link);
 
break;
 
 
/*-----------------------------------------------------------------*/
/* AFFICHAGE DU FORMULAIRE   */
/*-----------------------------------------------------------------*/
 
[g]default;[/g]
echo "  
 <form action=\"addinfo.php3\" method=\"post\">
 <input type=\"hidden\" name=\"action\" value=\"add\">
 Adresse du site <br><input type=\"text\" name=\"weblink\"><br>
 Titre du T.P.E<br><input type=\"text\" name=\"titre\"><br>
 Description rapide et explicite de votre T.P.E<br><input type=\"text\" name=\"description\"><br>
 Les 2 matières principales<br><input type=\"text\" name=\"mat1\"><input type=\"text\" name=\"mat2\"><br>
 Note de votre T.P.E<br><input type=\"text\" name=\"note\"><br>
 <input type=\"submit\" value=\"Envoyer\">
 </form>";
 
break;
}
?>
</center>
</font>
</body>
</html>


 
il me dit que g une erreure a la ligne 45 (ligne en gras)
 
merci davance  :jap:

Reply

Marsh Posté le 17-08-2004 à 19:54:30   

Reply

Marsh Posté le 17-08-2004 à 19:58:54    

c'est des : derrière les case, pas de ; :)

Reply

Marsh Posté le 17-08-2004 à 20:00:38    

naceroth a écrit :

c'est des : derrière les case, pas de ; :)


ou ca  :heink:  :(  :??:

Reply

Marsh Posté le 17-08-2004 à 20:03:31    

à l'intérieur du switch, tu écris

Code :
  1. case "add";


c'est

Code :
  1. case "add":


pareil pour le default, c'est un :

Reply

Marsh Posté le 17-08-2004 à 20:05:42    

bah ca change rien et la base du formulaire je lai pris chez php debut et ca marche bien
 
c bizzarre :cry:
 

Reply

Marsh Posté le 17-08-2004 à 20:08:41    

Bon...quel message d'erreur dans ce cas ?

Reply

Marsh Posté le 17-08-2004 à 20:12:14    

Parse error: parse error in /var/www/free.fr/4/d/nfshp2/addinfo.php3 on line 45

Reply

Marsh Posté le 17-08-2004 à 20:17:18    

ca plante des que je modifie cette ligne : $requete=mysql_db_query($sql_bdd,"insert into membre values ($titre,\"$weblink\",\"$description\",\"$mat1\",\"$mat2\",\"$note\" )",$db_link) or die(mysql_error());

Reply

Marsh Posté le 17-08-2004 à 20:25:47    

Bon, l'a fallu recopier le code dans un IDE pour le voir, il y a un } en trop dans le bloc

Code :
  1. // REDIRECTION VERS LA PAGE D'ENTREE DE L'ESPACE MEMBRE
  2. echo "Vos infos ont été upgradées :)";
  3. }


:)
 
Si je puis me permettre un conseil, indente ton code, ce genre d'erreur se verra beaucoup plus vite :)
 
//edit : et change de source pour apprendre, celle là est visiblement pas à jour  :non:


Message édité par naceroth le 17-08-2004 à 20:27:31
Reply

Marsh Posté le 17-08-2004 à 20:33:43    

je le voi pas le } en trop, ten es sur?
 
je sui ptre bigleu!!

Reply

Marsh Posté le 17-08-2004 à 20:33:43   

Reply

Marsh Posté le 17-08-2004 à 20:35:59    

utilise des if et indente ton code.

Reply

Marsh Posté le 17-08-2004 à 20:38:54    

nfshp2 a écrit :

je le voi pas le } en trop, ten es sur?


 
ZDE en est sûr, donc moi aussi :D
 

Citation :


je sui ptre bigleu!!


 
Non, c'est juste le code qui est plus que confus  :ange:  
 

Reply

Marsh Posté le 17-08-2004 à 20:46:44    

naceroth a écrit :

ZDE en est sûr, donc moi aussi :D
 

Citation :


je sui ptre bigleu!!


 
Non, c'est juste le code qui est plus que confus  :ange:


 
oui mais il est ou??

Reply

Marsh Posté le 17-08-2004 à 20:50:14    

Bon, là, t'es aveugle, y a qu'un seul } dans le petit bout de code que j'ai cité plus haut  :pfff:

Reply

Marsh Posté le 17-08-2004 à 20:51:35    

et il faut que je le vire, spa normal ca

Reply

Marsh Posté le 17-08-2004 à 20:52:42    

nfshp2 a écrit :

et il faut que je le vire, spa normal ca


 
bah ca marche  :lol:  :whistle: , merci  :jap:  :jap:  :jap:

Reply

Marsh Posté le 17-08-2004 à 20:53:38    

Bah si c'est normal, puisqu'il est en trop :pfff: :D

Reply

Marsh Posté le 17-08-2004 à 20:58:01    

arff je suis maudit , maintenant g ca qui s'affiche quand je valide mes valeurs  
 
 Column count doesn't match value count at row 1 :??:  :??:  [:airforceone]


Message édité par nfshp2 le 17-08-2004 à 20:59:12
Reply

Marsh Posté le 17-08-2004 à 21:00:58    

ça veux probablement dire que le nombre de données que tu passes dans l'instruction INSERT diffère du nombre de champs de la table

Reply

Marsh Posté le 17-08-2004 à 21:01:36    

ah, je vé verifier cela:jap:

Reply

Marsh Posté le 17-08-2004 à 21:09:18    

pourtant g cela:  
$requete=mysql_db_query($sql_bdd,"insert into membre values ($titre,\"$weblink\",\"$description\",\"$mat1\",\"$mat2\",\"$note\" )",$db_link) or die(mysql_error());
 
et sur ma table g ca dans le meme ordre mais avant g d'autre  entrés

Reply

Marsh Posté le 17-08-2004 à 21:29:57    

Hum, peut être vu, dans l'instruction insert, les chaines de caractères sont entourées de ' pas avec des ", essayons cette correction là.

Reply

Marsh Posté le 17-08-2004 à 21:31:13    

essayons, mais comme je te lai dis, ca vien de phpdebutant et le script a l'origine marche bien...

Reply

Marsh Posté le 17-08-2004 à 21:32:00    

ouais, ça se voit :D
 
entre les syntaxes fausses et les commandes dépréciées, c'est un parfait exemple, en effet  :hello:


Message édité par naceroth le 17-08-2004 à 21:33:13
Reply

Marsh Posté le 17-08-2004 à 21:33:49    

bah la ca me me, apres avoir entrer des valeurs:
 
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near ';n,;,\'jk;b\',\',n;,n\',\'ngh\',\'ghjh\',\'jhj\')' at line 1

Reply

Marsh Posté le 17-08-2004 à 21:38:02    

Excellent conseil d'ailleurs, faudrait ajouter "et le manuel php" :D
 
Je t'ai dis des ' pas des \'


Message édité par naceroth le 17-08-2004 à 21:38:46
Reply

Marsh Posté le 17-08-2004 à 21:43:56    

bah g remplacé les " par des ' mais je savsi pas quil fallait enlever  les \

Reply

Marsh Posté le 17-08-2004 à 21:44:49    

maintenant c ca....
 
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near ';n,;,'jk;b',',n;,n','ngh','ghjh','jhj')' at line 1

Reply

Marsh Posté le 17-08-2004 à 21:47:31    

je sens que je vais totu reprendre a 0 car en mettant juste un s dans les case, ca me met  Column count doesn't match value count at row 1

Reply

Marsh Posté le 17-08-2004 à 22:00:14    

vire le switch [:spamafote]

Reply

Marsh Posté le 17-08-2004 à 22:03:38    

Ayuget a écrit :

vire le switch [:spamafote]

:??:

Reply

Marsh Posté le 17-08-2004 à 22:07:20    

Code :
  1. if{ } 
  2. else{ }


Tu connais? [:itm]

Reply

Marsh Posté le 17-08-2004 à 22:09:43    

ca marche po tempi

Reply

Marsh Posté le 17-08-2004 à 22:16:58    

les simples quote ca existe aussi :O
Et puis j'abandonne, lit des tutos et achète un bouquin :O

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed