Allora so che quella pagina non centra niente con ajax ma vado a finire li tramite un form che richiama ajax e credo che sia tutto corretto anche se in verità dopo quasi 200 pagine probabilmente il mio cervello stia andando in tilt. ti posto il form che successivamente si connette alla pagina php che ho postato:
codice:
<html>
<style type="text/css">
@import url("fogliostile.css");
</style>
<head>
<title>Cerca Fattura Noleggio</title>
<script type="text/javascript">
function showUser(str) {
if (str=="") {
document.getElementById("txtHint").innerHTML="";
return; }
if (window.XMLHttpRequest) {
// per i browser IE7+ Firefox Chrome Safari Opera
xmlhttp=new XMLHttpRequest(); }
else {
// per i browser IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("txtHint").innerHTML=xmlhttp.responseText; }
}
xmlhttp.open("GET","getcliente.php?z="+str,true);
xmlhttp.send(); }
</script>
</head>
<body>
<h3>Scegliere Cliente</h3>
<form name="tipo" action="" method="post">
<table border="0">
<tr>
<td>Nome Cliente:</td>
<td> <select name="cli" onChange="showUser(this.value)">
<?php $query=mysql_query("SELECT Rag_Soc FROM cliente WHERE Cod_Fisc IN (SELECT Cod_Fisc FROM fattura_noleggio)", $db) or die ("Errore query");
$i=1;
while($vet=mysql_fetch_array($query)) {
$a[$i]=$vet[0]; $i++; }
echo "<option value\"\">seleziona</option>";
for($c=1;$c<=count($a);$c++){
echo "<option value=\"$a[$c]\">$a[$c]</option>"; }
echo "</select>";
?>
</select>
</td>
</tr>
<tr>
<td>Data Fattura:</td>
<td>
<div id="txtHint"><select></select></div>
</td>
</tr>
</table>
<input type="submit" align="absmiddle" value="Visualizza">
</form>
</body>
</html>
Questa pagina contiene il codice ajax che mi reindirizza alla pagina getcliente:
codice:
<?php
require("connessione.php");
$q=$_GET["q"];
$ris=mysql_query("SELECT Data_Fattura FROM fattura_noleggio WHERE Cod_Fisc='$q'", $db) or die("Errore 1");
echo "<select name=\"data\">";
$i=1;
while($vet=mysql_fetch_array($ris)) {
$data[$i]=$vet[0]; $i++; }
for($c=1;$c<=count($data);$c++){
echo "<option value=\"$data[$c]\">$data[$c]</option>"; }
echo "</select>";
?>
ho ricontrollato più volte mi sfugge sicuramente qualcosa perchè non mi da errore la query ma un risultato vuoto...il menù della data non si popola...