Ich erstelle eine Suchleiste auf meiner Website, so dass Benutzer nach anderen Benutzern suchen können und es funktioniert, aber wenn ich einen Benutzernamen eingeben, werden alle Benutzernamen angezeigt. Wie kann ich nur den Benutzer anzeigen, den ich suche und wenn der Benutzer nicht registriert ist, geben Sie eine andere Aussage ein?PHP Benutzersuche
search.php:
<?php
include("connect.php");
GLOBAL $usernam;
$output = '';
if(isset($_POST['Search'])) {
if (empty($_POST["searchbar"])) {
echo"You didn't enter anything . ";
} else {
$searchq = $_POST['Search'];
$searchq = preg_replace("#[^0-9a-z]#i", "",$searchq);
$query = mysqli_query($conn ,"SELECT * FROM users WHERE usernam LIKE '%$searchq%'") or die("Could not search");
$count = mysqli_num_rows($query);
if($count == 0){
echo "There was no search results . ";
} else {
while($row = mysqli_fetch_array($query)) {
$usernam = $row['usernam'];
$id = $row['id'];
$output .= '<div>' .$usernam. '</div>';
}
}
}
}
?>
<html>
<head>
<title>Interpage</title>
</head>
<body>
<?php print("$output"); ?>
</body>
</html>
Willst du nicht '$ searchq = $ _POST ['searchbar'];' nicht '$ searchq = $ _POST ['Search'];'? – Sean
'Suche' ist der Name meiner Schaltfläche. 'searchbar' ist der Name der Suchleiste – mrpunani
Exactly. Mit '$ searchq = $ _POST ['Search'];' suchst du nach '" SELECT * FROM Usern WHERE usernam LIKE '% $ _ POST [' Search ']%' "' (deine Schaltfläche), aber ich nehme dich eigentlich an möchte suchen "" SELECT * FROM Benutzer WHERE Benutzername LIKE '% $ _ POST [' searchbar ']%' "(Ihre Suchleiste). Deshalb empfehle ich, zu '$ searchq = $ _POST ['Search'];' (Ihr Suchbarwert) – Sean