MY SQL durchsuchen - Fehler im Script

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • MY SQL durchsuchen - Fehler im Script

    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.

    Quellcode

    1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    2. "http://www.w3.org/TR/html4/loose.dtd">
    3. <html>
    4. <head>
    5. </head>
    6. <body style="background-color: #aeb897;">
    7. <form action="<? $_SERVER['PHP_SELF']; ?>" method=post>
    8. <input type="button" name="hauptmenue" value="Hauptmen&uuml;" onclick="location='index.php'" style="color: blue;"></input><br><br><br>
    9. Name: <input type="text" name="suche" value=""></input>&nbsp;&nbsp;&nbsp;
    10. <input type="submit" name="senden" value="Suchen" style="color: green;"></input><br><br>
    11. </form>
    12. <?php
    13. $host = "localhost";
    14. $user = "***";
    15. $password = "***";
    16. $dbname = "***";
    17. $tabelle ="kunden";
    18. $connect = mysql_connect ($host, $user, $password) OR DIE ("Unable to connect to database");
    19. $select = mysql_select_db($dbname, $connect) OR DIE ("Unable to connect to database");
    20. $suche = $_POST['suche'];
    21. $keywords = $suche;
    22. $association = 'AND';
    23. $keywords = explode(" ",$keywords);
    24. $query = array();
    25. foreach($keywords as $keyword) {
    26. $query[] = "( `name` LIKE '%".$keyword."%'
    27. OR `vorname` LIKE '%".$keyword."%')
    28. ";
    29. }
    30. $query = implode("\n ".$association." ",$query);
    31. $sql = "SELECT * FROM kunden WHERE name LIKE '$query'";
    32. $res = mysql_query($sql);
    33. if (!$res) {
    34. /**
    35. * Diese Zeilen geben das SQL-Statement in recht lesbarer Form aus.
    36. */
    37. print '<pre>';
    38. print $sql;
    39. print '</pre>';
    40. /**
    41. * E_USER_ERROR führt zum Abbruch des Scripts.
    42. * E_USER_NOTICE und E_USER_WARNING, lassen das Script weiterlaufen
    43. */
    44. trigger_error('Datenbankanfrage schlug fehl: '.mysql_error(), E_USER_ERROR);
    45. } else {
    46. /**
    47. * Hier die Routinen zum Auslesen der Suchergebnisse einfügen.
    48. */
    49. }
    50. ?>
    51. </td>
    52. </tr>
    53. </table>
    54. </body>
    55. </html>
    Alles anzeigen
  • Gut mach ich!

    Also ich habe ein großes Formular wo ich kunden eingeben kann, mit der Suche will ich diese Kunden suchen können und die gefundenen Kunden auflisten.

    Momentan bekomme ich aber als Ergebnis nur Fehler:
    Gebe ich z.B. hans ein:

    Quellcode

    1. SELECT * FROM kunden WHERE hans LIKE '( `name` LIKE '%hans%'
    2. OR `vorname` LIKE '%hans%')

    '

    Quellcode

    1. Fatal error: Datenbankanfrage schlug fehl: Unknown column 'hans' in 'where clause' in /www/htdocs/v157017/forms/test.php on line 56