Partage
  • Partager sur Facebook
  • Partager sur Twitter

Ajax

Anonyme
16 décembre 2011 à 18:10:16

Bonjour j'ai une petite question sur ajax.

Enfet je fait un formulaire dynamique.
C'est a dire que s'il y'a une erreur , l'erreur est affiché sans recharger la page.
Or a un moment je doit vérifier si le pseudo n'est pas pris , donc je dois faire appelle a php (base de données).

J'ai a peu près compris qu'il faut utiliser ajax, mais je voit paq trop la méthode.
Quelqu'in pourrait-il m'aider en me fesant un schéma merci!
  • Partager sur Facebook
  • Partager sur Twitter
16 décembre 2011 à 18:15:46

1) Tu fait une requête AJAX (avec le pseudo à vérifier) en JS
2) PHP retourne quelque chose (par exemple "ok" ou "erreur")
3) En JS, tu teste le retour du serveur et tu affiche un message en cas d'erreur.

http://www.siteduzero.com/tutoriel-3-4 [...] vascript.html
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
16 décembre 2011 à 18:24:34

Ouais non mais ca je sais .
Mais je bloque au niveau de la requete : je comprend pas comment je peux dire a la base de données de me sortir la valeur de tel champ en fonction de ci et ca.

Merci de me faire un exemple (avec la connexion a la BDD via PDO)
  • Partager sur Facebook
  • Partager sur Twitter
16 décembre 2011 à 18:26:25

Tu ne sait pas comment faire une requête SQL avec PDO ?
http://www.siteduzero.com/tutoriel-3-1 [...] -donnees.html

P.S. Je ne te donnerai pas du code tout fait sans avoir la preuve que tu y met du tien (faire des recherches, essayer).
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
16 décembre 2011 à 18:35:34

Si je sais faire ca :

Mais si je fait la requete PDO
je fais comment pour dire dans la phrase de la requete Ajax , d'aller chercher cette information dans la base de données .

C'est ca que je comprend pas
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
16 décembre 2011 à 18:49:34

Mais je demande , si je fais comme ca:

// formulaire

<?php
$pseudo// requete SQL qui regarde si dans la table un champ contient le pseudo que l'utilisateur a rentré
?>

<script type="text/javascript">
if(<?php $_POST["pseudo"] == $pseudo ?>)
{
//message d'erreur
}
else
{
/rien
}

</script>


Es que cela pourrait marcher ?
  • Partager sur Facebook
  • Partager sur Twitter
16 décembre 2011 à 18:54:00

Non, car tu mélange PHP et JS.

Créé un fichier PHP séparé (c'est la méthode la plus simple) nommé par exemple "ajax_verifierpseudo.php" qui s'occupe de la vérification uniquement.

Ensuite, si je reprend ce que j'ai dit dans mon premier post :
1) En JS, tu utilise une requête AJAX pour envoyer le pseudo à vérifier au serveur
2) Le serveur effectue la vérification et retourne "erreur" si le pseudo est déjà utilisé
3) Une fois la réponse du serveur obtenue en JS, tu affiche le message si c'est "erreur" qui a été retourné.
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
16 décembre 2011 à 18:58:26

et je met le code de mon exemple et ca marche?
  • Partager sur Facebook
  • Partager sur Twitter
16 décembre 2011 à 19:02:05

Citation : cfillion

Non, car tu mélange PHP et JS.



<?php
$requete = $pdo->prepare('SELECT COUNT(*) AS nombre FROM `membres` WHERE pseudo = :pseudo');
$requete->execute(array('pseudo' => $_POST['pseudo']));
$reponse = $requete->fetch();

if ($reponse['nombre'] > 0)
    echo "erreur";

exit;

Ça devrait suffire côté serveur.
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
16 décembre 2011 à 19:05:56

Oui mais l'erreur doit etre dynamique , comme toutes les autres

regarde mon formulaire pour comprendre
  • Partager sur Facebook
  • Partager sur Twitter
16 décembre 2011 à 19:08:05

Citation : Viracle

Oui mais l'erreur doit etre dynamique , comme toutes les autres

regarde mon formulaire pour comprendre


Où est le problème ? C'est dynamique, pourtant.

P.S. Ton site ne marche pas.
Parse error: syntax error, unexpected T_ELSE in /var/www/poliboolold.fr/htdocs/membres/membres_inscription.php on line 241
  • Partager sur Facebook
  • Partager sur Twitter
16 décembre 2011 à 19:16:27

Citation : Viracle

Dynamique comme ici


Il ne te manque plus que la requête AJAX.
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
16 décembre 2011 à 19:17:59

Ben on en revient au problème du début .

Je comprend pas comment je peux dire a ajax d'aller chercher ca dans la BDD
  • Partager sur Facebook
  • Partager sur Twitter
16 décembre 2011 à 19:20:17

o_O

Je t'ai donné le code PHP pour faire la vérification.
Je t'ai donné le lien vers un tutoriel qui t'explique comment faire la requête.
Que veut-tu de plus ?

P.S. Ajax ne fait que "appeler" le script php et obtenir sa réponse.

Citation

AJAX: Salut PHP ! Peut-tu s'il te plait me dire si le pseudo "sdz" est déjà utilisé ?
PHP: erreur
JS: (Après avoir lu le résultat de ma requête AJAX, j'affiche le message d'erreur approprié)

  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
16 décembre 2011 à 19:24:12

Ben oui mais justement on fait comment pour appeler le script?
  • Partager sur Facebook
  • Partager sur Twitter
16 décembre 2011 à 20:11:43

Le message qui suit est une réponse automatique.
Les réponses automatiques nous permettent de gagner beaucoup de temps en traitant plus rapidement les problèmes récurrents.
Nous sommes néanmoins ouvert à toute question ou remarque, n'hésite pas à me contacter par messagerie privée à ce sujet.


Manque de recherche


Bonjour,

Tu as posé une question déjà couramment posée sur le web ou sur le Site du Zéro.

Les règles du site exigent de faire un minimum de recherche avant de poster une question. Je ferme donc ce sujet en t'invitant à chercher par toi-même.

Il est fortement probable que tu trouves une réponse à ta requête en utilisant le formulaire de recherche du site ou un moteur de recherche global tel que Google, Yahoo ou encore Bing. Il est aussi très fortement recommandé de chercher sur Wikipedia, cette encyclopédie libre est une très grande source d'informations sur des sujets très variés.

Merci de ta compréhension. :)
  • Partager sur Facebook
  • Partager sur Twitter
Pwaite.net > Transfert de crédit téléphonique et monétisation de site web                                                                                        « I am awesome »