habe mich mal an Ajax versucht.
Hatte mir dazu mal einige Beispiele angesehen und bin darüber gestolppert.
In Firefox funktioniert das ganze prima. Es handelt sich um ein kleines Suchscript.
Ähnlich wie bei Google Suggest werden Ergebnisse bereits beim eintippen eingeblendet.
Ich versuche nun schon seit Tagen das auch im Internet Explorer zum laufen zu bekommen:
Kann mir jemand von Euch einen Tipp geben?
Poste mal den Code
HTML CODE:
Code: Alles auswählen
<html>
<link rel="sylesheet" href="stil.css" type="text/css">
<script language="JavaScript" src="suggest.js"></script>
<script language="JavaScript">
window.onkeyup = sndReq;
</script>
<body>
<br>
<form name = "f1"><span id="name">
Geben Sie den Nachnamen ein:<br>
<input name="name" action="suggest.php" type="text" size="30"></span>
<span id="antwort"></span>
</form>
</body>
</html>
das zugehörige JavaScript:
Code: Alles auswählen
function sndReq()
{
if(document.f1.name.value !="")
{
resObjekt.open('get', 'suggest.php?name=' + escape(document.f1.name.value.toLowerCase()),true);
resObjekt.onreadystatechange = handleResponse;
resObjekt.send(null);
}
else
{
document.getElementById("antwort").style.visibility = "hidden";
}
}
function handleResponse()
{
document.getElementById("antwort").style.visibility = "visible";
if(resObjekt.readyState == 4)
{
document.getElementById("antwort").innerHTML = resObjekt.responseText;
}
}
resObjekt=erzHttpRequestObject();
function uebernehme()
{
document.f1.name.value = document.f1.vorschlag.value;
}
Die PHP Datei:
Code: Alles auswählen
<?
$host = "localhost";
$user = "muster";
$password = "musterpasswort";
$dbname ="musterdb";
$tabelle = "adressen";
$text = '<select name="vorschlag" size="10" onClick="uebernehme()">';
$dbverbindung = mysql_connect ($host, $user, $password);
$dbanfrage = "SELECT * from $tabelle ORDER BY 'id' ASC";
$result = mysql_db_query($dbname, $dbanfrage, $dbverbindung);
while ($ausgabe = mysql_fetch_array ($result)) {
$trefferpos = strpos(strtolower($ausgabe['name']).$_GET['name']);
$if(($trefferpos == 0) && (is_integer($trefferpos))) {
$text .= "<option>".$ausgabe['name']. ", " .
$ausgabe['vname'] . ": " .
$ausgabe['vorwahl'] . "/" . $ausgabe['nr']. "</option>";
}
}
mysql_close ($dbverbindung);
$text .= '</select>';
echo $text;
?>
Viele Grüße
Markus