我有以下函数:
function getSystemNames($dbh, $myid) {
$sql = $dbh->prepare('
SELECT system_name
FROM product_systems
WHERE user_id = :myid
ORDER BY `system_name` ASC
');
$sql->bindValue('myid', $myid);
$sql->execute();
return $sql;
}
;
然后,我将以下代码与我的HTML混合在一起:
<select id='group' class='select' name='group'><option value='000'>None</option>
<?php
$results = getSystemNames($dbh, $myid);
while ($row1 = $results->fetch(PDO::FETCH_ASSOC)){
echo "<option value='$row1[system_name]'>$row1[system_name]</option>";
}
?>
</select>
我正在尝试合并两者,所以我的 HTML 中没有那么多代码,但在过去的一个小时里我无法弄清楚,正在寻求社区的帮助。我尝试无济于事:
function getSystemNames($dbh, $myid) {
$sql = $dbh->prepare('
SELECT system_name
FROM product_systems
WHERE user_id = :myid
ORDER BY `system_name` ASC
');
$sql->bindValue('myid', $myid);
$sql->execute();
while ($row1 = $sql->fetch(PDO::FETCH_ASSOC)) {
return "<option value='$row1[system_name]'>$row1[system_name]</option>";
}
}
;
function getSystemNames($dbh, $myid) {
$sql = $dbh->prepare('
SELECT system_name
FROM product_systems
WHERE user_id = :myid
ORDER BY `system_name` ASC
');
$sql->bindValue('myid', $myid);
$sql->execute();
$result = $sql->fetchAll(); <----- fetch All the data
return $result;
}
它将返回一个多维数组。 然后在 HTML 部件中使用foreach
来获得所需的输出。
附言在这里}
后你不需要;
。
您必须在 while 循环
外部创建一个临时变量,并在 while 循环内连接它。然后返回临时变量。并做echo getSystemNames(..)