|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : mai 2007 Messages : 79 ![]() |
Bonjour
J'aimerais créer un champ recherche dans une page, ce champ permettrer de faire une recherche par nom ou par date dans ma base sql Ensuite une fois le resultat de la recherche afficher, il faudrait pouvoir modifier les données de la table Pouvez vous m'aider D'avance merci |
|
|
00
|
|
|
#2 | ||||||||
|
Invité de passage
![]() Inscription : mai 2007 Messages : 79 ![]() |
Bonjour
J'ai réussi à mettre en place la fonction recherche et modification dans ma base sql Mais je rencontre quand même deux problème: * Le premier c'est que par exemple si dans le champ remaque je met un apostrophe et que je valide pour modifier il me met une erreur de syntaxe et ne me modifie rein * Le deuxième c'est que les utilisateus peuvent faire une recherche par nom ou par date. Mais quand il font une recherche en mettant la date au foramt français ça ne marche par contre au format américain ça fonctionne... De même après une recherche mon champ date affiché est au format américain et pas français. Je souhaiterais que l'utilisateur puisse saisir toutes les dates au format français et que après ce fasse une conversion transparente pour l'utilisateur Je vous met ma page de recherche + mes 3 scripts: affiche l'écran de recherche: Code :
Code :
Code :
Code :
Merci pour votre aide |
||||||||
|
|
00
|
|
|
#3 |
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Premier problème:
C'est le problème des injections SQL Dans ton cas il faut donc, avant d'insérer des données dans la base, utiliser la fonction mysql_real_escape_string() sur la donnée Deuxieme probleme: Les dates dans MySQL sont stockées au format aaaa-mm-jj et il ne faut surtout pas essayer de le changer, stocker une date dans un autre champ etc ca poserait plus de problèmes que ca n'en résoudrait. La solution est donc, avant l'insertion de convertir la date tapée par l'utilisateur et à l'affichage idem transformer la date récupérée de la base de données. Il y a eu hier un certains nombre de posts concernant cette transformation de format de date. |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : mai 2007 Messages : 79 ![]() |
et comment utiliser la fonction mysql_real_escape_string() ????
|
|
|
00
|
|
|
#5 | ||||||
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Citation:
exemple de base Code :
Citation:
il faut donc faire: Code :
|
||||||
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : mai 2007 Messages : 79 ![]() |
et comme j'ai plusieurs champ je dois faire un update par champ ou y a t-il la possibilité de grouper le tout ?
|
|
|
00
|
|
|
#7 |
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Tu gardes tes update comme ils sont et tu appliques la fonction mysql_real_escape_string() a chacune des nouvelles valeurs des champs, comme je l'ai fait avec une dans mon exemple.
|
|
|
00
|
|
|
#8 | ||
|
Invité de passage
![]() Inscription : mai 2007 Messages : 79 ![]() |
Désolé j'ai fait un test avec le champ remarque
Code :
mais ça ne marche pas il met une erreur: 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 'Matin' WHERE id_personne = '43' |
||
|
|
00
|
|
|
#9 |
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Si tu affichais la requete COMPLETE tu verrais qu'il manque un apostrophe apres la remarque, juste avant la virgule
Dans tes die() mets plutot ca: Code :
die("Erreur SQL!!!<br/>Requete : $marequete<br/>Erreur :".mysql_error()); |
|
|
00
|
|
|
#10 |
|
Invité de passage
![]() Inscription : mai 2007 Messages : 79 ![]() |
ok merci pour tes précieux conseils ça marche maintenant
Peux tu m'aider également pour le pb de format de date car avec les post j'ai du mal à comprendre et donc à les adapter à mon problème Merci pour ton aide |
|
|
00
|
|
|
#11 | |
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Citation:
|
|
|
|
00
|
|
|
#12 | ||
|
Invité de passage
![]() Inscription : mai 2007 Messages : 79 ![]() |
je voulais mettre un truc du genre:
Code :
|
||
|
|
00
|
|
|
#13 |
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Donc il faut utiliser cette conversion lorsque tu vas insérer des dates dans ta base, ou quand tu fais des select sur la base de données.
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com