Function supprimer_message
Fermé
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
-
Modifié par Zakarya93 le 9/07/2015 à 00:48
Zakarya93 Messages postés 984 Date d'inscription lundi 27 avril 2015 Statut Membre Dernière intervention 18 décembre 2020 - 15 juil. 2015 à 01:54
Zakarya93 Messages postés 984 Date d'inscription lundi 27 avril 2015 Statut Membre Dernière intervention 18 décembre 2020 - 15 juil. 2015 à 01:54
A voir également:
- Function supprimer_message
- Unable to load function ft_thunk (kernel32.dll) ✓ - Forum Jeux vidéo
- Call to undefined function mysql_error() - Forum Programmation
- (Function(){css.removeclass(document.body,%20'profile_two_columns'); tab_controller.changepage("photos");})() ✓ - Forum Facebook
- Call to undefined function mime_content_type() ✓ - Forum PHP
- Remove is not a function ✓ - Forum Javascript
7 réponses
phenetas
Messages postés
1108
Date d'inscription
mercredi 25 juillet 2007
Statut
Membre
Dernière intervention
31 août 2017
225
9 juil. 2015 à 00:37
9 juil. 2015 à 00:37
Quel est le message d'erreur ? On ne va pas passer 5 minutes a lire ton code si un message d'erreur peut nous éclairer en 5 secondes ;)
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
Modifié par Zakarya93 le 9/07/2015 à 03:22
Modifié par Zakarya93 le 9/07/2015 à 03:22
<?php //la function qui va supprimer le message function supprimer_message(){ global $bdd; //récupération des variables PROPREMENT ! $pseudo_exp = isset($_SESSION['pseudo'])?$_SESSION['pseudo']:NULL; $result=0; if($pseudo_exp && $pseudo_dest){ $sql = "DELETE FROM conversations_messages WHERE (pseudo_exp = :session_pseudo)"; // je place les params dans une variable avant de l'utiliser : $params = array('session_pseudo' => $pseudo_exp , 'get_pseudo' => $pseudo_dest) ; $query = $bdd->prepare($sql); $query ->execute($params); $requete = $query->fetchall(); } } ?>
modifications...
lorsque j'applique cette requête :
DELETE FROM conversations_messages WHERE (pseudo_exp = 'jean')
les messages sont bien tous effacés, mais meme appliqués au code cela ne marche pas :/
Quelles modifications faut-il appliquer à ce code ? (conversations.php)
<?php include('functions/membre.func.php'); include('body/header.php'); include('body/menu.php'); ?> <h3>Les conversations</h3> <?php $conversations = recup_conversation(); if($conversations == true) { foreach($conversations as $conversation) { ?> <div class='conversation'> <a href="index.php?page=profile&pseudo=<?php echo $conversation['pseudo']; ?>"><?php echo $conversation['pseudo']; ?></a><br /> <IMG src='avatar/<?php echo $conversation['avatar']; ?>' height='70' width='70'></IMG> <p><a href="index.php?page=message&id=<?php echo $conversation['id_conversation']; ?>"> <?php echo $conversation['sujet_conversation']; ?></a></p> <p>Posté le : <?php echo date('d/m/Y à H:i:s',strtotime($conversation['date_message'])); ?></p> <p><a href="index.php?page=supprimer_message">Supprimer le message</a></p> </div> <?php } }else{ ?> <div class'error'>Vous n'avez pas de message</div> <?php } ?>
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
9 juil. 2015 à 04:33
9 juil. 2015 à 04:33
$result=0; if($pseudo_exp && $pseudo_dest){
2 erreurs ici aussi
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
10 juil. 2015 à 19:04
10 juil. 2015 à 19:04
Ma requête en soit marche mais pas sur mon code comment expliquer cela ??
jordane45
Messages postés
38310
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 novembre 2024
4 705
11 juil. 2015 à 00:11
11 juil. 2015 à 00:11
Déjà... dans ton IF .. tu as deux variables ... alors que tu n'en utilises qu'une seule...
ça ne te choque pas ????
Vu que tu n'utilises "que" $pseudo_exp ... pourquoi dans ton IF avoir également $pseudo_dest ???
Idem dans ton params ..
Si tu avais pris le soins de mettre un bloc TRY CATCH comme je te l'ai fait dans tes autres codes... tu aurais vu des messages d'erreur te permettant de trouver la cause de tes problèmes !!!!
ça ne te choque pas ????
$pseudo_exp = isset($_SESSION['pseudo'])?$_SESSION['pseudo']:NULL; if($pseudo_exp && $pseudo_dest){
Vu que tu n'utilises "que" $pseudo_exp ... pourquoi dans ton IF avoir également $pseudo_dest ???
Idem dans ton params ..
// je place les params dans une variable avant de l'utiliser : $params = array('session_pseudo' => $pseudo_exp , 'get_pseudo' => $pseudo_dest) ;
Si tu avais pris le soins de mettre un bloc TRY CATCH comme je te l'ai fait dans tes autres codes... tu aurais vu des messages d'erreur te permettant de trouver la cause de tes problèmes !!!!
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
>
jordane45
Messages postés
38310
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 novembre 2024
Modifié par Zakarya93 le 11/07/2015 à 03:10
Modifié par Zakarya93 le 11/07/2015 à 03:10
c'est ce que j'ai dis plus haut, j'utilise actuellement ce code mais il ne marche pas (desolé pour ce manque de précision) :
<?php //la function qui va supprimer le message function supprimer_message(){ global $bdd; //récupération des variables PROPREMENT ! $pseudo_exp = isset($_SESSION['pseudo'])?$_SESSION['pseudo']:NULL; if($pseudo_exp){ $sql = "DELETE FROM conversations_messages WHERE (pseudo_exp = :session_pseudo)"; // je place les params dans une variable avant de l'utiliser : $params = array('session_pseudo' => $pseudo_exp) ; $query = $bdd->prepare($sql); $query ->execute($params); $requete = $query->fetchall(); } } ?>
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
>
jordane45
Messages postés
38310
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 novembre 2024
11 juil. 2015 à 18:10
11 juil. 2015 à 18:10
<?php //la function qui va supprimer l'invitation function supprimer_invitation() { global $bdd; //récupération des variables PROPREMENT ! $pseudo_exp = isset($_SESSION['pseudo'])?$_SESSION['pseudo']:NULL; $pseudo_dest = isset($_GET['pseudo'])?$_GET['pseudo']:NULL; $result=0; if($pseudo_exp && $pseudo_dest){ $sql = "DELETE FROM amis WHERE (pseudo_exp = :session_pseudo AND pseudo_dest = :get_pseudo)"; // je place les params dans une variable avant de l'utiliser : $params = array('session_pseudo' => $pseudo_exp , 'get_pseudo' => $pseudo_dest); try{ $query = $bdd->prepare($sql); $query ->execute($params); $return = 1; }catch(Exception $e) { echo "<br>".$e->getMessage()."<br>"; echo "<br>params : <br>"; print_r($params); } } return $return; }
je ne detecte pas d'erreurs malgré le try catch
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
11 juil. 2015 à 21:26
11 juil. 2015 à 21:26
<?php //la function qui va supprimer le message function supprimer_message(){ global $bdd; //récupération des variables PROPREMENT ! $pseudo_exp = isset($_SESSION['pseudo'])?$_SESSION['pseudo']:NULL; if($pseudo_exp){ $sql = "DELETE FROM conversations_messages WHERE (pseudo_exp = :session_pseudo)"; // je place les params dans une variable avant de l'utiliser : $params = array('session_pseudo' => $pseudo_exp) ; try{ $query = $bdd->prepare($sql); $query ->execute($params); $return = 1; }catch(Exception $e) { echo "<br>".$e->getMessage()."<br>"; echo "<br>params : <br>"; print_r($params); } } return $return; }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
11 juil. 2015 à 21:54
11 juil. 2015 à 21:54
Je crois avoir trouvé l'erreur :
à changer en
je pourrais testé lorsque mon problème de bdd sera out
<p><a href="index.php?page=supprimer_message">Supprimer le message</a></p>
à changer en
<p><a href="index.php?page=conversations.php">Supprimer le message</a></p>
je pourrais testé lorsque mon problème de bdd sera out
jordane45
Messages postés
38310
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 novembre 2024
4 705
Modifié par jordane45 le 12/07/2015 à 02:02
Modifié par jordane45 le 12/07/2015 à 02:02
Bonsoir,
L'autre problème qui va se poser avec ton code actuel
(celui de ta fonction function supprimer_message ) ... c'est que la... tu va virer TOUS les messages échanges entre les deux personnes..... pas seulement LE message sélectionné !
A la limite... il faudrait modifier ton lien comme ceci je pense :
Ensuite.. dans le code de ta page : supprimer_message
Et enfin... ta fonction de suppression :
Cordialement,
Jordane
L'autre problème qui va se poser avec ton code actuel
(celui de ta fonction function supprimer_message ) ... c'est que la... tu va virer TOUS les messages échanges entre les deux personnes..... pas seulement LE message sélectionné !
A la limite... il faudrait modifier ton lien comme ceci je pense :
foreach($conversations as $conversation) { ?> <div class='conversation'> <a href="index.php?page=profile&pseudo=<?php echo $conversation['pseudo']; ?>"><?php echo $conversation['pseudo']; ?></a><br /> <IMG src='avatar/<?php echo $conversation['avatar']; ?>' height='70' width='70'></IMG> <p><a href="index.php?page=message&id=<?php echo $conversation['id_conversation']; ?>"> <?php echo $conversation['sujet_conversation']; ?></a></p> <p>Posté le : $date</p> <p><a href="index.php?page=supprimer_message&id=<?php echo $conversation['id_conversation']; ?>">Supprimer le message</a></p> </div> <?php }
Ensuite.. dans le code de ta page : supprimer_message
<?php // Page : supprimer_message.php // récupération de l'ID du message à supprimer $id_message = !empty($_GET['id']) ? $_GET['id'] : NULL; if($id_message) { supprimer_message(id_message); // Le temps des tests.. on desactive la redirection // ça permettra de voir les éventuelles erreur des blocs // try / catch car sinon.. on ne les vois pas !!! // header("Location:index.php?page=conversations"); }else{ echo "<br> Erreur : No ID ! "; } ?>
Et enfin... ta fonction de suppression :
<?php //la function qui va supprimer le message function supprimer_message($id_message){ global $bdd; $sql = "DELETE FROM conversations_messages WHERE id_conversation= :id"; // je place les params dans une variable avant de l'utiliser : $params = array(':id' => $id_message) ; try{ $query = $bdd->prepare($sql); $query ->execute($params); }catch(Exception $e) { echo "<br>".$e->getMessage()."<br>"; echo "<br>params : <br>"; print_r($params); } } ?>
Cordialement,
Jordane
jordane45
Messages postés
38310
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 novembre 2024
4 705
Modifié par jordane45 le 12/07/2015 à 02:04
Modifié par jordane45 le 12/07/2015 à 02:04
enfin... là .... ça va supprimer TOUS les message d'une conversation donnée......
Si tu ne veux supprimer qu'un seul message de la conversation.. il ne faudra pas taper sur le champ id_conversations .... mais id (tout court... si tu as bien refais tes tables comme je te l'avais dis )
Si tu ne veux supprimer qu'un seul message de la conversation.. il ne faudra pas taper sur le champ id_conversations .... mais id (tout court... si tu as bien refais tes tables comme je te l'avais dis )
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
12 juil. 2015 à 04:21
12 juil. 2015 à 04:21
Merci pour votre retour :)
Constats :
- j'ai un "Posté le : $date" qui s'affiche, la date a disparu
- j'ai : Notice: Use of undefined constant id_message - assumed 'id_message' in C:\wamp\www\rs\pages\supprimer_message.php on line 8
Constats :
- j'ai un "Posté le : $date" qui s'affiche, la date a disparu
- j'ai : Notice: Use of undefined constant id_message - assumed 'id_message' in C:\wamp\www\rs\pages\supprimer_message.php on line 8
jordane45
Messages postés
38310
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 novembre 2024
4 705
12 juil. 2015 à 11:20
12 juil. 2015 à 11:20
Il manque le $
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
13 juil. 2015 à 21:31
13 juil. 2015 à 21:31
Rien ne se produit, la page charge mais plus rien
jordane45
Messages postés
38310
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 novembre 2024
4 705
14 juil. 2015 à 00:05
14 juil. 2015 à 00:05
La page se charge .....; LAQUELLE DE PAGE ?????
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
>
jordane45
Messages postés
38310
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 novembre 2024
14 juil. 2015 à 00:17
14 juil. 2015 à 00:17
conversations.php :
<?php include('functions/membre.func.php'); include('body/header.php'); include('body/menu.php'); ?> <h3>Les conversations</h3> <?php $conversations = recup_conversation(); if($conversations == true) { foreach($conversations as $conversation) { ?> <div class='conversation'> <a href="index.php?page=profile&pseudo=<?php echo $conversation['pseudo']; ?>"><?php echo $conversation['pseudo']; ?></a><br /> <IMG src='avatar/<?php echo $conversation['avatar']; ?>' height='70' width='70'></IMG> <p><a href="index.php?page=message&id=<?php echo $conversation['id'] ?>"> <?php echo $conversation['sujet']; ?></a></p> <p>Posté le : <?php echo $conversation['date_message']; ?></p> <p><a href="index.php?page=conversations&id=<?php echo $conversation['id']; ?>">Supprimer le message</a></p> </div> <?php } }else{ ?> <div class'error'>Vous n'avez pas de message</div> <?php } ?>
jordane45
Messages postés
38310
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 novembre 2024
4 705
14 juil. 2015 à 00:38
14 juil. 2015 à 00:38
Et quand tu cliques sue supprimer ?
Et quand tu dis que rien ne se passe.... c'est à dire ???
Et quand tu dis que rien ne se passe.... c'est à dire ???
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
>
jordane45
Messages postés
38310
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 novembre 2024
14 juil. 2015 à 00:46
14 juil. 2015 à 00:46
eh bien le message ne disparait pas, la page reste telle qu'elle est
jordane45
Messages postés
38310
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 novembre 2024
4 705
14 juil. 2015 à 00:50
14 juil. 2015 à 00:50
Pourquoi utilises tu la page : page=conversations ... au lieu, de ce que je t'avais indiqué .... supprimer_message ??
9 juil. 2015 à 00:38