[AJAX] Script marche en local mais pas en ligne
Bonsoir tout le monde!
Voila un petit soucis bien étrange je trouve :
J'utilise AJAX pour pouvoir vérifier en temps réel la disponibilité d'un pseudo : en local ca marche parfaitement pas en ligne... il ne se passe rien... Une idée sur le pourquoi du comment?
Voila ma page nouveau.php pour s'inscrire :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
| <?php
include 'Corps.php';
include 'verifpseudo.php';
?>
<script type="text/javascript">
//instantiation l'objet XMLHttpRequest sous firfox et IE
function ajax(){
if(window.XMLHttpRequest) // Firefox et autres
xhr_object = new XMLHttpRequest();
else if(window.ActiveXObject){ // Internet Explorer
try {
xhr_object = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e1) {
xhr_object = null;
}
}
}
else { // XMLHttpRequest non supporté par le navigateur
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
return ;
}
return xhr_object;
}
function EcritureLabel(texte)
{
document.getElementById('lbPseudo').innerHTML = texte;
}
function verifPseudo(pseudo)
{
if(pseudo != '')
{
if(pseudo.length<2)
EcritureLabel('<span style="color:#cc0000"><b>'+pseudo+' :</b> ce pseudo est trop court</span>');
else if(pseudo.length>30)
EcritureLabel('<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)
EcritureLabel('<span style="color:#cc0000"><b>'+pseudo+' :</b> ce pseudo est deja pris</span>');
else if(texte == 2)
EcritureLabel('<span style="color:#1A7917"><b>'+pseudo+' :</b> ce pseudo est libre</span>');
else
EcritureLabel(texte);
}
}
else{
EcritureLabel('');
}
}
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>
<div id="main">
<h2>Le Site!</h2>
<p class="date">Inscription</p>
<form method="post" action="Nouveau.php" name="frmInscription">
<fieldset><legend>Info pratique</legend>
<p><label for="txtLogin">Login: </label><input type="text" name="txtLogin" id="txtLogin"/ onKeyUp="verifPseudo(this.value)"></p><p><label for='txtLogin' id="LbPseudo"></label>
</p>
<p><label for="Mp1">Mot de passe : </label><input type="password" name="Mp1" id="Mp1"/></p>
<p><label for="Mp2">Répéter mot de passe: <input type="password" name="Mp2" id="Mp2"/></label>
<label for='Mp2' id="lbMp"></label><br />
<p><label for="txtMail">Adresse mail: <input type="text" name="txtmail" id="txtmail" onFocus="verifMdp(Mp1.value,Mp2.value)"/></p>
</fieldset>
<fieldset><legend>Membre</legend>
<p>Membre du forum ?</p>
<p><label for='btrOui'>Oui</label> <input type='radio' name='btrChoix' id='btrOui' value='oui'/></p>
<p><label for='btrNon'>Non</label><input type='radio' name='btrChoix' id='btrNon' value='non'/></p>
</fieldset>
<p><input type="submit" value="Valider" name="btValider"/></p>
</form> |
Et voila la page verifpseudo.php appelé par l'ajax :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| <?php
$cnx= mysql_connect('localhost','****','****') or die("Ne peux pas se connecter! ".mysql_error());
mysql_select_db('db', $cnx) or die ("Base de donnée non trouvée ".mysql_error());
if (isset($_GET["pseudo"])){
$req=mysql_query("SELECT * FROM Membre where login='".$_GET["pseudo"]."'",$cnx);
if (mysql_num_rows($req)!=0){
echo "1";
}
else{
echo "2";
}
}
//mysql_close();
?> |
Quelque chose de surprenant dans mon code?^^