La recherche contient uniquement les résultats pour la valeur d'entrée de recherche soumise.
<p>Bonjour, je serais heureux de vous aider avec votre script de recherche si possible. </p><p>J'ai une fonction de recherche qui récupère des données sur les véhicules de la base de données à l'aide de trois types d'entrées de recherche et d'un bouton d'envoi. </p><p>Entrée 1 : recherche par liste d'options (recherchea)</p><p>Entrée 2 : recherche de texte (rechercheb)</p><p>Entrée 3 : deux sélections simples pour sélectionner la recherche (vous pouvez sélectionner un ou deux boutons)</p><p>Il existe également un bouton Soumettre. </p><p>Lorsque je soumets une recherche, le code PHP suivant s'exécute. Il affichera les résultats, mais seulement s'ils correspondent au premier résultat correct dans la base de données. Je souhaite qu'il puisse rechercher des résultats qui contiennent uniquement la valeur d'entrée de recherche soumise. </p><p>Par exemple, si je sélectionne une option dans l'entrée 1 et un bouton radio dans l'entrée 3, la recherche ne devrait trouver que les lignes contenant les deux valeurs (si cela a du sens). </p><p><br /></p>
<pre class="brush:php;toolbar:false;"><?
//Véhicules
if (in_array($_POST['searcha'], $search_a_option_list)) {
$stmt = $pdo->prepare('SELECT * FROM country WHERE inth = ?');
$stmt->execute([ $_POST['searcha'] ]);
$search_results = $stmt->fetchAll(PDO::FETCH_ASSOC);
} sinon si ($_POST['searchb']) {
$stmt = $pdo->prepare('SELECT * FROM country OÙ Bunty LIKE ?');
$stmt->execute([ '%' . $_POST['searchb'] . '%' ]);
$search_results = $stmt->fetchAll(PDO::FETCH_ASSOC);
} sinon if (isset($_POST['radio1'], $_POST['radio2'])) {
$stmt = $pdo->prepare('SELECT * FROM country WHERE ref = ? OR ref1 = ?');
$stmt->execute([ 'In', 'On' ]);
$search_results = $stmt->fetchAll(PDO::FETCH_ASSOC);
} sinon if (isset($_POST['radio1'])) {
$stmt = $pdo->prepare('SELECT * FROM country WHERE ref = ?');
$stmt->execute([ 'Dans' ]);
$search_results = $stmt->fetchAll(PDO::FETCH_ASSOC);
} sinon if (isset($_POST['radio2'])) {
$stmt = $pdo->prepare('SELECT * FROM country WHERE ref1 = ?');
$stmt->execute([ 'On' ]);
$search_results = $stmt->fetchAll(PDO::FETCH_ASSOC);
} autre {
$error = 'Aucune option sélectionnée !';
}
?>≪/pré>
<p>Existe-t-il un moyen simple d'ajuster ce script pour refléter la recherche saisie ? Je commence tout juste à apprendre PHP, donc un guide approprié serait parfait. Merci. </p><p><br /></p>