S'abonner :  Newsletters    Magazines
Avis sur les produits Avis sur les logiciels Avis sur les jeux Actualités A propos de 01net
253 utilisateurs connectés

Problème AJAX

meteo59223 le 11 février 2009 à 17h28
Hello à tous

Voilà je voudrais afficher ce que me donne mon code AJAX, mais le problème c'est que rien ne s'affiche dans ma liste déroulante. Cela fonctionne quand c'est un champ texte, mais pas une liste déroulante.

Le but est de taper le code postal pour afficher la ou les villes assignées à celui-çi après recherche dans la BDD

Code Php

<?php

mysql_connect("","","");
mysql_select_db("");

$cp = $_GET['code'];

$req = mysql_query("SELECT * FROM maps_ville WHERE cp='$cp'");

while($rep = mysql_fetch_array($req))
{
$nom = $rep['nom'];
$cp = $rep['cp'];

echo '<option value="'.$cp.'">'.$nom.'</option>';
}

mysql_close();
?>


Code HTML et Javascript

<html>
<head>
<title>AJAX</title>
<script type="text/javascript">

function verifcode(valeur)
{
var xhr_object;
var fichier = 'http://ville.php?code='+escape(valeur);
var reponse;

if(window.XMLHttpRequest) // FIREFOX
{xhr_object = new XMLHttpRequest();}

else if(window.ActiveXObject) // IE
{xhr_object = new ActiveXObject("Microsoft.XMLHTTP");}

else{xhr_object = false;}

xhr_object.open("GET", fichier, false);
xhr_object.send(null);

if(xhr_object.readyState == 4){reponse = xhr_object.responseText;}
else{reponse = false;}

return document.getElementById('ville').innerHTML = reponse;
}


</script>
</head>
<body>
<form action="">
<input type="text" name="code" onkeyup="verifcode(this.value)" />
<select id="ville" name="ville"></select>
</form>
</body>
</html>


Et rien ne s'affiche dans ma liste déroulante ... Je pense que ça doit venir du document.getElementById mais je ne suis pas sûr, le javascript je n'en suis pas vraiment pro :sweat:

Si quelqu'un a une idée, merci ;)
superted97 le 27 février 2009 à 08h53
salut je pense que ce lien vas t'aider : http://roodali.com/?p=38 et http://roodali.com/?p=29
-------
www.roodali.com script gratuits
superted97 le 27 février 2009 à 08h57
remplace
mysql_connect("","","");
mysql_select_db("");

par
$connexion = mysql_connect($host,$user,$pasw) or die ("pas d'accces");
$db = mysql_select_db($base,$connexion) or die ("base non connecté");
-------
www.roodali.com script gratuits
meteo59223 le 30 mars 2009 à 01h19
Merci à vous pour ces réponses ;)

J'avais trouvé une solution alternative avec un while et des champs radio à la place de la liste déroulante ; mais je vais quand-même essayer ça ;)

A+++

Nico


PRODUITS

TÉLÉCHARGER - LOGICIELS

JEUX VIDÉOS

LOISIRS

01NET PRO

AVIS ET COMMENTAIRES

A PROPOS DE 01NET

publicité
> Nouveauté :
Norton Antivirus 2010
Cette année optez pour l'antivirus de référence.

Service 01net
Newsletters 01net
abonnez vous gratuitement !
  
01Informatique
01 INFORMATIQUE
L'hebdo de référence des décideurs informatiques.
Micro Hebdo
MICRO HEBDO
L'hebdo qui vous simplifie la micro
et Internet.
L'Ordinateur Individuel
L'ORDINATEUR INDIVIDUEL
Le mensuel informatique qui vous informe et vous conseille.
Nous contacter  |  Charte de confiance  |  Voir notice légale

01net.  -  01men  -  RMC  -  BFM Radio  -  BFM TV  -  TousLesPodcasts  -  01informatique.fr  -  Association RMC-BFM
Tous droits réservés © 1999 - 2009 Internext - 01net.