Nach Eingabe in Textfeld Mysql abfrage und ausgabe

In deinem Code? Bist du sischer? Hier hast du doch die Variable
PHP:
echo '<li onClick="fill(\''.$result->markt.'\');">'.$result->markt.'</li>';
Die wird ja aus dem DB-Resultat gelesen und das ganze ist ind er Schleife der DB-Resultate. Welche Variable hast du da noch nicht?
 
wenn ich die variable mit echo aufrufe hat sie ja noch keinen wert, diesen erhält sie ja erst wenn ich etwas eingabe wonach gesucht werden soll, dann wird der wert an die variable übergeben.
 
Arbeitest du jetzt mit dem Ajax-Ansatz oder mit was?

Wenn ja, ist das der Code der vom Javascript aufgerufen wird? Oder ist das der Code der die Grundseite mal erstellt?
Im Ersten Fall hast du die Info, ansonsten übergibst du irgendwo was nicht.
 
hat sich doch auch bereits geklärt ich muss es nicht an ein anderes feld übergeben sondern kann es dort belassen wo es ist.

Vielen Dank für eure Hilfe :)
 
Es hat sich doch noch ein Problem aufgetan... wenn ich nach worten die ein "ä,ö,ü" enthalten suche werden diese nicht gefunden da es nicht korrekt übergeben wird... ist es irgendwie möglich das auch danach gesucht wird?

kann ich denn vor der abfrage ein str-replace machen sodass diese in '&auml;','&ouml;','&uuml;' geändert werden? dann trage ich die werte auch so in die Datenbank ein...
 
Zuletzt bearbeitet:
habs bereits selbst geschafft für alle die es interessiert:

PHP:
$sonderzeichen = array("ä", "ö", "ü" ,"Ä", "Ö", "Ü");
				$normal = array("&auml;", "&ouml;", "&uuml;", "&Auml;", "&Ouml;", "&Uuml;");
				$query2String = str_replace($sonderzeichen,$normal,$queryString);
				
				$query = $db->query("SELECT markt FROM ortssuche WHERE markt LIKE '%%%$query2String%%%' LIMIT 1");
				if($query) {
					
					while ($result = $query ->fetch_object()) {
					
					echo '<li onClick="fill(\''.$result->markt.'\');">'.$result->markt.'</li>';
	         		}
				}

einfach die arrays getauscht bevor der string übergeben wird.
 
Mann kann PHP auch neu erfinden - oder mann nimmt die Befehle die es schon gibt
htmlentities() und html_entity_decode()

PHP:
var_dump($text = 'Hallo ü è Ü & ä');
var_dump($encoded = htmlentities($text));
var_dump(html_entity_decode($encoded));

Resultat
Code:
string(15) "Hallo ü è Ü & ä"
string(41) "Hallo &uuml; &egrave; &Uuml; &amp; &auml;"
string(15) "Hallo ü è Ü & ä"
 
viel mehr hab ich ja auch nicht gemacht das austauschen ist ja auch nur

PHP:
$sonderzeichen = array("ä", "ö", "ü" ,"Ä", "Ö", "Ü");
$normal = array("&auml;", "&ouml;", "&uuml;", "&Auml;", "&Ouml;", "&Uuml;");
$query2String = str_replace($sonderzeichen,$normal,$queryString);

habs nur nochmal im kontext gepostet
 
Jepp, aber warum selber codieren wenn PHP eine Funktion anbietet. Deine ist unvollständig und übersetzt nur gerade deutschen Umlaute. Für ein sauberes HTML muss aber mehr übersetzt werden.
Das du keine Lust hast auf PHP-eigene Funktionen zurückzugreifen hab ich schon in einem anderen Thread gesehen. Doch für jeden anderen PHP-Programmierer der über diesen Thread stolpert, empfehle ich nicht die Funktion von BaalOrun zu nehmen sondern das zu verwenden, was PHP selber anbietet:
htmlentities()
html_entity_decode()

Und wenn man es selber nachbilden will, dann sollte man es mindestens in eine Funktion fassen - ansonsten muss man es überall wo man es braucht wieder neu programmieren :(
 
Zurück