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

Résolu/Fermé
FlorianJ29 Messages postés 68 Date d'inscription dimanche 22 janvier 2017 Statut Membre Dernière intervention 28 février 2019 - Modifié le 4 janv. 2018 à 16:13
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 - 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
A voir également:

1 réponse

yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471
4 janv. 2018 à 16:26
bonjour, si c'est résolu, tu peux le marquer comme tel en utilisant la petite roue dentée à droite du titre.
0