0

チェックボックスの入力に基づくデータを含む複数の行をエコーアウトしようとしてスタックしました。現在のコードでは、チェックボックスがいくつチェックされていても、1 つのチェックボックスからのデータのみを処理します。助けてください!

while ($row = mysql_fetch_assoc($r)) {
    $pals .= '<input type="checkbox" name="pal_num[]" value="'
        . $row['pal_num'] . '">' . $row['pal_num'] . '<br>';
}

if ($pal == '') {
    echo '';
} else {
    echo '<form name="get_pal" action="post2.php" method="POST">';
    echo $pals;
    echo '<input type="submit" name="post" value="Go!">';
    echo '</form>';
}

post2.php:

$w = $_POST['pal_num'];
$rrr = mysql_query("SELECT * FROM pl_tab WHERE pal_num" . $w[0]);

while ($row = mysql_fetch_array($rrr)) {
    echo '<tr><td>' . '&nbsp' . '</td>';
    echo '<td rowspan="5">' . $row['descr'] . '</td>';
    echo '<td><b>' . 'Total weight' . '<b></td>';
    echo '<td>' . '&nbsp' . '</td><td>' . '&nbsp' . '</td></tr>';

    echo '<td>' . '&nbsp' . '</td>';
    echo '<td colspan="3">' . '&nbsp' . '</td>';

    //this part should multiple based on how many checkboxes are ticked.
    echo '<tr><td>' . $row['l_num'] . '</td>';
    echo '<td>' . $row['pal_num'] . '</td>';
    echo '<td>' . $row['weight 1'] . '</td><td>' . $row['weight 2'] . '</td></tr>';
}
echo "</table>";
}
4

1 に答える 1

1

これはうまくいくかもしれません:

$w = "'".implode("','",$_POST['pal_num'])."'";
$rrr = mysql_query("SELECT * FROM pl_tab WHERE pal_num in (".$w.");");

...そして、あなたは:)のecho "<table>";前にa を忘れているかもしれませんwhile

于 2013-09-01T04:13:32.187 に答える