10/10/2018, 13:22
Không thể lấy được kết quả select form ?
Mình có 1 đoạn code sau viết theo kiểu PDO
Mình muốn select form có thể hiện thị giá trị trong vòng lập và +1 .
Mong mọi người giúp đỡ
Code:
<select name="position" tabindex='2'> <?php $sql = "SELECT count(cat_id) AS count FROM categories"; $s = $pdo->query($sql); $rows = $s->rowCount(); if( $rows == 1 ){ list($num) = $s->fetchAll(PDO::FETCH_NUM); for ($i=1; $i < $num+1; $i++) { echo "<option value='{$i}'"; if (isset($_POST['position']) && $_POST['position'] == $i) echo "selected='selected'"; echo ">".$i."</option>"; } } ?> </select>
Mong mọi người giúp đỡ
Bài liên quan
đây là form mình muốn thực hiện bạn nào có cách nào giúp mình với
Thật ra mình chỉ muốn convert đoạn msqli mà mình làm thành pdo
PDO là class giúp việc truy xuất database dễ dàng thôi. convert là sao.
Cái chỗ if($rows == 1) thì chỉ bằng 1 nó mới lặp nên chỉ thấy 1 giá trị là đúng rồi.
///some thing
}
$sql = "SELECT cat_id AS count FROM categories";
$s = $pdo->query($sql);
$rows = $s->rowCount();
if( $rows > 0 ){
list($num) = $s->fetchAll();
foreach ( $num as $i ) {
echo "<option value='{$i}'>".$i."</option>";
}
}
$sql = "SELECT cat_id AS count FROM categories";
$s = $pdo->query($sql);
$rows = $s->rowCount();
if( $rows > 0 ){
while ( list($count) = $s->fetchAll()) {
echo "<option value='{$count}'>".$count."</option>";
}
}
///
bạn dùng câu truy vấn Select COUNT() do vậy dù thế nào đi nữa thì cũng chỉ trả về 1 row, vì Count là hàm đếm.
Bạn hãy sửa lại một chút:
Select cat_id from categories
Câu lệnh trên sẽ trả về các cat_id có trong bảng categories của bạn, khi ấy bạn dùng vòng lặp để hiển thị ra.
Chúc bạn vui.