我有一个PHP脚本,用于查询数据库并在<option>
标记内填写一些<select>
标记。请参阅以下代码:
$stmt = sqlsrv_query($dbc, $tsql, $params, $dbcOptions);
if($stmt === false) {
die ( print_r (sqlsrv_errors(), true));
}
$rows = sqlsrv_num_rows($stmt);
#echo $rows.'rows';
echo '<!--'.$rows.'-->';
echo '<select onchange="getNamesByDep(this.value)">';
echo '<option value="">Select a Department. . .</option>';
for ($i = 1; i <= $rows; $i++)
{
if(sqlsrv_fetch($stmt) !== false)
{
$DepName = sqlsrv_get_field($stmt,0);
echo ' <option row="'.$i.'" value="'.$DepName.'">'.$DepName.'</option>'."\r\n";
}
}
echo '</select>';
echo 'Debugging';
它永远不会在页面的HTML中回显</select>
或Debugging
。
我知道我已正确配置$dbc
,$tsql
,$params
和$dbcOptions
,因为我从查询中获得了所需的结果。
我的Web服务器(WIMPServer)没有捕获语法错误吗?
答案 0 :(得分:3)
我想我找到了它:
for ($i = 1; i <= $rows; $i++)
您在第二个i
之前忘记了美元符号。它应该是这样的:
for ($i = 1; $i <= $rows; $i++)
答案 1 :(得分:1)
for ($i = 1; i <= $rows; $i++)
应该是
for ($i = 1; $i <= $rows; $i++)
答案 2 :(得分:0)
发现错误。
而不是:
for ($i = 1; i <= $rows; $i++)
{
etc
}
我需要:
for ($i = 1; $i <= $rows; $i++)
{
etc
}