Moin
Ich bin gerade ein wenig am Rumtesten mit dem Scriptaculous / Prototype Framework..
Vorher hatte ich mich mit der Thematik "Ajax" leider noch nicht weiter auseinandersetzen können .. (aber das werde ich 100%-ig noch machen

)
Problematik:
> Ajaxanwendung am Beispiel einer Postleitzahlensuche
> Benutzer bekommt Eingabefeld gibt PLZ ein - Suche erfolgt während der Eingabe
Die grundlegende Funktionalität ist bereits vorhanden - ich weiss nun nur nicht, wie ich die Eingaben an mein PHP Script weiterleite, welches die Abfragen an die DB stellt..
Derzeit werden vom PHP Script alle Ort / PLZ aus der Tabelle ausgelesen - die Anzeige erfolgt im Layer nach der Eingabe.
Nur wundere ich mich, dass es nicht möglich ist via $_GET auf die Variablen des Formulars zuzugreifen ..
HTML
PHP-Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>script.aculo.us Autocompleter functional test file</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<script src="js/ajax/lib/prototype.js" type="text/javascript"></script>
<script src="js/ajax/src/scriptaculous.js" type="text/javascript"></script>
<style type="text/css" media="screen">
.selected { background-color: #888; }
</style>
</head>
<body>
<form method="get" id="searchform" action="/">
Eingabe: <input id="ac2" type="text" autocomplete="off" name="ac2" />
<div id="ac2update" style="display:none;border:1px solid black;background-color:white;"></div>
<script type="text/javascript" language="javascript" charset="utf-8">
// <![CDATA[
new Ajax.Autocompleter('ac2','ac2update','_autocomplete_res.php');
// ]]>
</script>
</form>
</body>
</html>
PHP
PHP-Code:
<?php
include_once('config\config.php'); //nicht weiter wichtig - nur DB Connecten etc
function getOrte($search)
{
$SQL = "SELECT * FROM plz " WHERE PLZ LIKE '$search%'";
$q = mysql_query($SQL);
$rows = mysql_num_rows($q);
$ergebnis = array();
for($i=0; $i<$rows; $i++)
{
$res = mysql_fetch_array($q);
$ergebnis[$i]['PLZ'] = $res['PLZ'];
$ergebnis[$i]['Ort'] = $res['Ort'];
}
return $ergebnis;
}
//$ar = array('Listeintrag1','Listeintrag2','Listeintrag3','Listeintrag4');
?>
<ul>
<?php
$search = $_GET['ac2'];
$ausgabe = getOrte($search);
for ($i=0; $i<count($ausgabe); $i++)
{
?>
<li><? echo $ausgabe[$i]['PLZ']." ".$ausgabe[$i]['Ort']; ?></li>
<?php
}
?>
</ul>
Wäre nett, wenn mir da jemand helfen könnte - nehme mal nicht an, dass dies sonderlich kompliziert ist, oder ??
SteffenR