ich stehe wieder einmal vor einem Problemchen:
Ich habe ein Input-Feld, sobald man anfängt was zu tippen, bekomme ich eine Liste mit Vorschlägen angezeigt, ähnlich wie bei Google. Die Liste mit Vorschlägen wird in ein DIV projeziert, welches per ID angesprochen wird.
Nun möchte ich per javascript ein value für mein Inputfeld setzen, sobald ein Eintrag aus der Vorschlagsliste angeklickt wird.
Hier mal mein Javascript:
<!-- Script für die Straßensuche --> <script type="text/javascript"> function searchFor(suchbegriff){ var xmlHttp = null; // Mozilla, Opera, Safari sowie Internet Explorer 7 if (typeof XMLHttpRequest != 'undefined') { xmlHttp = new XMLHttpRequest(); } if (!xmlHttp) { // Internet Explorer 6 und älter try { xmlHttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) { try { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) { xmlHttp = null; } } } // Wenn das Objekt erfolgreich erzeugt wurde if (xmlHttp) { var url = "include/contents/strausdb.php"; var params = "suchbegriff="+suchbegriff; xmlHttp.open("POST", url, true); //Headerinformationen für den POST Request xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); xmlHttp.setRequestHeader("Content-length", params.length); xmlHttp.setRequestHeader("Connection", "close"); xmlHttp.onreadystatechange = function () { if (xmlHttp.readyState == 4) { // Zurückgeliefertes Ergebnis wird in den DIV "ergebnis" geschrieben document.getElementById("strliste").innerHTML = xmlHttp.responseText; } }; xmlHttp.send(params); } } </script>
und hier der PHP-Teil:
<?php
// Verbindung
$server = "xxx";
$benutzername = "xxx";
$passwort = "xxx";
$datenbank = "xxx";
// Server Verbindung herstellen
mysql_connect($server,$benutzername,$passwort) or
die ("Keine Verbindung möglich");
// Datenbank Verbidung
mysql_select_db($datenbank) or
die ("Die Datenbank existiert nicht");
$tabelle = "ic1_adressen";
if ($_POST["suchbegriff"]){
// Mysql Abfrage wird gespeichert mit den Notwendigen Parameter
$sql = "SELECT `str` FROM ".$tabelle." WHERE `str` LIKE ('%".mysql_real_escape_string(utf8_decode($_POST["suchbegriff"]))."%')
LIMIT 50";
$result = mysql_query($sql);
// Suchbegriff wird ausgegeben
// Ergebnis wird ausgegeben mit Zeilenumbruch
echo '<ul>';
while($row = mysql_fetch_assoc($result)){
echo '<li><a href="#str" onclick="">'.utf8_encode($row['str']).'</a></li>';
}
echo '</ul>';
}
?>
Hat jemand einen guten Vorschlag für mich?
Vielen Dank im Voraus!
verwendete ilch Version: 1.1 P
############################################################
EDIT: Hat sich erledigt, ich benutze nun einen anderen Lösungsweg.
Zuletzt modifiziert von CeeJay am 22.11.2014 - 02:28:12