为了账号安全,请及时绑定邮箱和手机立即绑定

从mysql表中获取数据并显示

从mysql表中获取数据并显示

PHP
MM们 2021-12-24 15:25:51
我试图获取存储在数据库中的图像名称并显示它,但它不起作用?谁能告诉我下面的代码有什么问题:<p class="phase-title-en"><?php  $title="SELECT DISTINCT record_step_one FROM phase_one_data"; $vartitle=$dbh->prepare($title);  $vartitle->execute();  $result= $vartitle->fetch();  ?>   </p>   <?php foreach($result as $fn_title) {     echo "<p>  '".$fn_title['record_step_one']."'</p>";    }    ?>我的数据库看起来像这样:-
查看完整描述

1 回答

?
智慧大石

TA贡献1946条经验 获得超3个赞

您的主要问题是您使用的是 PDOfetch()方法,该方法仅返回结果集的下一行(在您的情况下为第一行)。

这样,当您执行 a 时foreach,您实际上是在迭代第一行的列(而不是按照您的预期遍历所有行)。

因此,您的代码可能会抛出大量错误消息(实际上是 E_NOTICES),告诉您您正在尝试将字符串用作数组,因为循环 ( $fn_title) 中的每个值都是包含第一行 (5, 2、鹰等)。

编辑:对不起,但在我的原始回复中,我没有注意到您查询中的 DISTINCT 关键字。所以实际上,foreach 只会运行一次,并且值将是 string eagle。但是,问题还是一样,record_step_onestring 里面没有索引eagle

您的解决方案的第一步是替换fetch()fetchAll(),并检查可能出现的任何其他错误(例如,我们看不到$dbh您的代码中在哪里被实例化,这可能是也可能不是问题)。


查看完整回答
反对 回复 2021-12-24
  • 1 回答
  • 0 关注
  • 176 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号