Lien "retirer de votre liste amis" a disparu et confusion profil

[Résolu/Fermé]
Signaler
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
-
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
-
Bonjour,

Avant d'attaquer la messagerie (ce qui va clore mon site) :

1/ Mon lien pour retirer un amis de ma liste a disparu... et quand je vais dans liste_membre et que je clique sur le profil de "jean" je vois qu'il a les mêmes données que mon compte "xzak47" (à savoir l'email, àpropos et le sexe)...voici le code concerné :
<?php
//-----------------------------
 //Profile.php 
//-----------------------------

include_once('body/header.php');
include_once('body/menu.php');

$pseudo = isset($_GET['pseudo'])?$_GET['pseudo']:NULL;
$arr_infos = recuperer_info_membre_choisi($pseudo);
$accepter_demande = accepter_demande();
$demande_existe = demande_existe();
$verifier_expediteur = verifier_expediteur();

 if(count($arr_infos)>0 && $pseudo != $_SESSION['pseudo']){

  foreach($arr_infos as $R) {
  if($demande_existe == 0){
     echo "<div class='error'>
           Vous n'êtes pas ami(e) avec ".$R['pseudo']."<br />
          <a href='index.php?page=envoi&pseudo=".$R['pseudo']."'>Envoyer une invitation</a>
        </div>";  
    }else if( $accepter_demande == 0 && $verifier_expediteur == 1){    
     echo "<div class='success'>Demande envoyée 
     <a href='index.php?page=annuler&pseudo=".$R['pseudo']."'>Annuler la demande</a></div>";   
   }else if($accepter_demande == 0 && $verifier_expediteur == 0){
        echo "<div class='success'>Demande en cours<br />
      Verifiez vos invitations
      </div>";     
     }
     echo ">a href'>Envoyer un message</a></p>" 
     echo"<img src='avatar/". $R['avatar']."' height='200' width='200' alt='avatar'>";
     echo "<p><strong>Email : </strong><em>".$R['email']."</em></p>";
     echo "<p><strong>Sexe : </strong><em>".$R['sexe']."</em></p>";
     echo "<p><strong>A propos de vous : </strong><em>".$R['apropos']."</em></p><br /><br />";

if( $accepter_demande == 1 && $verifier_expediteur == 1){
  echo "<a href='index.php?page=supprimer_amis&pseudo=". $R['pseudo']."' class='error'> Retirer ".$R['pseudo']." de votre liste d'amis</a>";
}
  
  }//fin du foreach  
 }else{
  header("Location:index.php?page=membre"); 
 }
 echo "</div>";
?>


2/ J'ai cette erreur : Parse error: syntax error, unexpected 'echo' (T_ECHO), expecting ',' or ';' in C:\wamp\www\rs\pages\profile.php on line 32

Merci encore ;)

19 réponses

Messages postés
14821
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
18 septembre 2021
300
Pour le 2, en général, regardes la ligne juste avant, tu trouvera l'erreur.
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
Merci, j'ai : >a href'>Envoyer un message
qui s'affiche :(
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
Je viens de remarquer que quand je vais dans liste_membre et que je clique sur le profil de "jean" je vois qu'il a les mêmes données que mon compte "xzak47" (à savoir l'email, àpropos et le sexe)
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725
Ligne 31
Manque un ;
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
c'est rajouté ^^ mais plus haut j'ai dit que j'ai : >a href'>Envoyer un message
qui s'affiche :(
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725
Ligne 31 ..tu as inversé le > .. devant le premier a
il faut
 <a href ...   
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
j'ai mtn un "Envoyer un message" mais je ne peux pas cliquer dessus
Messages postés
14821
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
18 septembre 2021
300
Regardes le code généré, cela te donnera sûrement une explication.
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725

j'ai mtn un "Envoyer un message" mais je ne peux pas cliquer dessus

Et tu penses que sans voir le code "modifié" .. nous allons pouvoir deviner où se trouve le souci ???

