Problème code PHP insertion données form dans DB - PHP - Programmation
Marsh Posté le 10-06-2010 à 15:29:44
Vue le mode d'insertion, je parie $100 que ça coince du fait qu'il n'a pas échappé certains caractères (l'apostrophe, par ex ou les guillemets)  
 
 
edit : _k a o s_, attention aux sql injections!
Marsh Posté le 10-06-2010 à 15:30:01
Nan pas d'erreur, mais ça ajoute rien dans ma db   
 
Marsh Posté le 10-06-2010 à 15:30:57
| rufo a écrit : Vue le mode d'insertion, je parie $100 que ça coince du fait qu'il n'a pas échappé certains caractères (l'apostrophe, par ex ou les guillemets)  | 
 
 
Quels apostrophes/guillemets? :s
Marsh Posté le 10-06-2010 à 15:32:16
ben en même temps, si tu récupères pas l'erreur provenant de mysql_query(), tu risques pas de voir les erreurs remontées par mysql  10 contre 1 qu'il va te mettre un syntax error dans la requête sql que tu tentes de lui faire avaler...
 10 contre 1 qu'il va te mettre un syntax error dans la requête sql que tu tentes de lui faire avaler...
Marsh Posté le 10-06-2010 à 15:35:45
| _k a o s_ a écrit :   | 
 
à ton avis, tes variables php que t'as mises dans ta requête sql, y'a de bonnes chances qu'elles contiennent des apostrophes/guillemets. Donc ta requête "INSERT INTO `promos` VALUES ('$titre', '$description', '$nom_fichier')" va avoir un petit soucis d'interprétation  
 
 
Si tu mets dans $titre ça : Je n'y suis pour "rien", n'est-ce pas?... Comment tu crois que php ou mysql vont réagir au moment où $titre va être replacée par son contenu? 
 
 
Marsh Posté le 10-06-2010 à 15:39:06
Ah ouai pas bête =S 
Comment je peut contourner ce problème? 
 
Pour les SQL injections j'essaierai de m'occuper de la sécu une fois que ça marchera   
 
edit: cela dit j'ai mis un password avec session pour accéder à la page d'ajout (on peut pas y aller sans passer par le login)
Marsh Posté le 10-06-2010 à 15:46:50
| _k a o s_ a écrit : Nan pas d'erreur, mais ça ajoute rien dans ma db   | 
faut faire un "or die(mysql_error());"  apres ton mysql_query
Marsh Posté le 10-06-2010 à 15:49:31
Il me renvoie ça...  
 
| Code : 
 | 
Marsh Posté le 10-06-2010 à 15:52:27
Tu peux utiliser cette syntaxe : 
| Code : 
 | 
 
 
Comme dis, attention à "nettoyer" tes chaines (guillements, html, etc...) avant de les insérer 
Marsh Posté le 10-06-2010 à 15:56:07
| _k a o s_ a écrit : Il me renvoie ça...   
 | 
 
 
c'est parce que avec ta syntax VALUE il attend l'id aussi, faudrais soit faire 
 
| Code : 
 | 
 
 
soit  
 
| Code : 
 | 
 
 
ou mieux ce que dis SICKofitALL   
  
Marsh Posté le 10-06-2010 à 15:59:44
Exact, avec ta syntaxe ça fonctionne SICKofitALL   
 
 
Je me renseigne pour le nettoyage des chaînes
Marsh Posté le 10-06-2010 à 16:15:57
tu peux commencer par jeter un oeil sur les fonctions mysql_real_escape_string et strip_tags par exemple 
Marsh Posté le 10-06-2010 à 16:19:59
Ok merci pour l'indication 
Marsh Posté le 10-06-2010 à 17:16:13
j'ai encore un soucis   
  
 
J'ai codé l'affichage de la table SQL dans ma page promotions, mais j'ai le champ description qui ne s'affiche pas   
  
 
Voilà le code: 
| Code : 
 | 
 
 
Merci pour votre aide   
 
Marsh Posté le 10-06-2010 à 17:22:13
normale t'as fais une faute a "description" 
 
je te conseil de bosser en erreur : E_ALL | E_STRICT
Marsh Posté le 10-06-2010 à 17:43:20
C'est bon merci   
 
Marsh Posté le 11-06-2010 à 09:41:14
Et merci d'apprendre le html avant le php  Remplace ce bout de code
 Remplace ce bout de code 
| Code : 
 | 
 
 
par  
| Code : 
 | 
 
Marsh Posté le 10-06-2010 à 15:24:04
Je poste pour demander un peu d'aide, je vais devenir fou si ça continue 
  
Je cherche à entrer les données d'un simple formulaire dans une base de données pour permettre à un collègue d'ajouter des promotions sur son site.
Voici ce que j'ai fait:
formulaire:
ajout_promo.php
Table dans la DB:
http://img191.imageshack.us/img191/4836/tablex.jpg
Merci d'avance pour toute aide
---------------
Best dressed chicken in town