ah ok , faut juste trouver cette erreur , mais elle bien cachee ...
bonjour a tous
je viens de trouver un super tuto pour relaiser une page ou les utlisateurs peuvent ecrire des commentaires
il fonctionne a merveille
Ce que je fais
mais je souhaiterais avoir une moderation sur les commentaires
donc que je puisse les lire avant leurs publications
qui a une idee comment je pourrais m y prendre
merci de l aide
Ce que je veux
avoir le cotrole sur les commentaire avant la publication
Ce que j'obtiens
55 réponses
fait des var_dumps sur toutes tes variables a différents endroit de ton script, tu verras peut etre pourquoi ça plante
Bonjour flexi 2202,
Je pense que tu pourrais peut-être rajouter une colonne dans ta table ou il y a tes commentaires.
Une colonne qui retient si le commentaire a été validé ou non.
Bonjour,
tu rajoutes un champ "valider" par défault sur false dans la table des commentaires ensuite dans la partie affichage tu fais un where valider = true
bonjour
merci pour l aide c est gentil
donc je vais dans ma base de donnee ajoute ce champ "valider" mais dans la colonne "valeur par defaut "je ne vois pas false ?je laisse en "aucun"
dans la partie affichage je mets un where valider = true
comme ceci
De rien.
Tu rajoutes le champ valider dans ta table commentaire, les booléens c'est soit 1 ou 0 dans la table donc par défault c'est 0 ensuite lors de ta requête sql pour récupérer tes commentaires tu rajoutes le where `$mysqli->query("SELECT pseudo, message, DATE_FORMAT(date_enregistrement, '%d/%m/%Y') AS datefr, DATE_FORMAT(date_enregistrement, '%H:%i:%s') AS heurefr FROM commentaire WHERE valider = 1 ORDER BY date_enregistrement DESC");
Flexi, ca fonctionne ? Parce qu'avec ce que tu viens d'envoyer, j'ai un doute :P
merci de votre aide a tous c est genial
mais j ai une erreur
apres avoir modifie lecode de cette maniere
j ai cette belle erreur
Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting '-' or identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in C:\wamp64\www\dialogue\dialogue.php on line 32
Quelle est ta ligne 32 ???
Il faudrait aussi fermer ta balise h2 $contenu .= '<h2>' . $résultat->num_rows . ' commentaire(s)</h2>';
merci pour l aide
dans la table des donnees ?
j ai laisse sur "aucun " pour le champ "valider"
donc pour le champ valider j ai fait ceci
4 valider int(11) Non Aucun(e)
Met la valeur par défaut à 0.
Comme ça aucun ne sera null et tu pourras les récupérer plus facilement pour les valider.
j ai donc mis la table en
tel que defini a 0
mais j ai toujours l erreur
Pourquoi tu n'as pas mis une condition dans ton while ???
car le code que j ai trouve et qui est fonctionnel n en avais pas
merci
curvata bien vu pour la balise merci
La méthode fetch assoc sort de quelle class ???
Moi j'utilise plutot pdo.
le code que j ai trouve est ecrit en mysqli
je l ai poste en debut de ce post
mais bon que cela soit fait en PDO ou en mysqli
ce que je recherche c est juste une methode pour qu un visiteur puisse poster des commentaires , mais que je puisse controler avant leurs mise en ligne
De Mysqli mais je pense que le problème c'est les guillemets
Ce que tu as mis en place te permettra de faire la modération des commentaires maintenant il y a une petite erreur de syntaxe.
merci pour l aide
j en ai mis deux de cette facon
mais toujours l erreur
Et si tu met un die() après tes var_dumps, ça donne quoi ???
j ai donc modifie comme ceci
echo var_dump($contenu) . "<br>"OR DIE ($mysqli->error);
echo var_dump($commentaire) . "<br>"OR DIE ($mysqli->error);
mais toujours pareil
Et un die juste après cette ligne : $contenu .= '<h2>' . $résultat->num_rows . ' commentaire(s)';
rien non plus
toujours l'erreur ???
oui toujours
alors que code d origine sans aucune modification fonctionne correctement ...
Puis il ne faut pas mettre d'accent sur les variables. $résultat doit etre $resultat
ça doit etre ca
merci pour ce soutien
mais j ai toujours la meme erreur
a cette ligne
Est ce que tu connais exactement le contenu de ta variable $commentaire.
connaitre le contenu de ma variable $commentaire ?
c est a dire ?
c'est un tableau qui contient quoi (ses valeurs)
Après ta requête tu fais $commentaire = $résultat->fetch_assoc(); et ensuite tu fais le var_dump($commentaire); die(); pour voir ce que tu récupères de la base de donnée.
la variable $commentaire
contient les messages que les utilisateurs laisse et que j aimerais valider avant leurs publications
Curvata
merci
mais c est toujours pareil
toujours la meme erreur
Si l'erreur est présente à la ligne $contenu .= '<div class="titre">Par: ' . $commentaire['pseudo'] . ', le ' . $commentaire['datefr'] . ' à ' . $commentaire['heurefr'] . '</div>'; et si tu fais le var_dump et die avant celle-ci tu ne dois pas avoir une erreur ou alors l'erreur ne vient pas de cette ligne.
merci pour l aide
mais j ai toujours l erreur a cette ligne
voic le nouveau code avec les var_dump
et la base de donnee
Il y a un simple quote de trop devant : $mysqli->query("SELECT pseudo, message, DATE_FORMAT(date_enregistrement, '%d/%m/%Y') AS datefr, DATE_FORMAT(date_enregistrement, '%H:%i:%s') AS heurefr FROM commentaire WHERE valider = 1 ORDER BY date_enregistrement DESC");
J'ai fait le test je n'ai plus d'erreur
Le bon code est :
Merci pour la solution
cela a regle l erreur
par contre j en ai deux nouvelles a la fin du code
qui sont les suivantes
Notice: Trying to access array offset on value of type null in C:\wamp64\www\dialogue\dialogue.php on line 38
Notice: Trying to access array offset on value of type null in C:\wamp64\www\dialogue\dialogue.php on line 38
Notice: Trying to access array offset on value of type null in C:\wamp64\www\dialogue\dialogue.php on line 38
Notice: Trying to access array offset on value of type null in C:\wamp64\www\dialogue\dialogue.php on line 39
ouppss
desole
je viens jsute de voir le nouveau code
plus d erreur
en effet
je teste et je reviens
un tout tres grand merci
Si tu as toutes ces erreurs c'est parce que tu n'as aucun commentaire validé
il faut que tu fasses
non non c est bon
tout y est
juste que j avais ouvert la reponse trop vite et donc que le code n etais pas encore dans al reponse
mais tout fonctionne a merveille
un tout tres grand merci
vous etes geniaux
bonne fin d apres midi
De rien et bonne fin d'après-midi a vous aussi
Et, pourriez-vous mettre ma réponse comme acceptée, svp ???
cela ce fait comment
Tu parles de quoi sydneyikia ? Le code fonctionne parfaitement mais il voulait rajouter la modération des commentaires...
desole du retard mais j ai fini par trouver un autre tuto