我正在尝试创建一个 php 文件,当单击“编辑”链接时,它将获取该作业 ID 并在我的应用程序表中列出 jobRef 的行数。
这只是列出我网站上提供的不同职位的所有申请。
<?php
require 'mysqlcon.php';
if(isset($_GET['id']))
{
$stmt = $pdo->query('SELECT FROM applications WHERE applicationID = :id');
$results = $stmt->fetchAll();
echo "<table><tr><td>Job Reference</td><td>Job Title</td><td>Job Location</td><td>Job Description</td><td>Salary</td><td>Availability</td> <td>Category</td><td>Apply</td>";
foreach ($results as $row) {
echo "<tr><td>".$row['applicationID']."</td>". "<td>".$row['jobRef']."</td>", "<td>".$row['fName']."</td>", "<td>".$row['lName']."</td>";
}
}
?>
我的错误是我无法让我的代码工作;我尝试过使用“PDO::FETCH_ASSOC”但仍然没有帮助。
关于我哪里出错了有什么想法吗?
最佳答案
您需要使用prepare和 execute ,用于绑定(bind)/参数化查询。您还需要将值传递给查询。试试这个:
$stmt = $pdo->prepare('SELECT * FROM applications WHERE applicationID = ?');
$stmt->execute(array($_GET['id']));
$results = $stmt->fetchAll();
您的select
查询还需要您选择的值。我输入了*
这是每一列。如果您只想列出某些列,并用逗号分隔。
echo
中的连接和逗号分隔很奇怪,但我认为应该有用..
最后一点,你的table
不关闭;您应该添加 </table>
foreach
之后.
关于错误使用的最后附加说明,http://php.net/manual/en/pdo.errorinfo.php .
关于php - select语句在foreach中填充数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34830676/