PHP beginner |
|
Ik was bezig met een scriptje waarbij je kan zoeken naar gebruikersnamen.
Nu bij een gewone mysql_query gebruik je de % tekens, maar hoe je het doet bij een prepared statement vind ik niet.
wanneer ik:
$sql = "SELECT gebruikersnaam FROM leden WHERE gebruikersnaam = %?%";
doe, dan krijg ik erop een error:
Citaat: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '%?%' at line 1
ik had het dan geprobeerd om dit te doen:
$string = "%".$_POST['gebruikersnaam']."%";
maar ook zonder resultaat.
Weet iemand misschien hoe ik dit wel juist kan doen?
Mijn code:
$sql = "SELECT gebruikersnaam FROM leden WHERE gebruikersnaam = ?";
if($statement = $dbc->prepare($sql)) {
$string = "%".$_POST['gebruikersnaam']."%";
$statement->bind_param("s", $$string);
if($statement->execute()) {
$statement->bind_result($gebruikersnaam);
echo "<ul>";
while($statement->fetch()) {
echo "<li>".$gebruikersnaam."</li>";
}
echo "</ul>";
} else {
die($statement->error);
}
} else {
die($dbc->error);
}]
$sql = "SELECT gebruikersnaam FROM leden WHERE gebruikersnaam = ?"; if($statement = $dbc->prepare($sql)) { $string = "%".$_POST['gebruikersnaam']."%"; $statement->bind_param("s", $$string); if($statement->execute()) { $statement->bind_result($gebruikersnaam); while($statement->fetch()) { echo "<li>".$gebruikersnaam."</li>"; } } else { } } else { }]
|