
| Page Précédente 1 2 3 ... 25 26 27 28 29 30 31 ... 161 162 163 164 Suivante | |||
| Auteur | Message | ||
|---|---|---|---|
| 1 visiteur sur ce sujet (1 Anonyme) | |||
| Page Précédente 1 2 3 ... 25 26 27 28 29 30 31 ... 161 162 163 164 Suivante | |||
Tadzoa
|
# Posté le 29/04/2007 à 13:45:57 | ||
![]()
|
Reprise du dernier message de la page précédente :
Pour les personnes qui ont posté la page debut.php avec une erreur :
il ne faut pas faire echo '...'; Quittez php et faites ça en html ?> <script>... Pourquoi ? Parce que dans le script il y a des commentaires, si vous les mettez dans l'echo forcéement ça coince... Pour le mot de passe il faut le hasher, vous utilisez la fonction shuffle (http://php.net/shuffle ) pour ça puis md5 sur le résultat. Ensuite vous evoyez le réultat par mail et dans la bdd. Puis le tour est joué, je vois pas trop le problème... ![]() Foncez y ! Un site pour partager son savoir scientifique Je précise que je suis très peu disponible donc ne m'en voulez pas si je mets du temps à réagir aux MP |
||
Radeon
|
# Posté le 29/04/2007 à 15:34:38 | ||
![]()
études : IUT Valence |
Citation : tibeoh
Salut
,
Je ne veux pas vous déranger, mais je pense que ce forum est fait pour rapporter les bugs et apporter des suggestions. Depuis 2 pages je trouve que le forum part un peu en live ...
Pouvez vous poster vos problèmes dans un autre topic, car là on se retrouve avec pleins de questions et centaines de lignes de codes... Ca ne donne pas envi de répondre ...
Je vous rappel aussi que le copier coller c'est pas génial... Vous allez rien apprendre... Mais après moi j'dis ça mais j'dis rien ![]() +1 |
||
Black_Rock
|
# Posté le 29/04/2007 à 20:22:32 | ||
ZZzzzune !![]()
|
et pour mon problème ?
quelqu'un pourrait me passer une page postok et voirtopic qui fonctionne par mp s'il vous plait ? ça me permeterais de voir où je me suis planter, car j'ai beau chercher je ne comprend pas d'où vien cette erreur .... Merci d'avance
|
||
Snipefire
|
# Posté le 29/04/2007 à 20:41:59 | ||
![]()
études : ESIEE Engineering Paris |
Citation : Black_Rock
et pour mon problème ?
quelqu'un pourrait me passer une page postok et voirtopic qui fonctionne par mp s'il vous plait ? ça me permeterais de voir où je me suis planter, car j'ai beau chercher je ne comprend pas d'où vien cette erreur .... Merci d'avance ![]() Euh tu prends celle du tuto elle marche parfaitement
|
||
Tristou
|
# Posté le 29/04/2007 à 20:52:55 | ||
Converti à Python![]()
|
Je pense que le but de ce sujet, c'est à la fois de reporter les erreurs et de proposer des améliorations ou des corrections maintenant je pense que demander de l'aide n'est pas malvenu (à condition de ne pas avoir fait du copier/coller sinon on n'apprends absolument rien).
General Vans, pour le mot de passe, je suppose que tu t'adressais à moins pour le mot de passe.Il y a une chose qui me chiffone : il faut hasher le mot de passe envoyé par mail au membre O_o ?
Édité
le 29/04/2007 à 20:53:50
par Tristou
- I've been waiting for you, Obi-Wan. We meet again, at last. The circle is now complete. When I left you, I was but the learner; now I am the master. - Only a master of evil, Darth. |
||
Black_Rock
|
# Posté le 29/04/2007 à 21:07:42 | ||
ZZzzzune !![]()
|
Citation : Snipefire
Euh tu prends celle du tuto elle marche parfaitement ![]() Justement, non. Ou alors je me suis planter quelque part dans postok durant le tp moderation, pour ça que j'aimerais que l'on m'envoye ça par mp. Pour info voici le problème : Citation : Black_Rock Citation : vincent1870
Et aussi met un "or die(mysql_error())" et donne-nous ce qu'il renvoie
Merci d'avance ![]() Oops nous avons posté en même temps, je viens jsute de voir ta réponse ... voici ce que ça donne : Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /mnt/122/free.fr/4/b/********/postertrt.php on line 329
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 'ORDER BY post_id DESC LIMIT 0,1' at line 4
edit : la requete en question : Code : PHP //On modifie la valeur de topic_last_post pour cela on
//récupère l'id du plus récent message de ce topic $requete4 = mysql_query('SELECT post_id FROM forum_post WHERE topic_id = '.$topic.' ORDER BY post_id DESC LIMIT 0,1'); $data4 = mysql_fetch_assoc($requete4); Je ne voi vraiment pas le problème .... ![]() Et ce que ma condeiller Général Vans : Citation : Black_Rock Citation : General Vans
Essaye ceci :
SELECT max(post_id) FROM forum_post WHERE topic_id = ton topic Toujours une erreur : Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /mnt/122/free.fr/4/b/**********/postertrt.php on line 327
(postertrt = postok) la ligne 327 : $data4 = mysql_fetch_assoc($requete4); de : Code : PHP //On modifie la valeur de topic_last_post pour cela on
//récupère l'id du plus récent message de ce topic $requete4 = mysql_query('SELECT max(post_id) FROM forum_post WHERE topic_id = '.$topic.' ORDER BY post_id DESC LIMIT 0,1'); $data4 = mysql_fetch_assoc($requete4); avec or die(mysql_error()) : 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 'ORDER BY post_id DESC LIMIT 0,1' at line 2
Citation : General Vans Sinon essaye d'afficher ta requête et de regarder la valeur de topic.
Comment ça ? Merci d'avance ![]()
EDIT : désolé de sembler agressif mais, après avoir passé quasiment 2 jours comme un acharné à relire et relire le cours pour trouver d'où vien le problème, qu'au final je n'y parviens pas, que que l'on me sort une réposne comme celle que tu ma sortis, y'a quand même de quoi être sur les nerfs ...
Édité
le 29/04/2007 à 21:16:11
par Black_Rock
|
||
Snipefire
|
# Posté le 29/04/2007 à 21:29:32 | ||
![]()
études : ESIEE Engineering Paris |
Désolé de dire ce que je pense :
faut se remettre en question dans ce cas
Car tu es pas le premier à réalisé ce tuto, et vu le nombre qui l'ont fait sans aucun problème (dont moi) Je peux t'assurer qu'il marche parfaitement. (exepté un ou 2 oublis mais qui ne gène en rien le fonctionnement). De plus si ton problème vient du pseudo "tp" il y a la correction. Ensuite si c'est le morceau qu'il fallait faire soi même et que tu n'as pas réussi alors la tu as juste a mettre une misérable condition quand même... EDIT : Bon j'ai quand même regarder ton code, et je crois avoir cerné l'erreur, montre moi la partie avant la requête
Édité
le 29/04/2007 à 21:31:16
par Snipefire
|
||
Guildo
|
# Posté le 30/04/2007 à 03:11:25 | ||
Ox2A![]()
Ville : St hilaire la treille |
Ce tuto est exelement, il y a par contre une chose à noter : quelle mauvaise syntaxe ! GV, pourquoi utilise tu constament la balise <h2> ?!?
C'est assez frustrant de devoir retoucher toute les lignes du code afin 'avoir une syntaxe à peu pres correcte, et l'on ne compte plus les oublies de balise... Mis à part cela, tres bel effort ; bonne continuation |
||
Snipefire
|
# Posté le 30/04/2007 à 07:51:48 | ||
![]()
études : ESIEE Engineering Paris |
Citation : Guildo
Ce tuto est exelement, il y a par contre une chose à noter : quelle mauvaise syntaxe ! GV, pourquoi utilise tu constament la balise <h2> ?!?
C'est assez frustrant de devoir retoucher toute les lignes du code afin 'avoir une syntaxe à peu pres correcte, et l'on ne compte plus les oublies de balise... Mis à part cela, tres bel effort ; bonne continuation Si tu ne fais pas de copier coller tu n'as rien à retoucher et toute les balises c'est toi même en fonction de ta feuille de style qui les définie
|
||
Black_Rock
|
# Posté le 30/04/2007 à 10:52:52 | ||
ZZzzzune !![]()
|
Voilà snipefire :
la case delete, qui supprime bien un post mais, en laissant un message d'erreur : Code : PHP case "delete": //Si on veut supprimer le post
//On récupère la valeur de p $post = (int) $_GET['p']; $requete1 = mysql_query(' SELECT post_createur, post_texte, forum_id, auth_modo FROM forum_post LEFT JOIN forum_forum ON forum_post.post_forum_id = forum_forum.forum_id WHERE post_id='.$post.''); $data1 = mysql_fetch_assoc($requete1); $topic = $data1['topic_id']; $forum = $data1['forum_id']; //Ensuite on vérifie que le membre a le droit d'être ici (soit le créateur soit un modo/admin) if (!verif_auth($data1['auth_modo'])) { // Si cette condition n'est pas remplie ça va barder :o echo'Vous n\'avez aucun droit d\'être ici'; exit(); } else //Sinon ça roule et on continue { //Ici on vérifie plusieurs choses : //est-ce un premier post ? Dernier post ou post classique ? $requete_first_post = mysql_query("SELECT COUNT(*) AS first_post FROM forum_topic WHERE topic_first_post = '".$post."'"); $requete_last_post = mysql_query("SELECT COUNT(*) AS last_post FROM forum_topic WHERE topic_last_post = '".$post."'"); $first_post = mysql_fetch_assoc($requete_first_post); $last_post = mysql_fetch_assoc($requete_last_post); //On distingue maintenant les cas if ($first_post['first_post'] != 0) //Si le message est le premier { //Les autorisations ont changé ! if (!verif_auth($data1['auth_modo'])) { echo'Vous n\'avez aucun droit d\'être ici'; exit(); } //Il faut s'assurer que ce n'est pas une erreur echo'Vous avez choisi de supprimer un post. Cependant ce post est le premier du topic. Voulez vous supprimer le topic ? <br /> <a href="./postertrt.php?action=delete_topic&t='.$topic.'">oui</a> - <a href="./topicnum.php?t='.topic.'">non</a>'; } elseif ($last_post['last_post'] != 0) //Si le message est le dernier { //On supprime le post mysql_query("DELETE FROM forum_post WHERE post_id = '".$post."'"); //On modifie la valeur de topic_last_post pour cela on //récupère l'id du plus récent message de ce topic $requete4 = mysql_query('SELECT post_id FROM forum_post WHERE topic_id = '.$topic.' ORDER BY post_id DESC LIMIT 0,1'); $data4 = mysql_fetch_assoc($requete4); //On fait de même pour forum_last_post_id $requete5 = mysql_query('SELECT post_id FROM forum_post WHERE post_forum_id = '.$forum.' ORDER BY post_id DESC LIMIT 0,1'); $data5 = mysql_fetch_assoc($requete5); //On met à jour la valeur de topic_last_post mysql_query("UPDATE forum_topic SET topic_last_post = '".$data4['post_id']."' WHERE topic_last_post = '".$post."'"); //On enlève 1 au nombre de messages du forum et on met à //jour forum_last_post mysql_query("UPDATE forum_forum SET forum_post = forum_post - 1, forum_last_post_id = '".$data5['post_id']."' WHERE forum_id ='".$forum."'"); //On enlève 1 au nombre de messages du topic mysql_query("UPDATE forum_topic SET topic_post = topic_post - 1 WHERE topic_id ='".$topic."'"); //On enlève 1 au nombre de messages du membre mysql_query("UPDATE forum_membres SET membre_post = membre_post - 1 WHERE membre_id ='".$data1['post_createur']."'"); //Enfin le message echo'<h2>Le message a bien été supprimé ! <br /> Cliquez <a href="./topicnum.php?t='.$topic.'">ici</a> pour retourner au topic<br /> Cliquez <a href="./index.php">ici</a> pour revenir à l index du forum</h2>'; } elseif ($last_post['last_post'] != 0 && $first_post['first_post'] != 0) // Si c'est un post classique { //On supprime le post mysql_query("DELETE FROM forum_post WHERE post_id = '".$post."'"); //On enlève 1 au nombre de messages du forum mysql_query("UPDATE forum_forum SET forum_post = forum_post - 1 WHERE forum_id ='".$forum."'"); //On enlève 1 au nombre de messages du topic mysql_query("UPDATE forum_topic SET topic_post = topic_post - 1 WHERE topic_id ='".$topic."'"); //On enlève 1 au nombre de messages du membre mysql_query("UPDATE forum_membres SET membre_post = membre_post - 1 WHERE membre_id ='".$data1['post_createur']."'"); //Enfin le message echo'<h2>Le message a bien été supprimé ! <br /> Cliquez <a href="./topicnum.php?t='.$topic.'">ici</a> pour retourner au topic<br /> Cliquez <a href="./index.php">ici</a> pour revenir à l index du forum</h2>'; } } break; la case deletetopic qui ne me supprime rien du tout :
Code : PHP case "delete_topic":
$topic = (int) $_GET['t']; $requete1 = mysql_query(' SELECT forum_topic.forum_id, auth_modo FROM forum_topic LEFT JOIN forum_forum ON forum_topic.forum_id = forum_forum.forum_id WHERE topic_id='.$topic.''); $data1 = mysql_fetch_assoc($requete1); $forum = $data1['forum_id']; //Ensuite on vérifie que le membre a le droit d'être ici c'est-à-dire si c'est un modo / admin if (!verif_auth($data1['auth_modo'])) { // Si cette condition n'est pas remplie ça va barder :o echo'Vous n\'avez aucun droit d\'être ici'; exit(); } else //Sinon ça roule et on continue { //On compte le nombre de post du topic $requete_count_post = mysql_query("SELECT COUNT(*) AS nombre_post FROM forum_post WHERE topic_id = '".$topic."'"); $data_nombrepost = mysql_fetch_assoc($requete_count_post); $nombrepost = $data_nombrepost['nombre_post']; //On supprime le topic mysql_query("DELETE FROM forum_topic WHERE topic_id = '".$topic."'"); //On enlève le nombre de post posté par chaque membre dans le topic $requete_postparmembre = mysql_query('SELECT post_createur, COUNT(*) AS nombre_mess FROM forum_post WHERE topic_id = '.$topic.' GROUP BY post_createur'); while($data_postparmembre = mysql_fetch_assoc($requete_postparmembre)) { mysql_query("UPDATE forum_membres SET membre_post = membre_post - '".$data_postparmembre['nombre_mess']."' WHERE membre_id = '".$data_postparmembre['post_createur']."'"); } //Et on supprime les posts ! mysql_query("DELETE FROM forum_post WHERE topic_id = '".$topic."'"); //Dernière chose, on récupère le dernier post du forum $requete_forum = mysql_query('SELECT post_id FROM forum_post WHERE post_forum_id = '.$forum.' ORDER BY post_id DESC LIMIT 0,1'); $data_forum = mysql_fetch_assoc($requete_forum); //Ensuite on modifie certaines valeurs : mysql_query("UPDATE forum_forum SET forum_topic = forum_topic - 1, forum_post = forum_post - '".$nombrepost."', forum_last_post_id = '".$data_forum['post_id']."' WHERE forum_id ='".$forum."'"); //Enfin le message echo'<h2>Le topic a bien été supprimé ! <br /> Cliquez <a href="./index.php">ici</a> pour revenir à l index du forum</h2>'; } break; default; echo'<h2>Cette action est impossible</h2>'; } } ?> // la fin de postertrt et tout ce qu'il y a avant ça dans la page postok (postertrt chez moi) : Code : PHP <?php
//Cette fonction doit être appelée avant tout code html session_start(); //On donne ensuite un titre à la page puis on appelle notre fichier debut.php $titre = "Poster"; include("includo/ledebut.php"); ?> <?php //Maintenant on se connecte à la base de donnée include("includo/identifiants.php"); mysql_connect($adresse, $nom, $motdepasse); mysql_select_db($database); //On récupère la valeur de la variable action $action = $_GET['action']; ?> <!-- INTRO ********************************************** --> <div id="intro"> <p id="news" class="introbox"><a href="#" class="jaune1">news !</a></p> <p id="staff" class="introbox"><a href="#" class="rose2">staff !</a></p> </div> <!--* CONTENT ********************************************** --> <div id="content"> <div id="corps_forum"> <?php if (!isset($_SESSION['pseudo'])) // Si le membre n'est pas connecté, il est arivé ici par erreur { echo'<h2>Erreur : Vous n êtes plus connecté, retourner vous conneter.</h2>'; } else //Sinon on lance la suite { switch($action) { case "repondremp": //Si on veut répondre //On passe le message et le titre dans une série de fonction $message = htmlspecialchars($_POST['message'], ENT_QUOTES); $message = nl2br($message); $titre = htmlspecialchars($_POST['titre'], ENT_QUOTES); $temps = time(); //On récupère la valeur de l'id du destinataire $dest = (int) $_GET['dest']; //Enfin on peut envoyer le message mysql_query("INSERT INTO forum_mp (mp_id, mp_expediteur, mp_receveur, mp_titre, mp_text, mp_time, mp_lu) VALUES (',', '".$_SESSION['id']."' , '".$dest."', '".$titre."', '".$message."', '".$temps."', '0')") or die ("Le message n'a pas pu être envoyé, veuillez réessayer"); echo'<h2>Votre message a bien été envoyé!</h2> <br /><h2>Cliquez <a href="./index.php">ici</a> pour revenir à l index du forum</h2> <br /><h2>Cliquez <a href="./messagesprives.php">ici</a> pour retourner à la messagerie</h2>'; break; case "nouveaump": //On envoie un nouveau mp //On passe le message et le titre dans une série de fonction $message = htmlspecialchars($_POST['message'], ENT_QUOTES); $message = nl2br($message); $titre = htmlspecialchars($_POST['titre'], ENT_QUOTES); $temps = time(); $dest = mysql_real_escape_string($_POST['to']); //On récupère la valeur de l'id du destinataire //Il faut déja vérifier le nom $requete = mysql_query('SELECT membre_id FROM forum_membres WHERE membre_pseudo = "'.$dest.'"'); if($data = mysql_fetch_assoc($requete)) { //Enfin on peut envoyer le message mysql_query("INSERT INTO forum_mp (mp_id, mp_expediteur, mp_receveur, mp_titre, mp_text, mp_time, mp_lu) VALUES (',', '".$_SESSION['id']."' , '".$data['membre_id']."', '".$titre."', '".$message."', '".$temps."', '0')") or die ("Le message n'a pas pu être envoyé, veuillez réessayer"); echo'<h2>Votre message a bien été envoyé!</h2> <br /><h2>Cliquez <a href="./index.php">ici</a> pour revenir à l index du forum</h2> <br /><h2>Cliquez <a href="./messagesprives.php">ici</a> pour retourner à la messagerie</h2>'; } //Sinon l'utilisateur n'existe pas ! else { echo'<h2> Désolé ce membre n existe pas, veuillez vérifier et réessayez à nouveau.</h2>'; } break; //Premier cas : nouveau topic case "nouveautopic": //On passe le message dans une série de fonction $message = htmlspecialchars($_POST['message'], ENT_QUOTES); $message = nl2br($message); //Pareil pour le titre $titre = htmlspecialchars($_POST['titre'], ENT_QUOTES); //ici seulement, maintenant qu'on est sur qu'elle existe, on récupère la valeur de la variable f $forum = $_GET['f']; $temps = time(); if (empty($_POST['message']) || empty($_POST['titre'])) { echo'<h2>Votre message ou votre titre est vide, cliquez <a href="./poster.php?action=nouveautopic&f='.$forum.'">ici</a> pour recommencer</h2>'; } else //Si jamais le message n'est pas vide { if (!verif_auth($data1['auth_annonce']) && isset($_POST['mess'])) { exit(); } //On entre le topic dans la base de donnée en laissant //le champ topic_last_post à 0 mysql_query("INSERT INTO forum_topic (forum_id, topic_titre, topic_createur, topic_vu, topic_time, topic_genre, topic_last_post, topic_post) VALUES('".$forum."', '".$titre."', '".$_SESSION['id']."', '1', '".$temps."','".$_POST['mess']."', '0', '0' )") or die ("Un problème est survenu lors de l'envoi du message"); $nouveautopic = mysql_insert_id(); //Puis on entre le message mysql_query("INSERT INTO forum_post (post_id, post_createur, post_texte, post_time, topic_id, post_forum_id) VALUES(',' ,'".$_SESSION['id']."', '".$message."', '".$temps."', '".$nouveautopic."', '".$forum."')") or die ("Un problème est survenu lors de l'envoi du message"); $nouveaupost = mysql_insert_id(); //Ici on update comme prévu la valeur de topic_last_post et de topic_first_post mysql_query("UPDATE forum_topic SET topic_last_post = '".$nouveaupost."', topic_first_post = '".$nouveaupost."' WHERE topic_id = '".$nouveautopic."'") or die ("Un problème est survenu lors de l'envoi du message"); //Enfin on met à jour les tables forum_forum et forum_membres mysql_query("UPDATE forum_forum SET forum_post = forum_post + 1 , forum_topic = forum_topic + 1, forum_last_post_id = '".$nouveaupost."' WHERE forum_id = '".$forum."'") or die ("Un problème est survenu lors de l'envoi du message"); mysql_query("UPDATE forum_membres SET membre_post = membre_post + 1 WHERE membre_id = '".$_SESSION['id']."'") or die ("Un problème est survenu lors de l'envoi du message"); //Et un petit message echo'<h2>Votre message a bien été ajouté!</h2><br><h2>Cliquez <a href="./index.php">ici</a> pour revenir à l index du forum</h2><br><h2>Cliquez <a href="./topicnum.php?t='.$nouveautopic.'">ici</a> pour le voir</h2>'; } break; //Houra ! //Deuxième cas : répondre case "repondre": //On passe le message dans une série de fonction $message = htmlspecialchars($_POST['message'], ENT_QUOTES); $message = nl2br($message); //ici seulement, maintenant qu'on est sur qu'elle existe, on récupère la valeur de la variable t $topic = $_GET['t']; $temps = time(); if (empty($_POST['message'])) { echo'<h2>Votre message est vide, cliquez <a href="./poster.php?action=repondre&t='.$topic.'">ici</a> pour recommencer</h2>'; } else //Sinon, si le message n'est pas vide { //On récupère l'id du forum $requete2 = mysql_query('SELECT forum_id FROM forum_topic WHERE topic_id = "'.$topic.'"'); $data2= mysql_fetch_assoc($requete2) or die ("Une erreur semble être survenue lors de l'envoi du message"); $forum = $data2['forum_id']; //Puis on entre le message mysql_query("INSERT INTO forum_post (post_id, post_createur, post_texte, post_time, topic_id, post_forum_id) VALUES(',' ,'".$_SESSION['id']."', '".$message."', '".$temps."', '".$topic."', '".$forum."')") or die ("Une erreur semble avoir survenu lors de l'envoi du message"); $nouveaupost = mysql_insert_id(); //On change un peu la table forum_topic mysql_query("UPDATE forum_topic SET topic_post = topic_post + 1, topic_last_post = '".$nouveaupost."' WHERE topic_id ='".$topic."'") or die ("Une erreur semble avoir survenu lors de l'envoi du message"); //Puis même combat sur les 2 autres tables mysql_query("UPDATE forum_forum SET forum_post = forum_post + 1 , forum_last_post_id = '".$nouveaupost."' WHERE forum_id = '".$forum."'") or die ("Une erreur semble avoir survenu lors de l'envoi du message"); mysql_query("UPDATE forum_membres SET membre_post = membre_post + 1 WHERE membre_id = '".$_SESSION['id']."'") or die ("Une erreur semble avoir survenu lors de l'envoi du message"); //Et un petit message echo'<h2>Votre message a bien été ajouté!</h2><br><h2>Cliquez <a href="./index.php">ici</a> pour revenir à l index du forum</h2><br><h2>Cliquez <a href="./topicnum.php?t='.$topic.'">ici</a> pour le voir</h2>'; } break; case "edit": //Si on veut éditer le post //On récupère la valeur de p $post = (int) $_GET['p']; //On parse le message $message = htmlspecialchars($_POST['message'], ENT_QUOTES); $message = nl2br($message); //Ensuite on vérifie que le membre a le droit d'être ici (soit le créateur soit un modo/admin) $requete2 = mysql_query(' SELECT post_createur, post_texte, topic_id, auth_modo FROM forum_post LEFT JOIN forum_forum ON forum_post.post_forum_id = forum_forum.forum_id WHERE post_id='.$post.''); $data2 = mysql_fetch_assoc($requete2); $topic = $data2['topic_id']; if (!verif_auth($data2['auth_modo'])&& $data2['post_createur'] != $_SESSION['id']) { // Si cette condition n'est pas remplie ça va barder :o echo'Vous n\'avez aucun droit d\'être ici'; exit(); } else //Sinon ça roule et on continue { mysql_query("UPDATE forum_post SET post_texte = '".$message."' WHERE post_id = '".$post."'"); echo'<h2>Le message a bien été modifié ! <br /> Cliquez <a href="./topicnum.php?t='.$topic.'">ici</a> pour revenir au topic <br /> Cliquez <a href="./index.php">ici</a> pour revenir à l\'index du forum</h2>'; } break; Bon si ça peu t'aider à trouver d'où vien mon erreur, merci et bon courage !
Édité
le 30/04/2007 à 10:54:33
par Black_Rock
|
||
Snipefire
|
# Posté le 30/04/2007 à 12:45:03 | ||
![]()
études : ESIEE Engineering Paris |
Remplace ça
Code : PHP case "delete": //Si on veut supprimer le post
//On récupère la valeur de p $post = (int) $_GET['p']; $requete1 = mysql_query(' SELECT post_createur, post_texte, forum_id, auth_modo FROM forum_post LEFT JOIN forum_forum ON forum_post.post_forum_id = forum_forum.forum_id WHERE post_id='.$post.''); $data1 = mysql_fetch_assoc($requete1); $topic = $data1['topic_id']; $forum = $data1['forum_id']; Par Code : PHP case "delete": //Si on veut supprimer le post
//On récupère la valeur de p $post = (int) $_GET['p']; $requete1 = mysql_query(' SELECT post_createur, post_texte, forum_id, topic_id, auth_modo FROM forum_post LEFT JOIN forum_forum ON forum_post.post_forum_id = forum_forum.forum_id WHERE post_id='.$post.''); $data1 = mysql_fetch_assoc($requete1); $topic = $data1['topic_id']; $forum = $data1['forum_id']; SI toujours aucun résultat, vérifie que tes variable sont bien transmises.. (avec un simple echo )
Édité
le 30/04/2007 à 12:45:40
par Snipefire
|
||
bougaloo
|
# Posté le 30/04/2007 à 13:47:28 | ||
|
peace&love
Ville : Boulogne sur mer |
bonjour , j'ai un tout petit probléme de compréhension , dans le tuto il y a une partie de modification des variables par le panneau admin pour tous ce qui est : post par page , ainsi que topic , et etc ...
j'aimerais savoir comment faire pour mettre en oeuvre le truc parce que j'ai rien vu qui dis comment !! j'ai essayé ainsi pour le nombre de post_par_page : Code : PHP $requete_config = mysql_query('SELECT config_valeur FROM forum_config WHERE config_nom="post_par_page" ''); $config = mysql_fetch_assoc($requete_config) J'ai mis ce code là mais aprés je n'arrive pas pour avoir le chiffre de la table !! quelqu'un aurait une solution ???? |
||
Black_Rock
|
# Posté le 30/04/2007 à 14:34:22 | ||
ZZzzzune !![]()
|
Citation : Snipefire
Remplace ça
Code : PHP case "delete": //Si on veut supprimer le post
//On récupère la valeur de p $post = (int) $_GET['p']; $requete1 = mysql_query(' SELECT post_createur, post_texte, forum_id, auth_modo FROM forum_post LEFT JOIN forum_forum ON forum_post.post_forum_id = forum_forum.forum_id WHERE post_id='.$post.''); $data1 = mysql_fetch_assoc($requete1); $topic = $data1['topic_id']; $forum = $data1['forum_id']; Par Code : PHP case "delete": //Si on veut supprimer le post
//On récupère la valeur de p $post = (int) $_GET['p']; $requete1 = mysql_query(' SELECT post_createur, post_texte, forum_id, topic_id, auth_modo FROM forum_post LEFT JOIN forum_forum ON forum_post.post_forum_id = forum_forum.forum_id WHERE post_id='.$post.''); $data1 = mysql_fetch_assoc($requete1); $topic = $data1['topic_id']; $forum = $data1['forum_id']; SI toujours aucun résultat, vérifie que tes variable sont bien transmises.. (avec un simple echo ) ![]() On y est presque ! merci
L'erreur c'est envolé, il est maintenant possible de supprimer un topic, et le dernier message de celui-ci. En revanche, impossible de supprimer la premiere réponse (quand il y a plusieurs réponses) et les réponses du milieux, seul la derniere réponse peut être éffacé.
Tu à une idée sur ce coup ci ?
j'ai l'erreur par défault qui s'affiche quand on veux supprimer un message et topic (quand on à le choix entre oui et non) : default; echo'<h2>Cette action est impossible</h2>'; |
||
kevindu59
|
# Posté le 30/04/2007 à 22:05:07 | ||
BIOS-> meilleur ami de l'homme![]()
Ville : Hem |
cool
![]() Code : C++
Clique ! |
||
bakuryu11
|
# Posté le 30/04/2007 à 22:10:31 | ||
http://ganaria.free.fr![]()
|
Bonsoir,
Voilà je fais un petit forum et je voudrais savoir comment on peut s'y prendre pour changer d'image quand il y a une réponse sur un sujet. Comme sur le sdz, il y a des boutons gris, et lorsque quelqu'un vous a répondu, c'est un bouton rouge. Mais je ne sais pas comment "dire" : quand il n'y a pas de réponse, je met telle image, et quand il y a une réponse, j'en met une autre. Pour info, je suis ce tuto, mais j'ai l'impression que l'auteur n'en fait pas allusion :
http://www.siteduzero.com/tuto-3-2549-0-creer-son-forum-de-toutes-pieces.html Merci d'avance pour vos réponses.
|
||
kickoff
|
# Posté le 01/05/2007 à 09:20:37 | ||
Encore une victoire de canard![]()
|
|||
Snipefire
|
# Posté le 01/05/2007 à 10:21:41 | ||
![]()
études : ESIEE Engineering Paris |
[ ce message j'essaye de le poster depuis hier 16h mais avec les bug sur le forum c'est dur
]
On y est presque ! merci
L'erreur c'est envolé, il est maintenant possible de supprimer un topic, et le dernier message de celui-ci. [ ce message j'essaye de le poster depuis 16h masi avec les bug sur le forum c'est dur Ben tu vois, pas besoin d'être aggressif
Pour ton nouveau problème (je trouve que ça fait beaucoup la )
Je regarde ça et j'édite si j'ai quelque chose à te proposer Citation : thebizare cool
![]() Quel est l'interet de ton intervention ?
|
||
suliac
|
# Posté le 01/05/2007 à 13:57:35 | ||
|
apprendre et retenir
|
Salut moi dans delete , je peux supprimer le premier post, le dernier mais pas ceux entre :s
Quand je suis sur cette page, cela ne m'affiche aucune erreur mais n'affiche également rien du tout. Voici le code correspondant : Code : PHP elseif ($last_post['last_post'] != 0 && $first_post['first_post'] != 0) // Si c'est un post classique
{ //On supprime le post mysql_query("DELETE FROM forum_post WHERE post_id = '".$post."'"); //On enlève 1 au nombre de messages du forum mysql_query("UPDATE forum_forum SET forum_post = forum_post - 1 WHERE forum_id ='".$forum."'"); //On enlève 1 au nombre de messages du topic mysql_query("UPDATE forum_topic SET topic_post = topic_post - 1 WHERE topic_id ='".$topic."'"); //On enlève 1 au nombre de messages du membre mysql_query("UPDATE membres SET membre_post = membre_post - 1 WHERE membre_id ='".$data1['post_createur']."'"); //Enfin le message echo'<h2>Le message a bien été supprimé ! <br /> Cliquez <a href="./voirtopic.php?t='.$topic.'">ici</a> pour retourner au topic<br /> Cliquez <a href="./index.php">ici</a> pour revenir à l index du forum</h2>'; } Merci à vous ! |
||
Black_Rock
|
# Posté le 01/05/2007 à 14:22:41 | ||
ZZzzzune !![]()
|
Citation : suliac
Salut moi dans delete , je peux supprimer le premier post, le dernier mais pas ceux entre :s
Quand je suis sur cette page, cela ne m'affiche aucune erreur mais n'affiche également rien du tout. Exactement le même problème que moi
Citation : Snipefire Pour ton nouveau problème (je trouve que ça fait beaucoup la )
Je regarde ça et j'édite si j'ai quelque chose à te proposer Merci snipefire, j'espère que cette fois-ci tu parviendra encore à trouver d'où vien le problème quand tu aura le temps
Je continu à chercher ... mais franchement je ne voie pas.
|
||
Snipefire
|
# Posté le 01/05/2007 à 15:29:07 | ||
![]()
études : ESIEE Engineering Paris |
Citation : Suliac
Salut moi dans delete , je peux supprimer le premier post, le dernier mais pas ceux entre :s
Cf ma réponse à Black_Rock Black_Rock je regarde pour toi dans la soirée (car la pas mal de taf) |
||
Tadzoa
|
# Posté le 01/05/2007 à 16:14:10 | ||
![]()
|
Pour revenir sur l'histoire du mot de passe :
- Non il ne faut pas le hasher pour l'envoyer au membre. - Ce qu'il faut hasher c'est le "code" du lien sur lequel tu vas envoyer le membre pour qu'il active son compte. J'avais cru comprendre que c'était toi qui choisissait le mot de passe à l'inscription et qu'après le membre devait le changer comme c'est le cas sur certains forums ![]() Foncez y ! Un site pour partager son savoir scientifique Je précise que je suis très peu disponible donc ne m'en voulez pas si je mets du temps à réagir aux MP |
||
Tristou
|
# Posté le 01/05/2007 à 16:44:17 | ||
Converti à Python![]()
|
Oui, enfin le mot de passe sera généré aléatoirement
Je vais faire ça donc
- I've been waiting for you, Obi-Wan. We meet again, at last. The circle is now complete. When I left you, I was but the learner; now I am the master. - Only a master of evil, Darth. |
||
Black_Rock
|
# Posté le 01/05/2007 à 20:18:32 | ||
ZZzzzune !![]()
|
Citation : Snipefire
Black_Rock je regarde pour toi dans la soirée (car la pas mal de taf) Ok merci, regarde quand tu aura le temps.
En tout cas je suis assez curieux de voir d'où vien le problème.
|
||
kickoff
|
# Posté le 01/05/2007 à 20:35:33 | ||
Encore une victoire de canard![]()
|
moi aussi j'ai un bug que je pose ici :
mon soucis sur la page poster black rock a déjà essayé de m'aider mais il n'a pas trouvé le problème "Tu es mon soleil et moi la Terre. Certes ma vie tourne autour de toi comme la Terre autour du soleil, mais sache que je sais aussi tourner sur moi même." By Kickoff ![]() ![]() ![]() ![]() |
||
bakuryu11
|
# Posté le 01/05/2007 à 21:00:46 | ||
http://ganaria.free.fr![]()
|
Salut tout le monde,
Je fais moi aussi mon forum grâce à ce superbe tuto mais je suis coincé au premier chapitre de la partie administration, et plus précisément sur la partie "faire un forum VIP". En effet, j'ai bien inclus ma fonction, j'ai rajouter les données dans ma base de données, etc. Or, une question se pose... Je n'ai pas de $_SESSION['level'] (je m'en suis pris autrement) et je voudrais savoir ce que représente la $_SESSION['level'] qui se trouve dans la fonction pour la remplacer par une variable qui sélectionne la donnée (que je cherche) dans ma base de données. Merci d'avance.
|
||
kickoff
|
# Posté le 01/05/2007 à 21:04:39 | ||
Encore une victoire de canard![]()
|
bah quand il se connecte on récupére son pseudo, son rang et son id qu'on met dans la variable S_SESSION
et après on récupére S_SESSION level quand on en a besoin "Tu es mon soleil et moi la Terre. Certes ma vie tourne autour de toi comme la Terre autour du soleil, mais sache que je sais aussi tourner sur moi même." By Kickoff ![]() ![]() ![]() ![]() |
||
bakuryu11
|
# Posté le 01/05/2007 à 21:09:51 | ||
http://ganaria.free.fr![]()
|
|||
Snipefire
|
# Posté le 01/05/2007 à 21:22:45 | ||
![]()
études : ESIEE Engineering Paris |
Citation : kickoff
bah quand il se connecte on récupére son pseudo, son rang et son id qu'on met dans la variable S_SESSION
et après on récupére S_SESSION level quand on en a besoin PAs clair ta réponse
En fait $_SESSION['level'] Contient une valeur comprise entre 0 et 5 (exemple). Et dont cette valeur correspond au niveau d'acces à ton forum. Je m'explique. 0 => Visiteur 1 => Membre 2 => Vip 3 => Moderateur 4 => ... 5 => Admin ... Donc la variable session permet de connaitre a tout moment le niveau d'acces du visiteur. |
||
kickoff
|
# Posté le 01/05/2007 à 21:24:36 | ||
Encore une victoire de canard![]()
|
|||
Snipefire
|
# Posté le 01/05/2007 à 21:33:02 | ||
![]()
études : ESIEE Engineering Paris |
Citation : bakuryu11
Oui mais justement j'avais déjà un code d'inscription, de connexion et d'espace membres donc j'ai gardé le mien.
Mais si je t'ai bien compris la $_SESSION['level'] est l'équivalent de la donnée contenue dans "membre_rang" dans la table "forum_membres" ? Exactement EDIT : désolé d'avoir répété ce qu'avait dit kickoff mais j'avais laissé mon message en suspens pendant quelques minutes et je n'avais donc pas vu qu'une nouvelle réponse avait été posté
Édité
le 01/05/2007 à 21:35:54
par Snipefire
|
||
bakuryu11
|
# Posté le 01/05/2007 à 21:37:33 | ||
http://ganaria.free.fr![]()
|
Maintenant mon problème c'est cette condition car elle me retourne, à chaque fois, cet exit.
Code : PHP if (!verif_auth($data1['auth_view']))
{ exit("Vous n avez pas le droit de vous trouver ici ! (sale gosse :p )"); } Mon "membre_rang" est pourtant égal à 2 (donc membre ).
|
||
Retour au forum "PHP" ou à la liste des forums
Le Site du Zéro vous proposera bientôt de nouveaux cours partant de Zéro dans d'autres domaines que l'informatique !

