voila la réponse :alors je pense que ça viens de l'id mais pourquoi et comment ?Code:DELETE FROM message WHERE id_des="2" AND id="ça va"
et pourquoi ça me marque le message lui meme au lieu de l'id :?
Version imprimable
voila la réponse :alors je pense que ça viens de l'id mais pourquoi et comment ?Code:DELETE FROM message WHERE id_des="2" AND id="ça va"
et pourquoi ça me marque le message lui meme au lieu de l'id :?
regarde dans ton fichier lire.php
cette ligne n´est pas bonne :
tu mets des ',' au lieu des '.',Code:
1
2 echo '<br /><br /><a href="supprimer.php?id=' , $_GET['id'] , '">Supprimer ce message</a>';
changes et met comme ceci voir:
et regarde quel ID devrait- il afficher?Code:
1
2 echo '<br /><br /><a href="supprimer.php?id='.$_GET['id'].'">Supprimer ce message</a>';
cela ne change rien ! il devrais t'afficher l'id du message mais pas le message si ? excuse je suis encore nouveau en prog mais ça me plais tellement :)
ta syntaxe avec les virgules était correcte, cela ne pouvait donc rien changer... désolé mais la seule façon de résoudre le problème est de suivre l'évolution des valeurs de ta variable, pour répérer à quel moment elle passe de l'Id au contenu de ton message.
Si tu le trouves mais que tu ne parviens pas à résoudre le problème, poste tjrs cette partie de code.
je pense que cela commence içi mais je vois pas pourquoi ça s'embrouille les pinceaux:mur:Code:
1
2
3
4 // si on a des messages, on affiche la date, un lien vers la page lire.php ainsi que le titre et l'auteur du message while ($data = mysql_fetch_array($req)) { echo $data['dt'] , ' - <a href="lire.php?id=' , $data['id'] , '">' , stripslashes(htmlentities(trim($data['titre']))) , '</a>[ Message de ' , stripslashes(htmlentities(trim($data['id_exp']))) , ' ]<br />'; }
Ce code-la provient d'une aute page, donc tu transmets aussi une valeur erronée à ta page lire.php.. si j'ai bien compris...
et tu penses que la valeur change à cet endroit ou tu en es sûr.. as-tu fais les echo??
je le pense seulement j'en suis pas vraiment sur en faisant les echo voila ce que me retourne la page membre :SELECT titre, dt, inscri.pseudo as id_exp, message as id FROM message, inscri WHERE id_des="2" AND id_exp=inscri.id ORDER BY dt DESC et la page lire :SELECT titre, dt, message, inscri.pseudo as id_exp FROM message, inscri WHERE id_des='2' AND id_exp=inscri.id AND message='ça va'
Dans ta requête tu mets:
$data['Id'] contient donc le message ;)Code:SELECT message as id
ok ok je regarde et te tiens au courant ! :D faut il que je le supprime ou que je le modifie ???
j'ai essayé de l'enlever mais il n'a plus rien ça me reconnais plus le message
non tu ne l'enlèves pas tu mets qlque chose comme ça:
Code:SELECT Message, Message_Id AS Id FROM Message ....
tu sélectionnes le message et son identifiant.
est ce qu´il est possible d´avoir la structure de tes tables message et incri?
la je pourrais te dire quelque chose de clair
en faisant comme tu m'a dis cela ne change rien , je vais plancher dessus car a mon avis dois y'avoir un autre souçi mais c'est galere ! enfin je te remerçie beaucoup de m'aider ! :)
alors pour la table inscriet pour messageCitation:
id bigint(20) Non auto_increment
pseudo varchar(50) latin1_swedish_ci Non
password varchar(50) latin1_swedish_ci Non
email varchar(50) latin1_swedish_ci Non
date int(10) Non 0
actif enum('0', '1') latin1_swedish_ci Non 0
clef varchar(8) latin1_swedish_ci Non
nat varchar(50) latin1_swedish_ci Non
région varchar(50) latin1_swedish_ci Non
dep varchar(50) latin1_swedish_ci Non
ville varchar(50) latin1_swedish_ci Non
sexe varchar(50) latin1_swedish_ci Non
age int(4) Non 0
taille int(4) Non 0
poids int(4) Non 0
cheveux varchar(50) latin1_swedish_ci Non
yeux varchar(50) latin1_swedish_ci Non
pour varchar(50) latin1_swedish_ci Non
annonces varchar(255) latin1_swedish_ci Non
avatar text
Citation:
Champ Type Interclassement Attributs Null Défaut Extra Action
id int(11) Non auto_increment
id_exp int(11) Non 0
id_des int(11) Non 0
dt datetime Non 0000-00-00 00:00:00
titre text latin1_swedish_ci Non
ok je vois:
dans ton fichier lire.php
remplace ton sql par celui-ci :
et le code qui suit par celui-ci :Code:
1
2
3 $sql = "SELECT titre, dt, message, message.id as mes_ID, inscri.pseudo as id_exp FROM message, inscri WHERE id_des='".$_COOKIE['id']."' AND id_exp=inscri.id AND message='".$_GET['id']."' "; // on lance cette requete SQL à MySQL
les changements sont en bleu.Code:
1
2
3
4
5
6
7
8
9
10
11
12
13 if ($nb == 0) { echo 'Aucun message reconnu.'; } else { // si le message a été trouvé, on l'affiche $data = mysql_fetch_array($req); echo $data['dt'] , ' - ' , stripslashes(htmlentities(trim($data['titre']))) , '</a> [ Message de ' , stripslashes(htmlentities(trim($data['exp']))) , ' ]<br /><br />'; echo nl2br(stripslashes(htmlentities(trim($data['message'])))); // on affiche également un lien permettant de supprimer ce message de la boite de réception echo '<br /><br /><a href="supprimer.php?id='.$data['mes_ID'].'">Supprimer ce message</a>'; }
essaie voir et fait signe.
alors apparement cela fonctionne mais par contre cela me met aucun message reconnu donc il ne trouve pas le message voici ce que me retourne echoCitation:
Aucun message reconnu.SELECT titre, dt, message,message.id as mes_id, inscri.pseudo as id_exp FROM message, inscri WHERE id_des='2' AND id_exp=inscri.id AND message='1'
c'est ok ça fonctionne ! mais il me reste encore ma page supprimer.php qui déconne :evilred:enfin je vais regarder ! merçi a vous c'est super :king: