insert to / field list

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : insert to / field list

Re: insert to / field list

par zeus » 30 sept. 2006, 10:49

@charabia : euh ... oui .. mais ... je nettoyais mon clavier, le truc est parti tout seul :langue:
Désolé, vraiment, je tiens à rendre à césar ce charabia qui appartient à truc. Comprendra qui pourra ;)

@Truc : eh, oh, c'est pas à toi que je faisais un compliment :langue:
-Imprime tes requêtes avec un simple echo ensuite teste les sur phpMyAdmin pour voir ou ça bloque.

Mais la il faut mettre chaque variable entre '$variable' (enfin normalement c'est cela le problème)
Bizarre, j'ai l'impression d'avoir dit la même chose 2 post plus haut :-k :langue:

Re: insert to / field list

par Cyrano » 29 sept. 2006, 22:52

Un conseil d'un débutant

-Imprime tes requêtes avec un simple echo ensuite teste les sur phpMyAdmin pour voir ou ça bloque.
:pouce: Si tous les débutants commençaient par là, ils poseraient d'autres questions, probablement plus pointues sur la manière de formuler une requête par exemple, mais pas parce qu'une requête plante :D

Re: insert to / field list

par hbellahc » 29 sept. 2006, 21:39

Bonjour
C'est tout à fait normal
Un conseil d'un débutant

-Imprime tes requêtes avec un simple echo ensuite teste les sur phpMyAdmin pour voir ou ça bloque.

Mais la il faut mettre chaque variable entre '$variable' (enfin normalement c'est cela le problème)
<?php
include ("config.php");
include ("install.php");
$date = date("d-m-Y");
$soft = $_POST['soft'];
$type_ext = $_POST['type_ext'];
$comm1 = $_POST['comm1'];
$comm2 = $_POST['comm2'];
mysql_query ("INSERT INTO repertoire(id,logiciel,extension,dating,comm1,comm2) VALUES('','$soft','$type_ext','$date','$comm1','$comm2')")
or die (mysql_error());
?>

Essaye ça ,ça marchera normalement
Bon courage.

par Truc » 29 sept. 2006, 21:28

Qué... quoi... oui merci je suis le meilleur :-*
toujours un plaisir de donner de bons conseils :langue:

par charabia » 29 sept. 2006, 21:05

+1 zeus ;) Je m'en vais dormir lol

Psstttt charabia, pas Truc :langue:

Re: insert to / field list

par zeus » 29 sept. 2006, 21:03

Quand je regarde
VALUES('',$soft,$type_ext,$date,$comm1,$comm2)")
et
VALUES('',"ee","rr","tt","yy","uu")
Je remarque que, dans la 2nd proposition, il y a des " en plus ;)

Pour te donner un conseil, lorsque tu bloques sur une requete, affiche cette requete qui bloque et tu devrais comprendre ce qui ne va pas ;)

EDIT --
+1 pour Truc, apprendre le php ne veut pas dire "tout faire un php" mais apprendre les bonnes pratiques en PHP.

Dans ce cas là, je conseille fortement de ne pas faire print(HTML) mais plutot directement le code HTML sans passer par le php. Tu n'occupes pas de ressources serveur puisque ce code ne sera pas interpreté par le serveur.

De même, il me semble qu'il vaut mieux utiliser echo que print :-k

par charabia » 29 sept. 2006, 21:00

Heu l'apprentissage accéléré ne veut pas dire de tout mettre en PHP...C'est tout le contraire. Il ne faut mettre en PHP que ce qui a besoin de l'être.

Pour tester fait des echo des variables en question.

par ptitgenie69 » 29 sept. 2006, 20:54

Et bien pour répondre a ta question, c'est que je suis en période d'aprentissage accélérer donc je m'oblige a faire le plus de code possible ne php (meme si je sais qu'un formulaire html aurait été aussi simple ).

sinon, comment puis-je faire pour vérifier que toutes mes variables soitt reconnu ? des tests avec print ?

Quand a phpmyadmin, j'ai fait le test avec :
INSERT INTO repertoire(id,logiciel,extension,dating,comm1,comm2) VALUES('',"ee","rr","tt","yy","uu")
et le test marche bien

par charabia » 29 sept. 2006, 20:50

Pourquoi avoir intégré ton formulaire dans du PHP ?

Tests à faire :
- vérifier que toutes tes variables sont bien reconnues avant de faire l'insertion
- exécutes ta requête directement dans phpMyAdmin pour voir si ça fonctionne.

par ptitgenie69 » 29 sept. 2006, 20:42

Et un formulaire qui marche, UN !
<?php print ("
<form method=\"post\" action=\"ajout.php\"
>Logiciel :&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;  <input type=\"text\" name=\"soft\" size=\"50\" ><br>
Extension :&nbsp;&nbsp;&nbsp;&nbsp;   <input type=\"text\" name=\"type_ext\" size=\"50\"><br><br>
Commentaires :&nbsp;&nbsp;&nbsp;&nbsp;   <input type=\"text\" name=\"comm1\" size=\"50\"><br><input type=\"text\" name=\"comm2\" size=\"50\"><br>
<br><input type=\"submit\" value=\"proposer\">");

 ?>

par charabia » 29 sept. 2006, 20:39

Montres nous ton formulaire ;)

insert to / field list

par ptitgenie69 » 29 sept. 2006, 20:31

Bonsoir, me revoila dèjà !

Alors j'avance bien dans mon projet et j'espère bientôt pouvoir vous montrer une ébauche de nos efforts ( je dit nos car c'est aussi grace a vous ! )

je tombe sur un nouveau probleme que j'ai du mal a résoudre. En fait, j'ai un formulaire a remplir avec 4 champs texte simple. le bouton du formulaire renvoi a ce morceau de code :
<?php
include ("config.php");
include ("install.php");
$date = date("d-m-Y");
$soft = $_POST['soft'];
$type_ext = $_POST['type_ext'];
$comm1 = $_POST['comm1'];
$comm2 = $_POST['comm2'];
mysql_query ("INSERT INTO repertoire(id,logiciel,extension,dating,comm1,comm2) VALUES('',$soft,$type_ext,$date,$comm1,$comm2)")
or die (mysql_error());
?>
et, par exemple, si je met "photoshop" dans le 1er champ de texte du formulaire, que je clik sur envoyer, voila ce que sa m'affiche :

Champ 'photoshop' inconnu dans field list

Et la, j'ai chercher mais je n'arrive pas vraiment a voir ou se situr l'erreur ^^

merci beaucoup pour os futurs réponses ....