Hallo zusammen!
Ich möchte meine MySql Tabelle 'kunden' mit einem Suchbegriff durchsuchen lassen.
Dafür habe ich ein Such-Formular erstellt
such.htm)
<html>
<head>
<title>Datenbank Suchfunktion</title>
</head>
<body>
<p>Datenbank Suchfunktion!</p>
<form method="POST" action="suchen.php">
<p>Bitte nur den Suchbegriff hier eingeben!<br>
<input type="text" name="suchbegriff" size="20"></p>
<p><input type="submit" value="Absenden" name="Absenden"></p>
</form>
</body>
</html>
Die
suchen.php sieht bei mir derzeit so aus:
<head>
<title>Gefundene Daten ausgeben</title>
</head>
<body>
<?php
$db_host = "localhost";
$db_user = "root";
$db_pass = "*******";
$db_name = "kunden";
$suche = $_POST['suchbegriff'];
// Verbindung oeffnen und Datenbank ausweahlen
$conID = mysql_connect( $db_host, $db_user, $db_pass ) or die( "Die Datenbank konnte nicht erreicht werden!" );
if ($conID)
{
mysql_select_db( $db_name, $conID );
}
$daten = mysql_query('SELECT * FROM `kunden` WHERE `vorname`=\''.$suche.'\'' , $conID);
while($row=mysql_fetch_array($daten))
{
echo $row['vorname'];
}
?>
</body>
</html>
Fazit: Es funktioniert.
Problem: Ich habe mehr als nur eine Tabellenspalte (vorname). Also noch Nachname, Anschrift, PLZ, Ort etc. Ich würde gerne mit dem eingegebenen Suchwort im Formualrfeld gerne alle Tabellenspalten durchsuchen lassen und nicht nur 'vorname'. Leider weiss ich eben nicht wie ich das in der SELECT Anweisung dem entsprechend zusammen stellen kann!? Wenn ich z.B. 80541 als PLZ in das Suchformular eingebe soll es in der DB gefunden und ausgegeben werden. Die Begriffsuche soll eben genau sein und nicht nur ungefähr. Währe super lieb, wenn Ihr mir helfen könntet. Danke!