我试图创建一个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>";
}
}
?>
我的错误是我无法让我的代码工作;我尝试过使用&#34; PDO :: FETCH_ASSOC&#34;但仍然没有帮助。
关于我哪里出错的任何想法?
答案 0 :(得分:2)
对于绑定/参数化查询,您需要使用prepare和execute。您还需要将值传递给查询。试试这个:
$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。