Menu

[AJAX] Gérer le retour de donnée avec .get() RÉSOLU [Résolu]

FlorianJ29 65 Messages postés dimanche 22 janvier 2017Date d'inscription 4 janvier 2018 Dernière intervention - 4 janv. 2018 à 14:13 - Dernière réponse : yg_be 5295 Messages postés lundi 9 juin 2008Date d'inscriptionContributeurStatut 25 avril 2018 Dernière intervention
- 4 janv. 2018 à 16:26
Bonjour à tous,

Je viens vers vous car je ne sais pas comment récupérer les données trouvés de la function .get()

Je vous explique tout en détails :

Quand je clique sur un button, j'execute la fonction .get() vers mon fichier motif_pseudo.php, je passe un paramètre, le nouveau pseudo que l'utilisateur à choisi.

Le fichier motif_pseudo.php, vérifie si le nouveau pseudo est déjà utilisé (j'aimerai qu'il soit unique).
Tout cela fonctionne.

J'aimerai qu'au retour ce fichier de base (une fois la fonction .get() fini) je puisse récupérer la variable du fichier motif_pseudo.php (qui contient 0 si le pseudo n'ai pas dans la bdd si 1 s'il y est).

Selon le contenu de cette variable, j'affiche une fenêtre modale (css) pour indiquer à l'utilisateur que le changement de pseudo à bien été effectué ou l'inverse.

Pour simplifié tout ça, comment récupérer les données qu'AJAX va chercher dans motif_pseudo.php ?

J'ai essayé ceci mais les $_SESSION ne s'actualise automatique !

<script>
$(function() {
$('#bt_modif_1').click(function() {
$.get('modif_pseudo.php?new_pseudo='+document.getElementById('new_pseudo').value, function(data) {
var succes_modif_pseudo = <?php echo $_SESSION["succes_modif_pseudo"]; ?>;
alert(succes_modif_pseudo);
if(succes_modif_pseudo == 1) { //reussi
//on affiche la fenetre modale reussi
} else if(succes_modif_pseudo == 0) { //echec
//on affiche la fenetre modale echec
}
});
});
});
</script>


Fichier motif_pseudo.php :


$sql = "SELECT * FROM membres WHERE (pseudo = '".$_GET['new_pseudo']."' OR new_pseudo = '".$_GET['new_pseudo']."')";
echo $sql;
$req_pseudo = $bdd->query($sql);
$pseudo_exist = $req_pseudo->rowCount();
if($pseudo_exist == 0) {
$_SESSION['succes_modif_pseudo'] = 1; // Aucune erreur donc on affiche la popup de succes !
$update_pseudo = $bdd->prepare("UPDATE membres SET new_pseudo = '".$_GET['new_pseudo']."' WHERE id = ?");
$update_pseudo->execute(array($_SESSION['id']));
$_SESSION['new_pseudo'] = $_GET['new_pseudo'];
} elseif($pseudo_exist == 1) {
$_SESSION['succes_modif_pseudo'] = 0; // pseudo deja utiliser donc on affiche la popup erreur !
}


J'espère que j'ai bien détaillé, et bien expliqué ! Autrement dit-le moi.

Merci d'avance,
Florian
Afficher la suite 

1 réponse

Répondre au sujet
yg_be 5295 Messages postés lundi 9 juin 2008Date d'inscriptionContributeurStatut 25 avril 2018 Dernière intervention - 4 janv. 2018 à 16:26
0
Utile
bonjour, si c'est résolu, tu peux le marquer comme tel en utilisant la petite roue dentée à droite du titre.
Commenter la réponse de yg_be