我收到以下错误...
解析错误:语法错误,第98行的....\index.php中的意外T_AS
对于以下脚本......
<?php
try {
$db = new PDO('mysql:host=localhost;dbname=db', 'user', 'pw');
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->beginTransaction();
$stmt = $db->prepare("SELECT * FROM tablename");
$stmt->execute();
while($db->fetch(PDO_FETCH_ASSOC) as $row) {
$id= $row['id'];
$name= $row['name'];
}
$db->commit();
}
catch (PDOException $e)
{
$db->rollback();
echo "There was a system error.<br>".$e->getMessage();
}
?>
Run Code Online (Sandbox Code Playgroud)
知道什么是错误吗?我检查了丢失的分号,逗号和作品但没有得到任何结果!
解析错误:语法错误,第98行的....\index.php中的意外T_AS
T_AS是asPHP解释器中的标记.尝试解析代码的语法时出乎意料.
as仅在foreach循环中有效,并且您正在使用while.
将while循环更改为foreach循环.
致命错误:在113行的index.php中调用未定义的方法PDO :: fetch()
这是运行时错误 - PDO对象没有调用方法fetch().你在呼唤fetch()正确的对象吗?
查看文档.
正如Wrikken在评论中所说,它将是你的$stmt对象的一种方法.
因为您在'while'循环中使用'as'关键字,这是无效的.将'while'改为'foreach',你很高兴.
| 归档时间: |
|
| 查看次数: |
7340 次 |
| 最近记录: |