Il faut
1 - Que tu regardes le code généré (celui affiché par ton navigateur.. clic droit.. afficher la source)
2 - Que tu nous montres le code PHP corrigé

NB: Pour qu'un lien fonctionne... il faut qu'il soit correctement écrit !
A savoir :
 echo "<a href='index.php?page=envoyer&pseudo=".$R['pseudo']."'>Envoyer un message</a></p>";

=> Je suis parti du principe où tu avais une page nommée : envoyer.php.

Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9 >
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015

sachant que le code mysl_ est celui ci :
<?php
 
function refuser_invitation()
{
global $bdd;
$query = $bdd->prepare("DELETE FROM amis WHERE pseudo_exp = :get_pseudo AND pseudo_dest = :session_pseudo");
$query->execute(array('get_pseudo' => $_GET['pseudo'], 'session_pseudo' => $_SESSION['pseudo']));
 
}
 
?>
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9 >
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015

j'ai fais ça c bon ? :
<?php 
//la function qui va refuser l'invitation
function refuser_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;

 $return = 0;
 if($pseudo_dest && $pseudo_exp){
  $sql = "DELETE FROM amis
                 WHERE pseudo_exp = :get_pseudo
         AND pseudo_dest = :session_pseudo";

  // je place les  params dans une variable avant de l'utiliser :
  $params = array(':session_pseudo' =>$pseudo_session , ':get_pseudo' => $pseudo_get );
 
    try{
     $query = $bdd->prepare($sql);
     $query ->execute($params);  
     $etatDemande = checkActive($pseudo_session,$pseudo_get );
    // echo " <br> La demande est maintenant = ".$etatDemande;
     $return = $etatDemande;
  }catch(Exception $e) {
     echo "<br>ERREUR ! ".$e->getMessage()."<br>";
   echo "<br>params : <br>";
   print_r($params);
  }
 }
 return $return;
}

/**
* Verifie l'état d'une demande
*/
function checkActive($pseudo_dest,$pseudo_exp ) {
global $bdd;
$return = -1;

$sql =        "DELETE FROM amis
                 WHERE pseudo_exp = :get_pseudo
         AND pseudo_dest = :session_pseudo";

      // je place les  params dans une variable avant de l'utiliser :
  $params = array(':pseudo_dest' =>$pseudo_dest , ':pseudo_exp' => $pseudo_exp );
 
  try{
     $query = $bdd->prepare($sql);
     $query ->execute($params);  
   $result = $query->fetchall();
   $return = count($result)>0 ? $result[0]['active']:-1;
  }catch(Exception $e) {
     echo "<br>ERREUR ! ".$e->getMessage()."<br>";
     echo "<br>params : <br>";
     print_r($params);
  }
 
 return $return;
}
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
23
Non, ce n'est pas bon car ces variables ne sont pas définies !

$params = array(':session_pseudo' =>$pseudo_session , ':get_pseudo' => $pseudo_get );
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
23
corrige

//récupération des variables PROPREMENT !
  $pseudo_exp = isset($_SESSION['pseudo'])?$_SESSION['pseudo']:NULL;
  $pseudo_dest = isset($_GET['pseudo'])?$_GET['pseudo']:NULL;


en

