Parse error: syntax error, unexpected '' et functions accepter/r
Résolu/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 19/06/2015 à 00:40
Zakarya93 Messages postés 984 Date d'inscription lundi 27 avril 2015 Statut Membre Dernière intervention 18 décembre 2020 - 20 juin 2015 à 17:33
Zakarya93 Messages postés 984 Date d'inscription lundi 27 avril 2015 Statut Membre Dernière intervention 18 décembre 2020 - 20 juin 2015 à 17:33
A voir également:
- Parse error: syntax error, unexpected '' et functions accepter/r
- Eespt technical error ✓ - Forum TNT / Satellite / Réception
- Error 0x80070643 - Accueil - Windows
- Fan error lenovo - Forum Refroidissement
- Cpu over temperature error - Forum Matériel & Système
- A disk read error occurred ✓ - Forum Windows
19 réponses
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
19 juin 2015 à 00:45
19 juin 2015 à 00:45
Tu as des ECHO ... alors que tu es déjà dans un ECHO
(ça fait déjà plusieurs fois que tu as ce même genre de pb..... tu pourrais réussir à corriger par toi même à force... non ?)
A changer par :
(ça fait déjà plusieurs fois que tu as ce même genre de pb..... tu pourrais réussir à corriger par toi même à force... non ?)
echo " <a href='index.php?page=accepter&pseudo= echo $invitation['pseudo_exp']; '>Accepter |</a><a href='index.php?page=refuser&pseudo= echo $invitation['pseudo_exp']; '> Refuser</a>";
A changer par :
echo " <a href='index.php?page=accepter&pseudo=".$invitation['pseudo_exp']."'>Accepter |</a><a href='index.php?page=refuser&pseudo=".$invitation['pseudo_exp']."'> Refuser</a>";
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
19 juin 2015 à 00:51
19 juin 2015 à 00:51
Pour le 2/
NB :
Tu ne fais un FETCHALL .. que sur une requête SELECT
Et tu fais un RETURN dans ta fonction... si tu dois retourner quelque chose.. hors ici... tu fais un UPDATE... tu ne retourne rien.
<?php //la function qui va accepter l'invitation function accepter_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; if($pseudo_exp && $pseudo_dest){ $sql = "UPDATE amis SET active=1 , date_confirmation=NOW 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); $query = $bdd->prepare($sql); $query ->execute($params); } }
NB :
Tu ne fais un FETCHALL .. que sur une requête SELECT
Et tu fais un RETURN dans ta fonction... si tu dois retourner quelque chose.. hors ici... tu fais un UPDATE... tu ne retourne rien.
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
19 juin 2015 à 00:53
19 juin 2015 à 00:53
3/ et pour le "refuser invitation" que faudrait il simplement que je modifie ?
Je pense que dans le cas d'un refus... tu supprime la demande et donc.. il suffirait juste de changer La requête...
$sql = "DELETE FROM amis WHERE (pseudo_exp = :session_pseudo AND pseudo_dest = :get_pseudo)";
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
19 juin 2015 à 16:05
19 juin 2015 à 16:05
Merci infiniement ! ceci montre bien la mauvaise qualité du tuto qui m'est proposé...content d'avoir pu accéder à vos services :)
trève de bavardages, j'ai ceci : Parse error: syntax error, unexpected 'else' (T_ELSE) in C:\wamp\www\rs\pages\invitations.php on line 20
trève de bavardages, j'ai ceci : Parse error: syntax error, unexpected 'else' (T_ELSE) in C:\wamp\www\rs\pages\invitations.php on line 20
<?php include('functions/membre.func.php'); include('body/header.php'); include('body/menu.php'); ?> <h3>Vos invitations</h3> <?php $invitations = recup_invitations(); if(count($invitations)>0){ foreach($invitations as $invitation) { if($invitation['active'] == 0) { echo "<img src='avatar/".$invitation['avatar']."'height='100' width='100' alt='avatar'>"; echo "<div class='error'> ".$invitation['pseudo_exp']." a voulu vous ajouter comme ami(e)<br />"; echo " <a href='index.php?page=accepter&pseudo=".$invitation['pseudo_exp']."'>Accepter |</a><a href='index.php?page=refuser&pseudo=".$invitation['pseudo_exp']."'> Refuser</a>"; echo "</div>"; } }else{ echo " <div class='success'>Vous êtes désormais ami(e) avec ".$invitation['pseudo_exp']." </div>"; } echo "<div class='error'>Vous n'avez pas d'invitations</div>"; } ?>
hharchi9
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
24
Modifié par hharchi9 le 19/06/2015 à 16:52
Modifié par hharchi9 le 19/06/2015 à 16:52
A la ligne 20 tu as une accolade en trop devant ton else
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
19 juin 2015 à 16:54
19 juin 2015 à 16:54
Correction :
Mais le problème c'est que j'ai :
jean a voulu vous ajouter comme ami(e)
Accepter | Refuser
Vous êtes désormais ami(e) avec jean
qui s'affiche c'est bizzare :(
<?php include('functions/membre.func.php'); include('body/header.php'); include('body/menu.php'); ?> <h3>Vos invitations</h3> <?php $invitations = recup_invitations(); if(count($invitations)>0){ foreach($invitations as $invitation) { if($invitation['active'] == 0) { echo "<img src='avatar/".$invitation['avatar']."'height='100' width='100' alt='avatar'>"; echo "<div class='error'> ".$invitation['pseudo_exp']." a voulu vous ajouter comme ami(e)<br />"; echo " <a href='index.php?page=accepter&pseudo=".$invitation['pseudo_exp']."'>Accepter |</a><a href='index.php?page=refuser&pseudo=".$invitation['pseudo_exp']."'> Refuser</a>"; echo "</div>"; } } echo" <div class='success'>Vous êtes désormais ami(e) avec ".$invitation['pseudo_exp']." </div>"; } else{ echo "<div class='error'>Vous n'avez pas d'invitations</div>"; } ?>
Mais le problème c'est que j'ai :
jean a voulu vous ajouter comme ami(e)
Accepter | Refuser
Vous êtes désormais ami(e) avec jean
qui s'affiche c'est bizzare :(
hharchi9
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
24
19 juin 2015 à 16:59
19 juin 2015 à 16:59
Attends, je crois que ca vient de moi, essaye plutôt ça :
Ce n'était pas une accolade en trop, mais une en moins ton souci !
<?php include('functions/membre.func.php'); include('body/header.php'); include('body/menu.php'); ?> <h3>Vos invitations</h3> <?php $invitations = recup_invitations(); if(count($invitations)>0) { foreach($invitations as $invitation) { if($invitation['active'] == 0) { echo "<img src='avatar/".$invitation['avatar']."'height='100' width='100' alt='avatar'>"; echo "<div class='error'> ".$invitation['pseudo_exp']." a voulu vous ajouter comme ami(e)<br />"; echo " <a href='index.php?page=accepter&pseudo=".$invitation['pseudo_exp']."'>Accepter |</a><a href='index.php?page=refuser&pseudo=".$invitation['pseudo_exp']."'> Refuser</a>"; echo "</div>"; } } } else{ echo " <div class='success'>Vous êtes désormais ami(e) avec ".$invitation['pseudo_exp']." </div>"; } echo "<div class='error'>Vous n'avez pas d'invitations</div>"; } ?>
Ce n'était pas une accolade en trop, mais une en moins ton souci !
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
>
hharchi9
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
19 juin 2015 à 17:01
19 juin 2015 à 17:01
J'ai : Parse error: syntax error, unexpected '}' in C:\wamp\www\rs\pages\invitations.php on line 29
hharchi9
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
24
Modifié par hharchi9 le 19/06/2015 à 17:07
Modifié par hharchi9 le 19/06/2015 à 17:07
Mea culpa, il ya un truc qui ne va pas. Reprends ce que tu veux obtenir :
Si invitation n'est pas vide, on parcours le tableau en affichant les demande actives et les demandes acceptées. (if...else)
Sinon, on affiche "pas d'invitations".
Comme il y a deux "sinon", cela implique deux else et tu n'en a qu'un.
Je te laisse chercher un peu comment résoudre l'erreur... (si besoin, je te donnerai la solution)
Si invitation n'est pas vide, on parcours le tableau en affichant les demande actives et les demandes acceptées. (if...else)
Sinon, on affiche "pas d'invitations".
Comme il y a deux "sinon", cela implique deux else et tu n'en a qu'un.
Je te laisse chercher un peu comment résoudre l'erreur... (si besoin, je te donnerai la solution)
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
>
hharchi9
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
19 juin 2015 à 17:09
19 juin 2015 à 17:09
dans mon code il y a que si j'ai une invitation, alors "Vous êtes désormais ami(e) avec jean Cette phrase elle devrait etre dans la page accepter&pseudo, pas dans celle ci, c'est ça ?
hharchi9
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
24
19 juin 2015 à 17:11
19 juin 2015 à 17:11
La logique de ta page est bien celle que j'ai donnée dans mon denier message, non ?
Si oui, alors tout est bien à sa place sur la page mais il manque un deuxième else (il y en a un pour chacun de tes tests)
Si oui, alors tout est bien à sa place sur la page mais il manque un deuxième else (il y en a un pour chacun de tes tests)
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
19 juin 2015 à 18:11
19 juin 2015 à 18:11
<?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; if($pseudo_exp && $pseudo_dest){ $sql = $sql = "DELETE FROM amis WHERE (pseudo_exp = :pseudo_exp 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); $query = $bdd->prepare($sql); $query ->execute($params); $result=1; } else { $result=0; } // le return : // si result == 0 on retourne false .. sinon true : return $result == 0 ? 0 : 1 ; } ?>
c'est pourtant ce qui est déjà marqué non ?
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
19 juin 2015 à 18:14
19 juin 2015 à 18:14
Déjà ...- Il n'y a pas besoin de RETURN ... cette fonction ne sert qu'à UPDATE une valeur .... donc à moins que tu ne l'utilises pour autre chose dans le code qui l'appel .. je n'en vois pas l'interet.
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
19 juin 2015 à 18:16
19 juin 2015 à 18:16
Ensuite.. tu as encore des erreurs dans les variables de ta requête ... + une apostrophe manquante..
bref:
testes ceci :
bref:
testes ceci :
//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_exp && $pseudo_dest){ $sql = $sql = "DELETE FROM amis WHERE pseudo_exp = :pseudo_exp AND pseudo_dest = :pseudo_dest"; // je place les params dans une variable avant de l'utiliser : $params = array(':pseudo_exp' => $pseudo_exp , ':pseudo_dest' => $pseudo_dest); $query = $bdd->prepare($sql); $query ->execute($params); $return = 1; } return $return; }
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
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
19 juin 2015 à 18:19
19 juin 2015 à 18:19
J'ai toujours le meme problème : quand je clique sur accepter, je suis redirigé sur le profil du demandeur, quand je clique refusé la page charge mais rien ...et pour les 2 cas l'invitation ne disparait pas
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
Modifié par jordane45 le 19/06/2015 à 18:22
Modifié par jordane45 le 19/06/2015 à 18:22
On va ajouter un bloc TRY / CATCH ... à ta requête pour s'assurer que ce n'est pas elle qui poserait problème
Cordialement,
Jordane
//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_exp && $pseudo_dest){ $sql = $sql = "DELETE FROM amis WHERE pseudo_exp = :pseudo_exp AND pseudo_dest = :pseudo_dest"; // je place les params dans une variable avant de l'utiliser : $params = array(':pseudo_exp' => $pseudo_exp , ':pseudo_dest' => $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; }
Cordialement,
Jordane
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
19 juin 2015 à 18:27
19 juin 2015 à 18:27
Meme soucis que précédemment :'(
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
>
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
19 juin 2015 à 18:28
19 juin 2015 à 18:28
Je sais bien... maintenant traitons l'autre partie de ton code
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
19 juin 2015 à 18:28
19 juin 2015 à 18:28
Donc.. voici le code corrigé (avec le else manquant .. et un peu de debug ! )
<?php require_once('functions/membre.func.php'); include_once('body/header.php'); include_once('body/menu.php'); ?> <h3>Vos invitations</h3> <?php $invitations = recup_invitations(); //--------------------------------// //le temps des tests : //--------------------------------// echo "<br> Invitations :<br>"; print_r($invitations); //--------------------------------// if(count($invitations)>0){ foreach($invitations as $R) { $invit_exp = $R['pseudo_exp']; $avatar = $R['avatar']; if($R['active'] == 0){ echo "<img src='avatar/$avatar' height='100' width='100' alt='avatar'></img>"; echo "<div class='error'> ".$invitation['pseudo_exp']." a voulu vous ajouter comme ami(e)<br />"; echo " <a href='index.php?page=accepter&pseudo=$invit_exp'>Accepter</a>|<a href='index.php?page=refuser&pseudo=$invit_exp'> Refuser</a>"; echo "</div>"; } }else { echo" <div class='success'>Vous êtes désormais ami(e) avec $invit_exp </div>"; } } else { echo "<div class='error'>Vous n'avez pas d'invitations</div>"; }
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
19 juin 2015 à 18:37
19 juin 2015 à 18:37
Parse error: syntax error, unexpected 'else' (T_ELSE) in C:\wamp\www\rs\pages\invitations.php on line 29
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
Modifié par jordane45 le 19/06/2015 à 18:41
Modifié par jordane45 le 19/06/2015 à 18:41
Ouppsss...
ça devrait être mieux :
Cordialement,
Jordane
ça devrait être mieux :
<?php require_once('functions/membre.func.php'); include_once('body/header.php'); include_once('body/menu.php'); ?> <h3>Vos invitations</h3> <?php $invitations = recup_invitations(); if(count($invitations)>0){ foreach($invitations as $R) { $invit_exp = $R['pseudo_exp']; $avatar = $R['avatar']; $active = $R['active']; if($active == 0){ echo "<img src='avatar/$avatar' height='100' width='100' alt='avatar'></img>"; echo "<div class='error'>"; echo " $invit_exp a voulu vous ajouter comme ami(e)<br />"; echo " <a href='index.php?page=accepter&pseudo=$invit_exp'>Accepter</a>|<a href='index.php?page=refuser&pseudo=$invit_exp'> Refuser</a>"; echo "</div>"; }else { echo" <div class='success'>Vous êtes désormais ami(e) avec $invit_exp </div>"; }//fin du IF active } // fin du FOREACH } else { echo "<div class='error'>Vous n'avez pas d'invitations</div>"; }//fin du if(count
Cordialement,
Jordane
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
19 juin 2015 à 18:49
19 juin 2015 à 18:49
pas d'erreur mais même soucis que précédemment :(
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
>
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
19 juin 2015 à 18:50
19 juin 2015 à 18:50
Remets un PRINT en dessous de $invitations
Qu'est-ce que ça t'affiche ??
//--------------------------------// //le temps des tests : //--------------------------------// echo "<br> Invitations :<br>"; print_r($invitations); //--------------------------------//
Qu'est-ce que ça t'affiche ??
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
19 juin 2015 à 19:01
19 juin 2015 à 19:01
Invitations :
Array ( [0] => Array ( [pseudo_exp] => jean [0] => jean [date_invitation] => 2015-06-18 23:01:52 [1] => 2015-06-18 23:01:52 [active] => 0 [2] => 0 [avatar] => defaut.jpg [3] => defaut.jpg ) )
Array ( [0] => Array ( [pseudo_exp] => jean [0] => jean [date_invitation] => 2015-06-18 23:01:52 [1] => 2015-06-18 23:01:52 [active] => 0 [2] => 0 [avatar] => defaut.jpg [3] => defaut.jpg ) )
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
>
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
19 juin 2015 à 19:03
19 juin 2015 à 19:03
Donc.. visiblement...
tu es dans le cas :
Ce n'est pas bon ??
tu es dans le cas :
if($active == 0){ echo "<img src='avatar/$avatar' height='100' width='100' alt='avatar'></img>"; echo "<div class='error'>"; echo " $invit_exp a voulu vous ajouter comme ami(e)<br />"; echo " <a href='index.php?page=accepter&pseudo=$invit_exp'>Accepter</a>|<a href='index.php?page=refuser&pseudo=$invit_exp'> Refuser</a>"; echo "</div>";
Ce n'est pas bon ??
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
19 juin 2015 à 19:08
19 juin 2015 à 19:08
Je vous laisse jeter un oeil au tuto : https://www.youtube.com/watch?v=7CX3t5Gn03k
non pas bon :/
non pas bon :/
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
19 juin 2015 à 19:32
19 juin 2015 à 19:32
On va commencer par la page "accepter"
Que contient cette page (quel code ) ?
Que contient cette page (quel code ) ?
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
19 juin 2015 à 19:38
19 juin 2015 à 19:38
<?php accepter_invitation(); header("Location:index.php?page=profile&pseudo=".$_GET['pseudo']); ?>
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
>
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
19 juin 2015 à 19:39
19 juin 2015 à 19:39
Ok... donc commence par ça pour voir ce que ça donne
Puis rappele nous ce que contient le code de ta fonction
accepter_invitation();*
<?php accepter_invitation(); //le temps de tests print_r($_GET); //header("Location:index.php?page=profile&pseudo=".$_GET['pseudo']); ?>
Puis rappele nous ce que contient le code de ta fonction
accepter_invitation();*
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
19 juin 2015 à 19:45
19 juin 2015 à 19:45
J'ai : Invitations :
Array ( [0] => Array ( [pseudo_exp] => jean [0] => jean [date_invitation] => 2015-06-18 23:01:52 [1] => 2015-06-18 23:01:52 [active] => 0 [2] => 0 [avatar] => defaut.jpg [3] => defaut.jpg ) )
code function :
Array ( [0] => Array ( [pseudo_exp] => jean [0] => jean [date_invitation] => 2015-06-18 23:01:52 [1] => 2015-06-18 23:01:52 [active] => 0 [2] => 0 [avatar] => defaut.jpg [3] => defaut.jpg ) )
code function :
<?php //la function qui va accepter l'invitation function accepter_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; if($pseudo_exp && $pseudo_dest){ $sql = "UPDATE amis SET active=1 , date_confirmation=NOW 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); $query = $bdd->prepare($sql); $query ->execute($params); } }
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
19 juin 2015 à 19:47
19 juin 2015 à 19:47
J'ai : Invitations :
Array ( [0] => Array ( [pseudo_exp] => jean [0] => jean [date_invitation] => 2015-06-18 23:01:52 [1] => 2015-06-18 23:01:52 [active] => 0 [2] => 0 [avatar] => defaut.jpg [3] => defaut.jpg ) )
Pas sur la page accepter........ ce n'est pas possible !
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
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
19 juin 2015 à 19:47
19 juin 2015 à 19:47
Ah pardon *x_X
j'ai : Array ( [page] => accepter [pseudo] => jean )
j'ai : Array ( [page] => accepter [pseudo] => jean )
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
Modifié par jordane45 le 19/06/2015 à 19:53
Modifié par jordane45 le 19/06/2015 à 19:53
ok
Maintenant... change le code de ta page accepter comme ceci :
Puis vas dans ta BDD ... et regardes comment est le champ ACTIVE.
Si il est passé à 1 ... remets le à 0 ...
puis Modifie le code de ta fonction ainsi.
et retestes.
Maintenant... change le code de ta page accepter comme ceci :
<?php $accepter = accepter_invitation(); if($accepter){ echo " Invitation acceptée !"; }else{ echo "Erreur !"; } //header("Location:index.php?page=profile&pseudo=".$_GET['pseudo']); ?>
Puis vas dans ta BDD ... et regardes comment est le champ ACTIVE.
Si il est passé à 1 ... remets le à 0 ...
puis Modifie le code de ta fonction ainsi.
<?php //la function qui va accepter l'invitation function accepter_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_exp && $pseudo_dest){ $sql = "UPDATE amis SET active=1 ,date_confirmation=NOW 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; }
et retestes.
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
19 juin 2015 à 19:55
19 juin 2015 à 19:55
J'ai : Invitation acceptée !
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
19 juin 2015 à 19:58
19 juin 2015 à 19:58
et dans ta BDD ? tu as bien active = 1 ?
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
19 juin 2015 à 20:08
19 juin 2015 à 20:08
dans ma bdd y a active 0 :/
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
>
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
19 juin 2015 à 20:10
19 juin 2015 à 20:10
Tu peux essayer la requête directment dans ta BDD ?
UPDATE amis SET active=1 ,date_confirmation=NOW WHERE pseudo_exp = 'xzak47' AND pseudo_dest = 'jean'
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
19 juin 2015 à 20:15
19 juin 2015 à 20:15
j'ai : #1054 - Unknown column 'NOW' in 'field list'
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
19 juin 2015 à 21:20
19 juin 2015 à 21:20
Tu peux modifier ton code par celui-ci (j'ai ajouté un print)
et relancer ta page pour voir ce que ça te donne ?
et relancer ta page pour voir ce que ça te donne ?
<?php //la function qui va accepter l'invitation function accepter_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_exp && $pseudo_dest){ $sql = "UPDATE amis SET active=1 ,date_confirmation=NOW 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); // le temps des tests echo "<br>params : <br>"; print_r($params); 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; }
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
19 juin 2015 à 21:22
19 juin 2015 à 21:22
J'ai :
params :
Array ( [:session_pseudo] => xzak47 [:get_pseudo] => jean ) Invitation acceptée !
params :
Array ( [:session_pseudo] => xzak47 [:get_pseudo] => jean ) Invitation acceptée !
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
19 juin 2015 à 21:23
19 juin 2015 à 21:23
J'ai l'impression que tu as inversé les deux variables dans le where...
car là ... celui qui doit accepter la demande... est celui qui l'a reçu .... et donc ... celui qui consulte la page.
Donc : Pseudo_dest c'est SESSION['pseudo']
et pseudo_exp => $_GET['pseudo']
A modifier par :
car là ... celui qui doit accepter la demande... est celui qui l'a reçu .... et donc ... celui qui consulte la page.
Donc : Pseudo_dest c'est SESSION['pseudo']
et pseudo_exp => $_GET['pseudo']
WHERE pseudo_exp = :session_pseudo AND pseudo_dest = :get_pseudo
A modifier par :
WHERE pseudo_exp = :get_pseudo AND pseudo_dest = :session_pseudo
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
19 juin 2015 à 21:24
19 juin 2015 à 21:24
Parse error: syntax error, unexpected '>' in C:\wamp\www\rs\functions\accepter.func.php on line 22
<?php //la function qui va accepter l'invitation function accepter_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_exp && $pseudo_dest){ $sql = "UPDATE amis SET active=1 ,date_confirmation=NOW 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_exp , ':get_pseudo' => $pseudo_dest); // le temps des tests echo "<br>params : <br>"; print_r($params); 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; }
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
19 juin 2015 à 21:26
19 juin 2015 à 21:26
...... tu ne vois pas qu'il te manque quelque chose ???
..... il manque deux choses à la fin de cette ligne.... je te laisse réfléchir deux minutes !
$sql = "UPDATE amis SET active=1 ,date_confirmation=NOW WHERE pseudo_exp = :get_pseudo AND pseudo_dest = :session_pseudo
..... il manque deux choses à la fin de cette ligne.... je te laisse réfléchir deux minutes !
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
19 juin 2015 à 21:28
19 juin 2015 à 21:28
j'ai oublié : ";
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
20 juin 2015 à 13:02
20 juin 2015 à 13:02
Si tu tapes cette requête directement dans ta BDD
Et qu'ensuite tu vas regarder dans ta BDD ... active est toujours à 0 ?
UPDATE amis SET active=1 ,date_confirmation=NOW() WHERE pseudo_exp = 'jean' AND pseudo_dest = 'xzak47'
Et qu'ensuite tu vas regarder dans ta BDD ... active est toujours à 0 ?
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
20 juin 2015 à 13:09
20 juin 2015 à 13:09
j'ai : 1 ligne affectée. (Traitement en 0.3190 sec)
et l'active est égal à 1 !!!
et l'active est égal à 1 !!!
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
>
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
20 juin 2015 à 13:17
20 juin 2015 à 13:17
ok.
remet le active à 0.
Maintenant on va retester avec la page PHP.
remet le active à 0.
Maintenant on va retester avec la page PHP.
<?php //la function qui va accepter l'invitation function accepter_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_exp && $pseudo_dest){ $sql = "UPDATE amis SET active=1 ,date_confirmation=NOW() 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); // le temps des tests echo "<br> Requete : <br>".$sql; echo "<br>params : <br>"; print_r($params); 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; }
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
20 juin 2015 à 13:25
20 juin 2015 à 13:25
J'obtiens ça quand j'accepte l'invitation :
Requete :
UPDATE amis SET active=1 ,date_confirmation=NOW() WHERE pseudo_exp = :session_pseudo AND pseudo_dest = :get_pseudo
params :
Array ( [:session_pseudo] => xzak47 [:get_pseudo] => jean ) Invitation acceptée !
Requete :
UPDATE amis SET active=1 ,date_confirmation=NOW() WHERE pseudo_exp = :session_pseudo AND pseudo_dest = :get_pseudo
params :
Array ( [:session_pseudo] => xzak47 [:get_pseudo] => jean ) Invitation acceptée !
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
>
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
20 juin 2015 à 13:26
20 juin 2015 à 13:26
et' donc ??????? .... ==>>> DANS TA BDD ... ACTIVE = ???
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
20 juin 2015 à 13:27
20 juin 2015 à 13:27
active reste à 0
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
20 juin 2015 à 14:07
20 juin 2015 à 14:07
<?php //la function qui va accepter l'invitation function accepter_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_exp && $pseudo_dest){ $sql = "UPDATE amis SET active=1 ,date_confirmation=NOW() 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 ); // le temps des tests echo "<br> Requete : <br>".$sql; echo "Je suis connecté en tant que : ".$pseudo_session; echo " Je veux refuser l'invitation de :".$pseudo_get; echo "<br>params : <br>"; print_r($params); 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; }
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
20 juin 2015 à 14:10
20 juin 2015 à 14:10
j'ai: Notice: Undefined variable: pseudo_exp in C:\wamp\www\rs\functions\accepter.func.php on line 11
et erreur ! qui s'affiche (active = 0)
et erreur ! qui s'affiche (active = 0)
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
20 juin 2015 à 14:15
20 juin 2015 à 14:15
Oui zut.
modifie les variables dans le if
modifie les variables dans le if
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
20 juin 2015 à 14:35
20 juin 2015 à 14:35
Comme ceci ?
if($pseudo_exp){
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 20/06/2015 à 14:40
Modifié par Zakarya93 le 20/06/2015 à 14:40
j'ai trouvé :
J'ai :
Requete :
UPDATE amis SET active=1 ,date_confirmation=NOW() WHERE pseudo_exp = :get_pseudo AND pseudo_dest = :session_pseudo Je suis connecté en tant que : xzak47 Je veux refuser l'invitation de :jean
params :
Array ( [:session_pseudo] => xzak47 [:get_pseudo] => jean ) Invitation acceptée !
Active = 0 ... :'(
if($pseudo_session && $pseudo_get){
J'ai :
Requete :
UPDATE amis SET active=1 ,date_confirmation=NOW() WHERE pseudo_exp = :get_pseudo AND pseudo_dest = :session_pseudo Je suis connecté en tant que : xzak47 Je veux refuser l'invitation de :jean
params :
Array ( [:session_pseudo] => xzak47 [:get_pseudo] => jean ) Invitation acceptée !
Active = 0 ... :'(
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
Modifié par jordane45 le 20/06/2015 à 14:52
Modifié par jordane45 le 20/06/2015 à 14:52
Essayes ça
Cordialement,
Jordane
//la function qui va accepter l'invitation function accepter_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_session && $pseudo_get){ $sql = "UPDATE amis SET active=1 ,date_confirmation=NOW() 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 ); // le temps des tests echo "<br> Requete : <br>".$sql; echo "<br>Je suis connecté en tant que : ".$pseudo_session; echo "<br> Je veux refuser l'invitation de :".$pseudo_get; echo "<br>params : <br>"; print_r($params); $etatDemande_AVANT = checkActive($pseudo_session,$pseudo_get ); echo " <br> La demande est pour l'instant :".$etatDemande_AVANT; 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>".$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 = "SELECT active FROM amis WHERE pseudo_exp = :pseudo_exp AND pseudo_dest = :pseudo_dest "; // 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>".$e->getMessage()."<br>"; echo "<br>params : <br>"; print_r($params); } return $return; }
Cordialement,
Jordane
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
20 juin 2015 à 15:01
20 juin 2015 à 15:01
j'ai :
Invitations :
Array ( [0] => Array ( [pseudo_exp] => jean [0] => jean [date_invitation] => 2015-06-18 23:01:52 [1] => 2015-06-18 23:01:52 [active] => 1 [2] => 1 [avatar] => defaut.jpg [3] => defaut.jpg ) )
Vous êtes désormais ami(e) avec jean
et le active = 1
Invitations :
Array ( [0] => Array ( [pseudo_exp] => jean [0] => jean [date_invitation] => 2015-06-18 23:01:52 [1] => 2015-06-18 23:01:52 [active] => 1 [2] => 1 [avatar] => defaut.jpg [3] => defaut.jpg ) )
Vous êtes désormais ami(e) avec jean
et le active = 1
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
>
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
20 juin 2015 à 15:22
20 juin 2015 à 15:22
Donc c'est bon ?
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
20 juin 2015 à 16:03
20 juin 2015 à 16:03
Tu supprme tout le pavé "le temps des tests..."
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
20 juin 2015 à 16:45
20 juin 2015 à 16:45
J'ai enlevé mais y a tjr le : Invitations :
Array ( [0] => Array ( [pseudo_exp] => jean [0] => jean [date_invitation] => 2015-06-18 23:01:52 [1] => 2015-06-18 23:01:52 [active] => 1 [2] => 1 [avatar] => defaut.jpg [3] => defaut.jpg ) )
Array ( [0] => Array ( [pseudo_exp] => jean [0] => jean [date_invitation] => 2015-06-18 23:01:52 [1] => 2015-06-18 23:01:52 [active] => 1 [2] => 1 [avatar] => defaut.jpg [3] => defaut.jpg ) )
<?php //la function qui va accepter l'invitation function accepter_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_session && $pseudo_get){ $sql = "UPDATE amis SET active=1 ,date_confirmation=NOW() 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 ); /** * Verifie l'état d'une demande */ function checkActive($pseudo_dest,$pseudo_exp ) { global $bdd; $return = -1; $sql = "SELECT active FROM amis WHERE pseudo_exp = :pseudo_exp AND pseudo_dest = :pseudo_dest "; // 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>".$e->getMessage()."<br>"; echo "<br>params : <br>"; print_r($params); } return $return; }
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
20 juin 2015 à 16:58
20 juin 2015 à 16:58
C'est quoi ce code ????
Tu ne parviens pas à faire juste un copier coller sans sans faire d'erreurs ???
Tu as enlever trop de lignes !!!!!!
Remplaces TOUT par ça :
Penses aussi à modifier ta page ACCEPTER.PHP
Tu ne parviens pas à faire juste un copier coller sans sans faire d'erreurs ???
Tu as enlever trop de lignes !!!!!!
Remplaces TOUT par ça :
//la function qui va accepter l'invitation function accepter_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_session && $pseudo_get){ $sql = "UPDATE amis SET active=1 ,date_confirmation=NOW() 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 = "SELECT active FROM amis WHERE pseudo_exp = :pseudo_exp AND pseudo_dest = :pseudo_dest "; // 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; }
Penses aussi à modifier ta page ACCEPTER.PHP
<?php $etat = accepter_invitation(); if($etat>0){ header("Location:index.php?page=profile&pseudo=".$_GET['pseudo']); }else{ echo "<br> Une erreur s'est produite ! <br> ACTIVE = ".$etat; } ?>
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
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
20 juin 2015 à 17:14
20 juin 2015 à 17:14
Merci bien ;)
avant de passer à refuser.func.php, j'aurais une question :
comment enlever ceci sur profile.php :
pseudo_exp : jean
pseudo_dest : xzak47
resultat de la requete:
Array ( )
Result :0
avant de passer à refuser.func.php, j'aurais une question :
comment enlever ceci sur profile.php :
pseudo_exp : jean
pseudo_dest : xzak47
resultat de la requete:
Array ( )
Result :0
<?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"<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>"; }//fin du foreach }else{ header("Location:index.php?page=membre"); } echo "</div>"; ?>
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
>
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
20 juin 2015 à 17:26
20 juin 2015 à 17:26
Et bien... tu regardes si dans une des fonctions suivantes
Tu y trouves des ECHO / PRINT .... et tu les enleves
$arr_infos = recuperer_info_membre_choisi($pseudo); $accepter_demande = accepter_demande(); $demande_existe = demande_existe(); $verifier_expediteur = verifier_expediteur();
Tu y trouves des ECHO / PRINT .... et tu les enleves
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
>
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
20 juin 2015 à 17:28
20 juin 2015 à 17:28
ATTENTION : Ne retire pas les ECHO/PRINT qui se trouveraient là pour signaler des ERREURS...
par exemple ..
Ne pas retirer ce qui se trouve dans un CATCH comme celui-ci
...ça .. il faut le laisser !
par exemple ..
Ne pas retirer ce qui se trouve dans un CATCH comme celui-ci
}catch(Exception $e) { echo "<br>ERREUR ! ".$e->getMessage()."<br>"; echo "<br>params : <br>"; print_r($params); }
...ça .. il faut le laisser !
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
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
20 juin 2015 à 17:30
20 juin 2015 à 17:30
Merci :)
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 20/06/2015 à 17:32
Modifié par Zakarya93 le 20/06/2015 à 17:32
Pour le "refuser.func.php" c'est bon ce code ? :
<?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_session && $pseudo_get){ $sql = "DELETE FROM amis WHERE pseudo_exp = :pseudo_exp AND pseudo_dest = :pseudo_dest"; // 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 = :pseudo_exp AND pseudo_dest = :pseudo_dest"; // 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; }
jordane45
Messages postés
38269
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 novembre 2024
4 694
20 juin 2015 à 17:32
20 juin 2015 à 17:32
Par contre... vu qu'on en est déjà à 124 messages dans cette discussion... et vu qu'il est préférable de ne gérer qu' UN problème par discussion ... merci de clore ce sujet .. et d'en ouvrir un spécifiquement pour cet autre souci.
N'oublies pas d'y mettre :
- Le code de la page refuser.php
- Le code de ta page refuser.func.php
N'oublies pas d'y mettre :
- Le code de la page refuser.php
- Le code de ta page refuser.func.php
Zakarya93
Messages postés
984
Date d'inscription
lundi 27 avril 2015
Statut
Membre
Dernière intervention
18 décembre 2020
10
20 juin 2015 à 17:33
20 juin 2015 à 17:33
Je viens de le résoudre ^^ encore merci :)
19 juin 2015 à 00:46
A remplacer par
Modifié par Zakarya93 le 19/06/2015 à 00:47
qu'en est il pour le 2/ & 3/ svp?