Sehr geehrte Damen und Herren,
ich Programmiere gerade eine Website und dabei hab ich gerade ein Problem.
Ich habe eine Suchfunktion das aus einem Eingabefeld besteht und soweit alles Funktioniert wie ich es will. Wenn ich den Namen Hans suche gibt er mir alle Datensätze wo der Name Hans vorkommt.
z.b.
Firma: xy GmbH
Vorname: Hans
Nachname: Mustermann
Nun Sucht er aber in jedem Feld nach Hans wo dann sowas raus kommt:
Firma: Hans GmbH
Vorname: Mario
Nachname: Mustermann
Nun will ich für jedes einzelne Feld ein eigenes Input feld hinzufügen das in den jeweiligen Spalten der Datenbanktabelle sucht. Diese muss er aber nicht alle ausfüllen und können somit Leer bleiben. Wenn das Input Feld leer bleibt soll einfach nicht danach gesucht werden.
Ich hoffe ich habe das verständlich formuliert und Ihr könnt mir da weiter helfen.
Hier einmal mein Code:
und mein Formular
ich Programmiere gerade eine Website und dabei hab ich gerade ein Problem.
Ich habe eine Suchfunktion das aus einem Eingabefeld besteht und soweit alles Funktioniert wie ich es will. Wenn ich den Namen Hans suche gibt er mir alle Datensätze wo der Name Hans vorkommt.
z.b.
Firma: xy GmbH
Vorname: Hans
Nachname: Mustermann
Nun Sucht er aber in jedem Feld nach Hans wo dann sowas raus kommt:
Firma: Hans GmbH
Vorname: Mario
Nachname: Mustermann
Nun will ich für jedes einzelne Feld ein eigenes Input feld hinzufügen das in den jeweiligen Spalten der Datenbanktabelle sucht. Diese muss er aber nicht alle ausfüllen und können somit Leer bleiben. Wenn das Input Feld leer bleibt soll einfach nicht danach gesucht werden.
Ich hoffe ich habe das verständlich formuliert und Ihr könnt mir da weiter helfen.
Hier einmal mein Code:
PHP-Code:
require_once("models/config.php");
if (!securePage($_SERVER['PHP_SELF'])){die();}
require_once("models/header.php");
if(!isUserLoggedIn()) { header("Location: login.php"); die(); }
$con=mysqli_connect('xxx','xxx','xxx','xxx');
if (mysqli_connect_errno()) {
echo mysqli_connect_error();
exit();
} else {
echo "erfolgreiche db verbindung";
}
$search_output = "";
if(isset($_POST['searchquery']) && $_POST['searchquery'] != ""){
$searchquery = preg_replace('#[^a-z 0-9./?]#i', '', $_POST['searchquery']);
if($_POST['filter1'] == "benutzer"){
$sqlCommand = "SELECT firma, vorname, nachname, homepage, telefonnummer, adresse, plz, wohnort, email
FROM
uc_users
WHERE
firma LIKE '%".$_POST['searchquery']."%'
OR
vorname LIKE '%".$_POST['searchquery']."%'
OR
nachname LIKE '%".$_POST['searchquery']."%'
OR
homepage LIKE '%".$_POST['searchquery']."%'
OR
telefonnummer LIKE '%".$_POST['searchquery']."%'
OR
adresse LIKE '%".$_POST['searchquery']."%'
OR
plz LIKE '%".$_POST['searchquery']."%'
OR
wohnort LIKE '%".$_POST['searchquery']."%'
OR
email LIKE '%".$_POST['searchquery']."%'";
}
$query = mysqli_query($con, $sqlCommand) or die(mysql_error());
$count = mysqli_num_rows($query);
if($count > 1){
$search_output .= "<p>$count Ergebnisse für <strong>$searchquery</strong></p> <br />";
while($row = mysqli_fetch_array($query)){
$firma = $row["firma"];
$vorname = $row["vorname"];
$nachname = $row["nachname"];
$homepage = $row["homepage"];
$telefonnummer = $row["telefonnummer"];
$adresse = $row["adresse"];
$plz = $row["plz"];
$wohnort = $row["wohnort"];
$email = $row["email"];
$search_output .= "Firma: $firma <br /> -
Vorname: $vorname <br />
Nachname: $nachname <br />
Adresse: $adresse <br />
Wohnort: $wohnort <br />
PLZ: $plz <br />
Email: $email <br />
Telefonnummer: $telefonnummer <br />
<hr>Homepage: $homepage<br /></hr> ";
} // close while
} else {
$search_output = "<p>0 Ergebnisse für: <strong>$searchquery</strong></p><br />";
}
}
Code:
<div id='main'> <h2>suche</h2> <article> Hier können sie Benutzer suchen. </article> <br /> <br /> <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post"> <label style="width:80px;">Suche nach:</label> <input name="searchquery" type="text" size="44" maxlength="88"> <br /> <br /> <label style="width:80px;"> </label> <select name="filter1"> <option value="benutzer">Benutzer</option> </select> <br /> <br /> <input name="myBtn" type="submit"> <br /> </form> <article> <?php echo $search_output; ?> </article> </div>
Kommentar