//récupération des variables PROPREMENT !
  $pseudo_session = isset($_SESSION['pseudo'])?$_SESSION['pseudo']:NULL;
  $pseudo_get = isset($_GET['pseudo'])?$_GET['pseudo']:NULL;
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
23
Et n'oublie pas de changer toutes les références aux variables $pseudo_exp et $pseudo_dest !
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
c bon comme ceci ?
<?php 
//la function qui va refuser l'invitation
function refuser_invitation() {
global $bdd;

  //récupération des variables PROPREMENT !
  $pseudo_session = isset($_SESSION['pseudo'])?$_SESSION['pseudo']:NULL;
  $pseudo_get = isset($_GET['pseudo'])?$_GET['pseudo']:NULL;

 $return = 0;
 if($pseudo_dest && $pseudo_exp){
  $sql = "DELETE FROM amis
                 WHERE pseudo_exp = :get_pseudo
         AND pseudo_dest = :session_pseudo";

  // je place les  params dans une variable avant de l'utiliser :
  $params = array(':session_pseudo' =>$pseudo_session , ':get_pseudo' => $pseudo_get );
 
    try{
     $query = $bdd->prepare($sql);
     $query ->execute($params);  
     $etatDemande = checkActive($pseudo_session,$pseudo_get );
    // echo " <br> La demande est maintenant = ".$etatDemande;
     $return = $etatDemande;
  }catch(Exception $e) {
     echo "<br>ERREUR ! ".$e->getMessage()."<br>";
   echo "<br>params : <br>";
   print_r($params);
  }
 }
 return $return;
}

/**
* Verifie l'état d'une demande
*/
function checkActive($pseudo_dest,$pseudo_exp ) {
global $bdd;
$return = -1;

$sql =        "DELETE FROM amis
                 WHERE pseudo_exp = :get_pseudo
         AND pseudo_dest = :session_pseudo";

      // je place les  params dans une variable avant de l'utiliser :
  $params = array(':pseudo_dest' =>$pseudo_dest , ':pseudo_exp' => $pseudo_exp );
 
  try{
     $query = $bdd->prepare($sql);
     $query ->execute($params);  
   $result = $query->fetchall();
   $return = count($result)>0 ? $result[0]['active']:-1;
  }catch(Exception $e) {
     echo "<br>ERREUR ! ".$e->getMessage()."<br>";
     echo "<br>params : <br>";
     print_r($params);
  }
 
 return $return;
}
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725
Relis ton code....
encore.. des variables différentes
  //récupération des variables PROPREMENT !
  $pseudo_session = isset($_SESSION['pseudo'])?$_SESSION['pseudo']:NULL;
  $pseudo_get = isset($_GET['pseudo'])?$_GET['pseudo']:NULL;


 if($pseudo_dest && $pseudo_exp){
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725 >
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021

Hormis ça.. le reste a l"air correct.
et puis...en même temps... il te suffit de tester pour savoir si c'est bon ou non...
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9 >
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021

ah merci :) j'ai testé mais jean refuse de sortir de ma liste d'amis et le lien reste malgré ça
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725 >
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020

... peux tu (normalement je ne devrais plus avoir à te le demander à chaque fois......) nous montrer ton code corrigé ?????
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
pardonnez-moi :
<?php 
//la function qui va refuser l'invitation
function refuser_invitation() {
global $bdd;

  //récupération des variables PROPREMENT !
  $pseudo_session = isset($_SESSION['pseudo'])?$_SESSION['pseudo']:NULL;
  $pseudo_get = isset($_GET['pseudo'])?$_GET['pseudo']:NULL;

 $return = 0;
 if($pseudo_get && $pseudo_session){
  $sql = "DELETE FROM amis
                 WHERE pseudo_exp = :get_pseudo
         AND pseudo_dest = :session_pseudo";

  // je place les  params dans une variable avant de l'utiliser :
  $params = array(':session_pseudo' =>$pseudo_session , ':get_pseudo' => $pseudo_get );
 
    try{
     $query = $bdd->prepare($sql);
     $query ->execute($params);  
     $etatDemande = checkActive($pseudo_session,$pseudo_get );
    // echo " <br> La demande est maintenant = ".$etatDemande;
     $return = $etatDemande;
  }catch(Exception $e) {
     echo "<br>ERREUR ! ".$e->getMessage()."<br>";
   echo "<br>params : <br>";
   print_r($params);
  }
 }
 return $return;
}

