Я пытаюсь создать поле выбора, которое будет отображаться несколько раз на странице, где параметры заполняются моим SQL-запросом. Я могу получить это, чтобы отображать один раз, но когда я пытаюсь создать второй, идентичный флажок select, в раскрывающемся списке нет параметров. Вот что я имею в виду:Reuse PDO result set несколько раз
<?php include_once "app/init.php";
$dataQuery = $db->prepare("
SELECT column FROM dataType");
$dataQuery->execute([]);
$dataTypes = $dataQuery->rowCount() ? $dataQuery : [];
?>
<div>
<select>
<?php foreach($dataTypes as $dataType): ?>
<option>
<?php echo $dataType['dataType']; ?>
</option>
<?php endforeach; ?>
</select>
</div>
Но когда я пытаюсь добавить второй флажок, он пуст. Я создаю таблицу, которая будет иметь это поле выбора в каждой строке, чтобы пользователь мог выбрать тип данных, поэтому мне нужно несколько раз обновить его несколько раз. Я новичок в php, так что это лучший способ сделать это?
Мой init.php показать, используя PDO:
<?php session_start();
$_SESSION['user']=1;
$db = new PDO ('mysql:dbname=myDB;host=localhost', 'root', 'root');
if(!isset($_SESSION['user'])) {
die('You are not signed in');
};
Вы просите для [курсора] (http://stackoverflow.com/questions/1155211/what-is-pdo-scrollable -курсор) вы можете перемотать назад. Не знаю, поддерживает ли MySQL или PDO это. Однако часто рекомендуется как можно скорее освободить набор результатов (если не для производительности, по крайней мере, с точки зрения дизайна). Поэтому я бы действительно сохранил информацию в переменной, прежде чем использовать ее. –