【发布时间】:2014-09-25 12:05:10
【问题描述】:
抱歉,我在 PHP 方面有点菜鸟,但我只是想知道是否有人知道我如何解决这个 PHP/SQL 问题。
我有一个从数据库中获取所有用户的 PDO 语句。 使用数据库中的用户数组,我创建了一个 foreach 循环,以在我想用来选择特定用户的表中显示所有用户,在我选择的用户的行中输入一个数字,然后单击提交并存储用户名和号码。稍后我将使用此信息填充另一个数据库。
我的问题是,我似乎无法引用用户或表格中的号码来提取我输入的用户和号码。当我尝试请求在 index.php 中输入的编号时,如果我在表格中为最终用户输入一个数字,它只会显示一个数字。当我尝试查看 FullName 时,它永远无法正常工作,并且出现“未定义索引:FullName”错误。 我还指定在表单中“发布”,但它似乎没有这样做。 有人有什么想法吗?
谢谢
//function.php
function getName($tableName, $conn)
{
try {
$result = $conn->query("SELECT * FROM $tableName");
return ( $result->rowCount() > 0)
? $result
: false;
} catch(Exception $e) {
return false;
}
}
//form.php
<form action "index.php" method "POST" name='form1'>
<table border="1" style="width:600px">
<tr>
<th>Name</th>
<th>Number Entered</th>
<tr/>
<tr>
<?php foreach($users as $user) : ?>
<td width="30%" name="FullName">
<?php echo $user['FullName']; ?>
</td>
<td width="30%">
<input type="int" name="NumberedEntered">
</td>
</tr>
<?php endforeach; ?>
</table>
<input type="submit" value="submit"></td>
</form>
//index.php
$users = getName('users', $conn);
if ( $_REQUEST['NumberedEntered']) {
echo $_REQUEST['NumberedEntered'];
echo $_REQUEST['FullName'];
}
【问题讨论】:
-
您应该将
<tr>标签放在foreach 循环中,因为您也在循环中关闭它。目前您只打开一行,但为每个用户关闭一个。