/**
* Verifie l'état d'une demande
*/
function checkActive($pseudo_session,$pseudo_get ) {
global $bdd;
$return = -1;

$sql =        "DELETE FROM amis
                 WHERE pseudo_exp = :get_pseudo
         AND pseudo_dest = :session_pseudo";

      // je place les  params dans une variable avant de l'utiliser :
  $params = array(':session_pseudo' =>$pseudo_session , ':get_pseudo' => $pseudo_get );
 
  try{
     $query = $bdd->prepare($sql);
     $query ->execute($params);  
   $result = $query->fetchall();
   $return = count($result)>0 ? $result[0]['active']:-1;
  }catch(Exception $e) {
     echo "<br>ERREUR ! ".$e->getMessage()."<br>";
     echo "<br>params : <br>";
     print_r($params);
  }
 
 return $return;
}
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725
Donc là .. quand tu lances ce code ... tu ,n'a pas de message d'erreur on est d'accord .?

Peux tu faire, dans ta BDD, un
SELECT *  FROM amis

Et nous montrer ce que ça te donne ?
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9 >
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021

http://www.noelshack.com/2015-26-1434929726-erreur2.jpg
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725
Par contre.. je viens de voir ..
Pourquoi as tu changé la fonction function checkActive($pseudo_session,$pseudo_get ) { ???
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9 >
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021

je l'ai remis :
<?php 
//la function qui va refuser l'invitation
function refuser_invitation() {
global $bdd;

  //récupération des variables PROPREMENT !
  $pseudo_session = isset($_SESSION['pseudo'])?$_SESSION['pseudo']:NULL;
  $pseudo_get = isset($_GET['pseudo'])?$_GET['pseudo']:NULL;

 $return = 0;
 if($pseudo_get && $pseudo_session){
  $sql = "DELETE FROM amis
                 WHERE pseudo_exp = :get_pseudo
         AND pseudo_dest = :session_pseudo";

  // je place les  params dans une variable avant de l'utiliser :
  $params = array(':session_pseudo' =>$pseudo_session , ':get_pseudo' => $pseudo_get );
 
    try{
     $query = $bdd->prepare($sql);
     $query ->execute($params);  
     $etatDemande = checkActive($pseudo_session,$pseudo_get );
    // echo " <br> La demande est maintenant = ".$etatDemande;
     $return = $etatDemande;
  }catch(Exception $e) {
     echo "<br>ERREUR ! ".$e->getMessage()."<br>";
   echo "<br>params : <br>";
   print_r($params);
  }
 }
 return $return;
}

/**
* Verifie l'état d'une demande
*/
function checkActive($pseudo_dest,$pseudo_exp ) {
global $bdd;
$return = -1;

$sql =        "DELETE FROM amis
                 WHERE pseudo_exp = :get_pseudo
         AND pseudo_dest = :session_pseudo";

      // je place les  params dans une variable avant de l'utiliser :
  $params = array(':session_pseudo' =>$pseudo_session , ':get_pseudo' => $pseudo_get );
 
  try{
     $query = $bdd->prepare($sql);
     $query ->execute($params);  
   $result = $query->fetchall();
   $return = count($result)>0 ? $result[0]['active']:-1;
  }catch(Exception $e) {
     echo "<br>ERREUR ! ".$e->getMessage()."<br>";
     echo "<br>params : <br>";
     print_r($params);
  }
 
 return $return;
}


j'ai : http://www.noelshack.com/2015-26-1434929726-erreur2.jpg
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725
De toutes façons .. ici .. tu ne devrais pas en avoir besoin !


remplaces tout ton code par :
<?php 
//la function qui va refuser l'invitation
function refuser_invitation() {
global $bdd;

  //récupération des variables PROPREMENT !
  $pseudo_session = isset($_SESSION['pseudo'])?$_SESSION['pseudo']:NULL;
  $pseudo_get = isset($_GET['pseudo'])?$_GET['pseudo']:NULL;

 $return = 0;
 if($pseudo_get && $pseudo_session){
  $sql = "DELETE FROM amis
                 WHERE pseudo_exp = :get_pseudo
         AND pseudo_dest = :session_pseudo";

  // je place les  params dans une variable avant de l'utiliser :
  $params = array(':session_pseudo' =>$pseudo_session , ':get_pseudo' => $pseudo_get );
 
    try{
     $query = $bdd->prepare($sql);
     $query ->execute($params);  
     $return = 1;
  }catch(Exception $e) {
     echo "<br>ERREUR ! ".$e->getMessage()."<br>";
   echo "<br>params : <br>";
   print_r($params);
  }
 }
 return $return;
}
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
c'est fait mais rien n'a changé, pareil pour la requete rien n'a changé
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725
Et ça :

<?php 
//la function qui va refuser l'invitation
function refuser_invitation() {
global $bdd;

  //récupération des variables PROPREMENT !
  $pseudo_session = isset($_SESSION['pseudo'])?$_SESSION['pseudo']:NULL;
  $pseudo_get = isset($_GET['pseudo'])?$_GET['pseudo']:NULL;

 $return = 0;
 if($pseudo_get && $pseudo_session){
  $sql = "DELETE FROM amis
                 WHERE pseudo_exp = :get_pseudo
         AND pseudo_dest = :session_pseudo";

  // je place les  params dans une variable avant de l'utiliser :
  $params = array(':session_pseudo' =>$pseudo_session , ':get_pseudo' => $pseudo_get );
 
  eho "<br> le temps des tests :";
   echo "<br>params : <br>";
   print_r($params);
   echo "<br>je suis connecté avec : ".$pseudo_session ;
  echo "<br>je veux supprimer  : ". $pseudo_get ;


    try{
     $query = $bdd->prepare($sql);
     $query ->execute($params);  
     $return = 1;
  }catch(Exception $e) {
     echo "<br>ERREUR ! ".$e->getMessage()."<br>";
   echo "<br>params : <br>";
   print_r($params);
  }
 }else{
   echo "<br> ERREUR ! Variables vides !";
 } 
 return $return;
}



Cordialement,
Jordane
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
j'ai : Parse error: syntax error, unexpected '"<br> le temps des tests :"' (T_CONSTANT_ENCAPSED_STRING) in C:\wamp\www\rs\functions\supprimer_amis.func.php on line 19
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725
Je te laisse corriger cette petite erreur de frappe
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
j'ai corrigé :
  echo "<br> le temps des tests :";

plus d'erreurs mais quand je retire de la liste d'amis rien ne se passe encore :/
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725
.... rien ne se passe .... c' est à dire ????????

Tu as bien des choses qui s'affichent sur ta page non ?
(vu que je t'ai fait ajouter du debug.....)

Tu as bien pensé à commenter les redirections ( header:location ...) de ta page "refuser.php" ????
Sinon.. en effet.. tu ne verras jamais les erreurs et/ou les debug que j'ai ajouté !!!!
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
j'ai ceci qui s'affiche : le temps des tests
params :
Array ( [:session_pseudo] => jean [:get_pseudo] => xzak47 )
je suis connecté avec : jean
je veux supprimer : xzak47
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725 >
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020


je suis connecté avec : jean
je veux supprimer : xzak47

Et ça c'est correct ?
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
Oui tout à fait :)
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725
Testes la requête en direct dans ta BDD :
DELETE FROM amis
 WHERE pseudo_exp = ' xzak47'
    AND pseudo_dest = 'jean'



Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725 >
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020

Et un
SELECT * FROM amis

ça donne quoi ?
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9 >
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021

Affichage des lignes 0 - 0 (total de 1, Traitement en 0.0000 sec)
oui j'avais corrigé mais j'ai tjr ce résultat
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725 >
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020

Heu.. tu as vu que j'avais mis un espace en trop ?
Tu l'as corrigé avant de lancer la requête bien sûr .........

DELETE FROM amis
 WHERE pseudo_exp = 'xzak47'
    AND pseudo_dest = 'jean'
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725

Affichage des lignes 0 - 0 (total de 1, Traitement en 0.0000 sec)

Une petite IMAGE ????
ça serait bien !
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
http://www.noelshack.com/2015-26-1434993571-erreur.jpg
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725
Si tu compares le contenu de ta BDD ... avec la requête ... tu verras que pseudo_exp .. dans ta BDD c'est JEAN .. et non pas XZAK47 !

.... avec quel compte essayes tu de refuser l'invitation ?
Tu es bien connecté en tant que xzak47 ??

Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
Non je suis connecté avec jean, dans le compte xzak47, le "retirer de votre liste d'amis" ne s'affiche pas
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
23
Quelle est ta condition pour que "retirer de votre liste d'ami" s'affiche ?
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
<?php
//-----------------------------
 //Profile.php 
//-----------------------------

include_once('body/header.php');
include_once('body/menu.php');

$pseudo = isset($_GET['pseudo'])?$_GET['pseudo']:NULL;
$arr_infos = recuperer_info_membre_choisi($pseudo);
$accepter_demande = accepter_demande();
$demande_existe = demande_existe();
$verifier_expediteur = verifier_expediteur();

 if(count($arr_infos)>0 && $pseudo != $_SESSION['pseudo']){

  foreach($arr_infos as $R) {
  if($demande_existe == 0){
     echo "<div class='error'>
           Vous n'êtes pas ami(e) avec ".$R['pseudo']."<br />
          <a href='index.php?page=envoi&pseudo=".$R['pseudo']."'>Envoyer une invitation</a>
        </div>";  
    }else if( $accepter_demande == 0 && $verifier_expediteur == 1){    
     echo "<div class='success'>Demande envoyée 
     <a href='index.php?page=annuler&pseudo=".$R['pseudo']."'>Annuler la demande</a></div>";   
   }else if($accepter_demande == 0 && $verifier_expediteur == 0){
        echo "<div class='success'>Demande en cours<br />
      Verifiez vos invitations
      </div>";     
     }
	 echo "<a href='index.php?page=new_message&pseudo=".$R['pseudo']."'>Envoyer un message</a></p>";
     echo"<img src='avatar/". $R['avatar']."' height='200' width='200' alt='avatar'>";
     echo "<p><strong>Email : </strong><em>".$R['email']."</em></p>";
     echo "<p><strong>Sexe : </strong><em>".$R['sexe']."</em></p>";
     echo "<p><strong>A propos de vous : </strong><em>".$R['apropos']."</em></p><br /><br />";

if( $accepter_demande == 1 && $verifier_expediteur == 1){
  echo "<a href='index.php?page=supprimer_amis&pseudo=". $R['pseudo']."' class='error'> Retirer ".$R['pseudo']." de votre liste d'amis</a>";
}
	 
  }//fin du foreach  
 }else{
  header("Location:index.php?page=membre"); 
 }
 echo "</div>";
?>
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
23
Le 'retirer de votre liste d'ami' doit s'afficher chez qui : le demandeur (au départ) ou celui qui accepte (ou les deux) ???
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
l'idéal serait les deux
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725

Non je suis connecté avec jean,

Ta fonction s'appelle : REFUSER INVITATION ... cela veut donc dire .. que c'est pour REFUSER l'invitation que quelqu'un a envoyé ...
Hors dans ta BDD .. l'invitation est envoyée par JEAN ...... à XZAK47

C'est donc UNIQUEMENT XZAK47 qui peut REFUSER l'invitation ! ... et pas l'inverse !!!!!


dans le compte xzak47, le "retirer de votre liste d'amis" ne s'affiche pas

Retirer de votre liste d'amis ... n'a aucun rapport avec REFUSER l'INVITATION !

Là .. c'est une autre fonction qu'il te faut appeler dans ce cas .... et donc... rien à voir avec le code que tu nous montres depuis le début !




Cordialement,
Jordane
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
23
Je me suis laissé aller à confondre les deux moi aussi :)
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
ah je vois, mais comment expliquer que les comptes aient le même profil et que quand je modifie les infos de xzak47, je modifie celles de jean aussi automatiquement ?
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725 >
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020

