sql >> Databáze >  >> RDS >> Mysql

Prohledejte tabulku mysqli pomocí formuláře a zobrazení výsledků

Ne, vytvořili jste připravený příkaz, pak jste použili normální dotaz, který má zástupné symboly, proto to nefunguje. Proveďte připravený příkaz a poté načtěte výsledek z tohoto připraveného příkazu.

$query = "SELECT * FROM photos WHERE cata=? OR catb=? OR catc=?";
$conn = $db->prepare($query);
$conn->bind_param("sss", $cata, $catb, $catc);
$conn->execute();
$conn->bind_result($cata, $catb, $catc);
?>
<table border="1">
<tr>
    <th>cata</th>
    <th>catb</th>
    <th>catc</th>
</tr>
<?php
while ($conn->fetch()) {

    echo '<tr>';
    echo '<td>' . $cata . '</td>';
    echo '<td>' . $catb . '</td>';
    echo '<td>' . $catc . '</td>';
    echo '</tr>';
}

Nebo pokud máte mysqlnd (nativní ovladač mysql / nebo nebudete mít tuto nedefinovanou funkci), můžete také použít get_result() :

$query = "SELECT * FROM photos WHERE cata=? OR catb=? OR catc=?";
$conn = $db->prepare($query);
$conn->bind_param("sss", $cata, $catb, $catc);
$conn->execute();
$results = $conn->get_result(); // i like this better
?>
<table border="1">
<tr>
    <th>cata</th>
    <th>catb</th>
    <th>catc</th>
</tr>
<?php
while ($row = $results->fetch_assoc()) {

    echo '<tr>';
    echo '<td>' . $row['cata'] . '</td>';
    echo '<td>' . $row['catb'] . '</td>';
    echo '<td>' . $row['catc'] . '</td>';
    echo '</tr>';
}

?>


  1. mysql pořadí podle vydání

  2. Jak mohu převést klíšťata do formátu data?

  3. Vyplnění pole Many2many (odoo 8)

  4. Jaká je délka řetězce id relace PHP?