Ich habe ein Script vom Netzt mit dem man die MYSQL Tabelle nach einem Suchbegriff durchsuchen kann. Ich bekomme es aber nicht zum aufen. Wäre für einen Tipp dankbar.
Alles anzeigen
Quellcode
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
- <html>
- <head>
- </head>
- <body style="background-color: #aeb897;">
- <form action="<? $_SERVER['PHP_SELF']; ?>" method=post>
- <input type="button" name="hauptmenue" value="Hauptmenü" onclick="location='index.php'" style="color: blue;"></input><br><br><br>
- Name: <input type="text" name="suche" value=""></input>
- <input type="submit" name="senden" value="Suchen" style="color: green;"></input><br><br>
- </form>
- <?php
- $host = "localhost";
- $user = "***";
- $password = "***";
- $dbname = "***";
- $tabelle ="kunden";
- $connect = mysql_connect ($host, $user, $password) OR DIE ("Unable to connect to database");
- $select = mysql_select_db($dbname, $connect) OR DIE ("Unable to connect to database");
- $suche = $_POST['suche'];
- $keywords = $suche;
- $association = 'AND';
- $keywords = explode(" ",$keywords);
- $query = array();
- foreach($keywords as $keyword) {
- $query[] = "( `name` LIKE '%".$keyword."%'
- OR `vorname` LIKE '%".$keyword."%')
- ";
- }
- $query = implode("\n ".$association." ",$query);
- $sql = "SELECT * FROM kunden WHERE name LIKE '$query'";
- $res = mysql_query($sql);
- if (!$res) {
- /**
- * Diese Zeilen geben das SQL-Statement in recht lesbarer Form aus.
- */
- print '<pre>';
- print $sql;
- print '</pre>';
- /**
- * E_USER_ERROR führt zum Abbruch des Scripts.
- * E_USER_NOTICE und E_USER_WARNING, lassen das Script weiterlaufen
- */
- trigger_error('Datenbankanfrage schlug fehl: '.mysql_error(), E_USER_ERROR);
- } else {
- /**
- * Hier die Routinen zum Auslesen der Suchergebnisse einfügen.
- */
- }
- ?>
- </td>
- </tr>
- </table>
- </body>
- </html>