Ich versuche, eine Suche in PHP mit PDO zu erstellen. Es hat zwei Eingabefelder. Derzeit Wenn ich eines der Felder und den zugehörigen PHP-Code entferne, ruft es die Daten aus der Datenbank ab. Wenn beide vorhanden sind, beschränkt der Inhalt des Felds "Witz" die Daten nur, wenn die Eingabe "Autor" vorhanden ist.PHP PDO mehrspaltige Suche
dies ist der HTML:
<div>
<form action="search.php" method="get">
<label for="text">Joke</label>
<input type="text" name="text" id="text">
<label>Author</label>
<label for="author">author</label>
<select name="author" id="author">
<option>select</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
<button type="submit" class="btn btn-orange">Go</button>
</form>
</div>
ist dies die PHP:
<?php
$query = "SELECT * FROM joke WHERE TRUE";
$bind = Array();
if ($_GET)
{
if ($_GET["text"] && $_GET["text"] != "") {
$query .= " and joke_text like :joke_text";
$bind[':joke_text'] = "%{$_GET['text']}%";
}
if ($_GET["author"] && $_GET["author"] != "") {
$query .= " and author_id = :author_id";
$bind[':author_id'] = "{$_GET['author']}";
}
$stmt = $dbConnection->prepare($query);
$stmt->execute($bind);
$rows = $stmt->fetchAll();
var_dump($rows);
}
?>
ich keine Fehlermeldungen erhalten, die vorhanden sind.
Könnte jemand bitte einen Blick darauf werfen?
Was '$ dbConnection-> errorInfo()' zurückgibt? – marian0
AFAIK sollte es sein $ bind ['joke_text'] 'anstelle von $ bind [': joke_text']' –
Also wenn es nicht funktioniert, was ist die var_dump (oder print_r) von $ _GET? – MacPrawn