Die PHP-Seite
Sie werden nun die PHP-Seite erstellen, die die Eingabe des Besuchers aus den Formularfeldern ausliest und eine entsprechende Datenbankabfrage ausführt. Öffnen Sie eine neue leere Seite. Geben Sie einen einleitenden Text ein, der den Besucher darüber informiert, dass auf dieser Seite die Ergebnisse seiner Anfrage angezeigt werden. Wechseln Sie anschließend zur Codeansicht, und ergänzen Sie die Seite entsprechend dem Listing 13.12.
Listing 13.12 Der Code der PHP-Seite
<!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">
<head>
<meta content="de" http-equiv="Content-Language" />
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>Ohne_Titel_1</title>
</head>
<body>
<p>Die folgende Tabelle führt die Ergebnisse Ihrer Suche auf:</p>
<?php
$URL_Teil = $_SERVER['QUERY_STRING'];
$Formularfelder = array();
$Einzelfelder = array();
$FelderHash = array();
$Formularfelder = split("&", $URL_Teil);
for ($zaehler=0; $zaehler<sizeof($Formularfelder); $zaehler++)
{
$Einzelfelder = split("=", $Formularfelder[$zaehler]);
$FelderHash[$Einzelfelder[0]] = $Einzelfelder[1];
}
$Interpret = $FelderHash["Interpreteingabe"];
$Titel = $FelderHash["Titeleingabe"];
if (strlen($Interpret)>=1)
{
$sqlc = "SELECT * FROM CD_Tabelle WHERE Interpret LIKE"
." '%$Interpret%'";
}
elseif (strlen($Titel)>=1)
{
$sqlc = "SELECT * FROM CD_Tabelle WHERE Titel LIKE"
." '%$Titel%'";
}
$dbh = odbc_connect('HyperCDDaten', '', '', SQL_CUR_USE_ODBC);
$res=odbc_exec ($dbh, $sqlc);
echo '<table border="1" width="100%" id="table1">
<tr>
<td width="45%"><b>Interpret</b></td>
<td width="45%"><b>Titel</b></td>
<td width="9%"><b>Bestellnummer</b></td>
</tr>';
while(odbc_fetch_row($res))
{
$Intp = odbc_result($res, "Interpret");
$Tit = odbc_result($res, "Titel");
$Bestn = odbc_result($res, "BestellNr");
echo '
<tr>
<td width="45%">'.$Intp.' </td>
<td width="45%">'.$Tit.' </td>
<td width="9%">'.$Bestn.' </td>
</tr>
';
}
echo '</table>';
ODBC_CLOSE($dbh);
?>
</body>
</html>
Mögliche Änderungen
Wenn Sie nicht mit GET, sondern auf einem richtigen Webserver mit der POST-Methode arbeiten, müssen Sie einen etwas anderen Code verwenden. Ersetzen Sie in diesem Fall den folgenden Code
$URL_Teil = $_SERVER['QUERY_STRING'];
$Formularfelder = array();
$Einzelfelder = array();
$FelderHash = array();
$Formularfelder = split("&", $URL_Teil);
for ($zaehler=0; $zaehler<sizeof($Formularfelder); $zaehler++)
{
$Einzelfelder = split("=", $Formularfelder[$zaehler]);
$FelderHash[$Einzelfelder[0]] = $Einzelfelder[1];
}
$Interpret = $FelderHash["Interpreteingabe"];
$Titel = $FelderHash["Titeleingabe"];
durch diesen Code:
$Interpret = $_REQUEST["Interpreteingabe"];
$Titel = $_REQUEST["Titeleingabe"];