Questions l'affichage de données php

Nouveau WRInaute
Salut tout le monde,

Bon peut-être qu'ici j'aurais au moins une réponse ^^.

Ma questions est simple, voilà j'ai mon formulaire html/php qui fonctionne nickel chrome mais j'aimerais lui ajouter un petit plus. Exemple quand un membre s'inscrit via ce dernier, je voudrais que par exemple à droite du champ "Pseudo" au fur et à mesure que le visiteur écrit sont pseudo il vérifie si oui ou non le pseudo est libre dans la base de donnée.

Je sais que j'ai déjà vue il n'y a pas si longtemps sur un site et c'était à ce qu'il disais en php donc en faisant une supposition j'imagine que php doit avoir une fonction qui vérifie le contenu de sa base de donnée sans rechargement de page, j'arrive sans soucis à vérifier si le pseudo est libre mais en faisant recharger la page dite. Si possible j'aimerais éviter tout ce qui est javascript car je me suis toujours débrouiller pour faire mon site sans étant donné tout les militants du javascript encore actif :D

En espérant avoir été assez clair sur mon problème.

Par avance merci

Bonne nuit à tout le monde.

Swink
 
WRInaute accro
En fait ça se fait en AJAX, donc en utilisant du javascript ET du php (ou un autre langage serveur). Ca permet de faire des requêtes en base de donnée au fur et à mesure de la saisie d'info et de répercuter ça sur la page en cours sans la recharger.
 
Nouveau WRInaute
UsagiYojimbo a dit:
En fait ça se fait en AJAX, donc en utilisant du javascript ET du php (ou un autre langage serveur). Ca permet de faire des requêtes en base de donnée au fur et à mesure de la saisie d'info et de répercuter ça sur la page en cours sans la recharger.

Salut et merci de ta réponse UsagiYojimbo, alors bon je vais répondre par une questions bête. Si par exemple le visiteur à désactiver le javascript dans son navigateur, bah il ne verra rien dans l'affichage si le pseudo est libre ou pas et donc il faut prévoir un sortie de secours pour vérifier les donnée si l'utilisateur n'a pas Javascript activer sur son navigateur.

Merci bien

EDIT :

Bon je viens de trouver un script sur editeur javascript mais il y'a un soucis voilà je vous met vite fait le code

Le javascript dans les balise head de ma page.

Code:
<script type="text/javascript">
function writediv(texte)
     {
     document.getElementById('pseudobox').innerHTML = texte;
     }

function verifPseudo(pseudo)
     {
     if(pseudo != '')
               {
               if(pseudo.length<3)
                         writediv('<span style="color:#cc0000"><b>'+pseudo+' :</b> ce pseudo est trop court</span>');
               else if(pseudo.length>30)
                         writediv('<span style="color:#cc0000"><b>'+pseudo+' :</b> ce pseudo est trop long</span>');
               else if(texte = file('verifpseudo.php?pseudo='+escape(pseudo)))
                         {
          if(texte == 1)
               writediv('<span style="color:#cc0000"><b>'+pseudo+' :</b> ce pseudo est deja pris</span>');
          else if(texte == 2)
               writediv('<span style="color:#1A7917"><b>'+pseudo+' :</b> ce pseudo est libre</span>');
          else
               writediv('');
                         }
               }

     }

function file(fichier)
     {
     if(window.XMLHttpRequest) // FIREFOX
          xhr_object = new XMLHttpRequest();
     else if(window.ActiveXObject) // IE
          xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
     else
          return(false);
     xhr_object.open("GET", fichier, false);
     xhr_object.send(null);
     if(xhr_object.readyState == 4) return(xhr_object.responseText);
     else return(false);
     }
</script>


Puis le petit formulaire rapide
Code:
<form action="">
<input type="text" name="pseudo" onKeyUp="verifPseudo(this.value)" />
<div id="pseudobox"></div>
</form>

Et enfin ma page verifpseudo.php qui contien les élément pour la connexion à la base de donnée...
Code:
<?
//
// VERIFICATION EN LIVE DU PSEUDO
//

// CONNECION SQL
mysql_connect("monserveur", "monpseudo", "monmdp");
mysql_select_db("mabase");

// VERIFICATION
$result = mysql_query("SELECT pseudo FROM membres WHERE pseudo='".$_GET["pseudo"]."'");
if(mysql_num_rows($result)>=1)
echo "1";
else
echo "2"

ça marche mais il y'a un soucis quand je rentre 2 caractère il me dit que c'est trop court (normal) et plus de 30 caractère il me dit que c'est trop long (normal aussi) mais entre les deux il ne dit jamais si le pseudo est libre ou si il ne l'est pas.

Quelqu'un aurait une suggestion à me faire. Bon je retourne chercher un peut moi merci d'avance

Bonne journée
 
WRInaute accro
Je conçois dans ce cas l'ajax comme un ajout ergonomique, pas comme une vérification bloquante. Car une fois que l'utilisateur a rempli ton formulaire, que le js soit ou non activé, rien ne te dispense de vérifier lors de la soumission du dit formulaire que le pseudo est unique.
 
Nouveau WRInaute
Tout à fait et puis de toute façon une vérification est quand même lancer après l'envoi du formulaire POST mais bon c'est bête que tant de gens coupe leur Javascript encore ^^.

Sinon je doit avouer que moi et le Javascript ça fait deux donc si quelqu'un peut essayer de m'éclairer un peut sur mon dernier soucis ce serait fort aimable de sa part.
 
Discussions similaires
Haut