似乎无法找到解决此特定问题的帖子。 SQL查询(如下所示)在我从shell执行时正常工作,但在PHP中抛出一个未定义的索引。我认为问题在于它不能识别在php中时属性的歧义。为什么这个JOIN查询在shell中而不是在php中工作?
错误我在PHP中得到的是:
Notice: Undefined index: s.RowNumber in /home/xx/xx/xxx/xxx/checkAvailability.php on line 14.
代码:
<?php
include'connect.php'
?>
<form method="post" action="chooseDate.php">
<?php
$sql = "SELECT s.RowNumber
FROM Seat AS s LEFT JOIN Booking AS b
ON s.RowNumber = b.RowNumber
AND b.PerfDate = '2016-12-12'
AND b.PerfTime = '20:30:00'
WHERE b.RowNumber IS NULL";
$handle = $conn->prepare($sql);
$handle->execute();
$res = $handle->fetchAll();
foreach($res as $row) {
echo "<input name='Seat' type='checkbox' value=".$row['s.RowNumber']."><br>";
}
?>
<input class="mybutton" type="submit" value="Choose Date"/>
</form>
任何人都可以对这个问题解释一下?提前致谢。
如果你_“未定义指数” _,它不是SQL查询这是个问题。阅读更多关于它在这里:http://stackoverflow.com/questions/4261133/php-notice-undefined-variable-and-notice-undefined-index –