Eléphant du PHP |
99 Messages
18 févr. 2008, 22:38
Je pense que c'est parce qu'il veut utiliser un script du style ajax.
Essaye ça:
Fichier HTML
<html>
<head>
<title>Hello World Ajax</title>
<script type="text/javascript" src="monScript.js"></script>
</head>
<body>
<input type="text" id="username" />
<span id="resultat">KO</span>
</body>
</html>
Ficher JS
function checkUsername() {
// Récupération du pseudo
var username = document.getElementById('username').value;
// Chargerment d'Ajax (remplace la ligne pour rendre le script crossbrowser)
var xhr = new XMLHTTPRequest();
// Création & envoi de la requête
xhr.open('GET','ajax.php?action=checkusername&username='+escape(username),false);
xhr.send(null);
// Vérification du résultat
if(xhr.responseText!='0') {
document.getElementById('resultat').innerHTML = 'KO';
} else {
document.getElementById('resultat').innerHTML = 'OK';
}
}
// Et c'est partis pour le timer du siècle
setInterval('checkUsername();',500);
Fichier PHP
<?php
// Tu charge ta connexion à MySQL
include('mysql.php');
switch($_GET['action']) {
// Si l'action est de vérifier le pseudo...
case 'checkusername':
// On affiche le nombre de membres avec ce pseudo (le +0 sert à afficher 0 s'il n'y en a aucun, au lieu d'une chaine vide)
echo mysql_num_rows('SELECT `id` FROM `membres` WHERE `username`=\''.mysql_real_escape_string($_GET['username']).'\'')+0;
break;
}
// Bon...c'est pas vraiment la peine de mettre cette ligne, mais c'est toujours mieux. Au cas où, on va dire.
die();
?>
Désolé pour l'indentation. Un problème de phpBB que j'ai la flemme de contourner... =_='[/b]