Hallo Freunde,
ich nutze jQuery-Autocomplete um ein Feld mit einem Städtenamen zu füllen. Die Städtenamen liegen in einer Datenbank vor.
Format der Städte:
Berlin (DE)
Hamburg (DE)
Bern (CH)
Wien (AT)
Ich möchte jetzt gerne erreichen, dass das Feld ausschließlich Einträge annimmt welche genau so in der Datenbank vorliegen und mit der Datenbank übereinstimmen.
Bsp:
Richtig = Berlin (DE)
Falsch = Berlin
Falsch = berlin
Falsch = Ber lin
usw.
Bei Falschangabe sollte eine Meldung erscheinen und das Feld wieder gelöscht werden bzw. weiterhin "Required" sein.
Leider weiß ich als PHP/SQL/Js-Noob nicht wie man soetwas realisieren könnte.
Wäre vielleicht von Euch jemand so nett und könnte mir das helfen?
Der verwendete Code lautet im Moment folgendermaßen.
Seite mit dem Autocomplete-Feld
Und hier der Code für die PHP-Datei (SQL-Abfrage)
Über Hilfe würde ich mich freuen.
Gruß Matthias
ich nutze jQuery-Autocomplete um ein Feld mit einem Städtenamen zu füllen. Die Städtenamen liegen in einer Datenbank vor.
Format der Städte:
Berlin (DE)
Hamburg (DE)
Bern (CH)
Wien (AT)
Ich möchte jetzt gerne erreichen, dass das Feld ausschließlich Einträge annimmt welche genau so in der Datenbank vorliegen und mit der Datenbank übereinstimmen.
Bsp:
Richtig = Berlin (DE)
Falsch = Berlin
Falsch = berlin
Falsch = Ber lin
usw.
Bei Falschangabe sollte eine Meldung erscheinen und das Feld wieder gelöscht werden bzw. weiterhin "Required" sein.
Leider weiß ich als PHP/SQL/Js-Noob nicht wie man soetwas realisieren könnte.
Wäre vielleicht von Euch jemand so nett und könnte mir das helfen?
Der verwendete Code lautet im Moment folgendermaßen.
Seite mit dem Autocomplete-Feld
PHP-Code:
<html><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
</head><body>
<p><input id="autocomplete" type='text'></p>
<script type="text/javascript">
function selectItem(li) {
return false;
}
function formatItem(row) {
return row[0] + "<i>" + row[1] + "</i>";
}
$(document).ready(function() {
$("#autocomplete").autocomplete("1.php", {
minChars:2,
matchSubset:1,
matchContains:1,
cacheLength:10,
onItemSelect:selectItem,
selectOnly:1
});
});
</script></body></html>
Und hier der Code für die PHP-Datei (SQL-Abfrage)
PHP-Code:
<?php
header('Content-Type: text/html; charset=utf-8');
//connection information
$host = "localhost";
$user = "root";
$password = "pass";
$database = "projekt";
$param = $_GET["term"];
//make connection
$server = mysql_connect($host, $user, $password);
$connection = mysql_select_db($database, $server);
mysql_query('set character set utf8;');
$res = mysql_query("SELECT city FROM zipcodes WHERE city LIKE '".$_GET['q']."%' ");
while($row=mysql_fetch_object($res)) {
echo $row->city."\n";
}
?>
Gruß Matthias
Kommentar