#php #mysql
#php #mysql
Вопрос:
<?php
require_once('inc/dbc1.php');
$pdo = new PDO('mysql:host=###;dbname=#####', $username, $password);
$pdo->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
$sth = $pdo->prepare('
SELECT name
FROM Department
;');
$sth->execute(array(
$pID
));
?>
<div id="popup_name" class="popup_block">
<h2 style="padding:0; margin:0;">Add a:</h2><br>
<form action="inc/add_p_c_validate.php" method="post">
Professor<input type="radio" name="addType" value="Professor" />
amp;nbsp;amp;nbsp;Course<input type="radio" name="addType" value="Course" />
<br><br>Name: <input type="text" name="name" /><br>
Department: <select id='deptName' name='deptName'>
<select name="deptName">
<?php
while($row = $sth->fetch(PDO::FETCH_ASSOC)) {echo "<option>".$row['name']."</option>";}
?>
</select>
Это не выдает никакой ошибки, просто не показывает выпадающий список с какой-либо опцией в нем. Я пробовал использовать запрос phpmyadmin, и он возвращает все названия отделов…
Вывод для выпадающего списка (ничего) :
Кто-нибудь?
Комментарии:
1. Просто небольшая подсказка по улучшению: если вы не используете заполнители в запросе, удобнее использовать
PDO::query()
вместоPDO::prepare() PDO::execute()
2. @user700070: посмотрите документацию?
3. @user700070 Просто ради любопытства, попробуйте
$data = $sth->fetchAll(); print_r($data);
и посмотрите, печатает ли что-нибудь.
Ответ №1:
Department: <select id='deptName' name='deptName'>
При первом выборе вы не закрыли его и не предоставили никаких опций. Удалите этот выбор первым, и второй выбор сработает.