Parce que dans un de tes codes ... ( un de ceux où tu fais un UPDATE dans une requête...) tu as du oublier de mettre un WHERE
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
voici ma function :
<?php
//la function qui va changer les informations du membre

function changer_informations_membre($email,$apropos) {
global $bdd; // déclaration globale de BDD

    $request = $bdd->prepare('UPDATE utilisateurs SET email = :email, apropos = :apropos');
    $request->execute(array(
        'email' => $email,
        'apropos' => $apropos
    ));
}
?>

Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
23
Comme te l'as dit jordane45, tu n'as pas spécifié de WHERE dans ta requête !!!!!
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
C'est mieux comme ça ?
<?php
//la function qui va changer les informations du membre

function changer_informations_membre($email,$apropos) {
global $bdd; // déclaration globale de BDD

    $request = $bdd->prepare('UPDATE utilisateurs SET email = :email, apropos = :apropos WHERE pseudo=:pseudo_session');
    $request->execute(array(
        'email' => $email,
        'apropos' => $apropos
    ));
}
?>
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
23
Presque sauf que tu utilise une variable qui n'est pas définie dans la fonction !
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725
Le "BON" code .. ne serait-ce pas un truc du genre

<?php
//la function qui va changer les informations du membre

function changer_informations_membre($email,$apropos) {
global $bdd; // déclaration globale de BDD

$user = isset($_SESSION['pseudo'])?$_SESSION['pseudo']:NULL;

if($user){
   $sql = "UPDATE utilisateurs SET email = :email, apropos = :apropos WHERE pseudo = :pseudo";    
   $params = array( ":email" => $email
                      ,":apropos" => $apropos
                      ,":pseudo"=>$user
                     );
   $request = $bdd->prepare($sql);
    $request->execute($params);
 }
}else{
  echo "<br> ERREUR : User inconnu !";
}
?>


Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
j'ai : Parse error: syntax error, unexpected 'else' (T_ELSE) in C:\wamp\www\rs\functions\update.func.php on line 18
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725 >
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020

