ilch Forum » Allgemein » HTML, PHP, SQL,... » Javascript set value - HILFE!!

Geschlossen
  1. #1
    User Pic
    CeeJay Hall Of Fame
    Registriert seit
    23.03.2007
    Beiträge
    2.425
    Beitragswertungen
    18 Beitragspunkte
    Moin,

    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
    Nichts ist so sicher, wie die Änderung.
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu HTML, PHP, SQL,...

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten