首先感谢阅读本文。
我有这个功能设置
function SelectHydross($conn){
$sql = "SELECT * from HydrossTheUnstable";
$data = $conn->query($sql);
$title = $data->fetchColumn(1);
echo '<div><table>';
echo '<tr>';
echo "<th>" . $title['BossName'] . "</th>";
哪个给了我Warning: Illegal string offset 'BossName'
第70行是:echo "<th>" . $title['BossName'] . "</th>";
如果我使用此代码
function SelectHydross($conn){
$sql = "SELECT * from HydrossTheUnstable";
$data = $conn->query($sql);
$title = $data->fetch(PDO::FETCH_ASSOC);
echo '<div><table>';
echo '<tr>';
echo "<th>" . $title['BossName'] . "</th>";
它跳过第一列并从第二列开始 我现在不知道任何出路,我想请求帮助!
这就是我的表格的样子
答案 0 :(得分:2)
正如我在评论中所概述的那些我不会重复(您可以阅读这些内容),您可以使用带有可以跳过一行的偏移的LIMIT。
I.e。:SELECT语句中的LIMIT 1,10
。
手册:
示例:
[LIMIT {[offset,] row_count | row_count OFFSET offset}]
答案 1 :(得分:1)
如评论中所述,fetchColumn
定位一行并返回一个值,而不是一个数组。
替换此行:
$title = $data->fetchColumn(2);
带
$title = $data->fetch(PDO::FETCH_ASSOC);
并且您的第一个解决方案将起作用。
编辑:如果没有,也许您在此行之前获取结果。 PDOStatement::fetch
返回行集的第一行,它不会从第二行开始。