Désolé .. ligne 17 ..
supprime l'accolade
et ajoutes en une ligne 21
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725 >
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021

 <?php
//la function qui va changer les informations du membre

function changer_informations_membre($email,$apropos) {
 global $bdd; // déclaration globale de BDD

 $user = isset($_SESSION['pseudo'])?$_SESSION['pseudo']:NULL;

 if($user){
   $sql = "UPDATE utilisateurs SET email = :email, apropos = :apropos WHERE pseudo = :pseudo";    
   $params = array( ":email" => $email
                      ,":apropos" => $apropos
                      ,":pseudo"=>$user
                     );
    $request = $bdd->prepare($sql);
    $request->execute($params);

  }else{
    echo "<br> ERREUR : User inconnu !";
  }
 }
?>
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
Merci infiniement à vous deux :) j'attaque la dernière étape maintenant, la messagerie :)
Messages postés
33519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 septembre 2021
3 725
dernière

Vraiment ? ... Youpiiiiiiiii :-)
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
23
Quel entrain ! ^^
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9
ça ne marche toujours pas ! quand je clique sur "retirer xzak47 de votre liste d'amis" je suis bien redirigé mais je l'ai toujours en amis et le lien de retirement est toujours là ! :(
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
23
Qu'as-tu dans ta bdd ?
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9 >
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015

http://www.noelshack.com/2015-26-1434993571-erreur.jpg
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
23
As-tu bien corrigé ce qu'a signalé jordane45 quant à l'inversion des paramètres dans la requete ?
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
9 >
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015

je vais recréer un sujet car c'est un peu le bazar ici ^^
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
23
Oui complètement :) Un sujet par problème !