|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Invité de passage
![]() Inscription : janvier 2011 Messages : 18 ![]() |
Bonjour à vous,
Voilà enfaite je suis en train de travailler sur un système d'annonce d'emploi. Tout les gens pourrons poster des annonces, mais elles seront avant d'être poster sur le site valider par un validateur, qui recevra l'annonce par mail ^^ . Le seul problème c'est que je ne sais pas trop comment faire pour que quand on valide l'annonce elle apparait sur la page principal du site, j'ai pensé rajouter un champ valider dans ma table et faire un UPDATE pour mettre le champ à 1 si l'annonce est valider. Mais je ne sais pas trop comment faire en faite donc si vous pouviez m'aider ^^ Je vous donne le code de la page principal est de la page de validation emploi.php Code :
Code :
|
||||
|
|
00
|
|
|
#2 | |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
Citation:
|
|
|
|
00
|
|
|
#3 | ||
|
Membre éclairé
![]() Jérémy Étudiant Inscription : octobre 2009 Messages : 236 ![]() |
Citation:
Code :
$reponse = $bdd->query('SELECT * FROM emploi WHERE valider=1 ORDER BY ID DESC LIMIT 0,10'); Citation:
Code :
$req = $bdd->prepare('UPDATE emploi SET valider=1 WHERE id=$id'); |
||
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : janvier 2011 Messages : 18 ![]() |
Merci gwharl pour ta réponse ^^ mais avec cette requête UPDATE il me met pas le valider à 1 quand je clique sur valider ça reste tout le temps à 0
En faite je pense que le problème viens de mon $_POST['valider'] en faite j'aimerai le mettre à 1 quand on clique sur le bouton valider et à 0 quand on clique sur le bouton supprimer |
|
|
00
|
|
|
#5 |
|
Membre éclairé
![]() Jérémy Étudiant Inscription : octobre 2009 Messages : 236 ![]() |
Dans le doute fait un echo de ta requête quand tu l'execute afin de voir si celle-ci contient le bon id de l'annonce.
|
|
|
00
|
|
|
#6 | |
|
Invité de passage
![]() Inscription : janvier 2011 Messages : 18 ![]() |
comme ça ?
Code php :
echo $req = $bdd->prepare('UPDATE emploi SET valider=1 WHERE id=$id'); Parce-que avec ça j'ai le droit a un beau message d'erreur :p Citation:
|
|
|
|
00
|
|
|
#7 | ||
|
Membre éclairé
![]() Jérémy Étudiant Inscription : octobre 2009 Messages : 236 ![]() |
Code :
|
||
|
|
00
|
|
|
#8 | ||
|
Invité de passage
![]() Inscription : janvier 2011 Messages : 18 ![]() |
Quand j'utilise ton code il me dit que la variable $id est indéfini et m'affiche ça
Citation:
mais la XD encore plus grosse erreur Citation:
|
||
|
|
00
|
|
|
#9 | |
|
Membre éclairé
![]() Jérémy Étudiant Inscription : octobre 2009 Messages : 236 ![]() |
Citation:
Ta seconde erreur est sur "$donnees['id']" définissant mal les limites de la variable : Code :
$mareq="UPDATE emploi SET valider=1 WHERE id=".$donnees['id']; |
|
|
|
00
|
|
|
#10 | |||
|
Invité de passage
![]() Inscription : janvier 2011 Messages : 18 ![]() |
Alors j'ai essayer de corriger cette erreur et c'est bon j'ai fait
Code php :
Citation:
|
|||
|
|
00
|
|
|
#11 |
|
Membre éclairé
![]() Jérémy Étudiant Inscription : octobre 2009 Messages : 236 ![]() |
Vois à passer "$donnees['id']" dans une variable intermédiaire, et change en conséquence ton update.
|
|
|
00
|
|
|
#12 | |||
|
Invité de passage
![]() Inscription : janvier 2011 Messages : 18 ![]() |
Toujours pareil c'est comme si au début de la page le $donnees['id'] contenait quelque chose qu'il perd en chemin >_<
j'ai fait ça Code php :
et j'ai toujours pareil Citation:
|
|||
|
|
00
|
|
|
#13 |
|
Membre éclairé
![]() Jérémy Étudiant Inscription : octobre 2009 Messages : 236 ![]() |
$id contient bien une valeur numérique ? sinon oublie pas les quotes.
Si ce n'est pas ça, place des echo de ta variable dans ton code histoire de voir ou celle-ci perd sa valeur. |
|
|
00
|
|
|
#14 |
|
Invité de passage
![]() Inscription : janvier 2011 Messages : 18 ![]() |
Oui $id contient bien une valeur numérique ^^
Alors quand je place le code dans le while il m'affiche UPDATE emploi SET valider=1 WHERE id=28 Et des que je replace juste après le while UPDATE emploi SET valider=1 WHERE id= Donc on dirait qu'il la perd juste après le while mais je vois pas du tout pourquoi |
|
|
00
|
|
|
#15 |
|
Membre éclairé
![]() Jérémy Étudiant Inscription : octobre 2009 Messages : 236 ![]() |
Normal ton while doit surement boucler sur tes annonces, peut tu nous donner la structure de ton while, à quoi te sers la boucle ?
|
|
|
00
|
|
|
#16 | ||
|
Invité de passage
![]() Inscription : janvier 2011 Messages : 18 ![]() |
Code :
|
||
|
|
00
|
|
|
#17 |
|
Membre éclairé
![]() Jérémy Étudiant Inscription : octobre 2009 Messages : 236 ![]() |
Effectivement dans ce cas de figure, ton update doit être placé dans le while car tu défini $donnees en paramètre d'entré.
Sachant que tu fait un LIMIT 0,1, un while n'est pas utile, je ne voit pas trop l'utilité de cette requête, ton commentaire dit "affichage de chaque message" mais la tu ne charge et affiche que le premier, enlève le LIMIT et joue plutôt sur l'id de ton annonce. |
|
|
00
|
|
|
#18 |
|
Invité de passage
![]() Inscription : janvier 2011 Messages : 18 ![]() |
Enfaite ce que je veux faire c'est que sur cette page on voye l'annonce qui à été poster par la personne, je veux dire que si 2 personnes poste une annonce, ça va donc faire 2 mails et dans chacun des mails je veux l'annonce qui correspond et pas les 2 ^^
|
|
|
00
|
|
|
#19 |
|
Invité de passage
![]() Inscription : janvier 2011 Messages : 18 ![]() |
Et je vois trop comment faire si je mes le UPDATE dans le while parce-que moi je veux que le valider se mette à 1 si on clique sur le bouton valider et le bouton valider ce trouve après le while ^^
|
|
|
00
|
|
|
#20 |
|
Membre éclairé
![]() Jérémy Étudiant Inscription : octobre 2009 Messages : 236 ![]() |
Je dois t'avouer que je m'y perd un peu, je trouve ça un peu brouillon,
De base ce n'est pas la bonne méthode, tu doit pas voir a retourner le dernier élément mais retourner ceux qui ne sont pas validé et qui n'ont jamais était envoyés, je te conseille d'envoyer le mail juste après l'ajout de l'offre, l'offre s'enregistre avec un id en clé primaire et tu envoi le mail qui a le même id, dans ce mail tu fait un lien qui contient une url de validation et en paramètre l'id de l'annonce (monsite.fr?action=validation&id=23). Dans cette partie, oublis le "LIMIT" travaille plus sur le "WHERE". |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com