【问题标题】:SQL error Catchable fatal error: Object of class stdClass could not be converted to stringSQL 错误可捕获的致命错误:stdClass 类的对象无法转换为字符串
【发布时间】:2017-01-11 05:14:51
【问题描述】:
function getjobid() {
global $geotag_table, $wpdb;
$qry = "SELECT * FROM mirdc_jo_form WHERE  jo_id = (SELECT MAX(jo_id)  FROM mirdc_jo_form)";
$desc = $wpdb->get_results($qry);

return $desc; }

你们能帮帮我吗..我正在尝试从我的表格中获取 id 并尝试将数据显示给我的 wordpress..

<?php  foreach (getjobid() as $generatedid) {
echo $generatedid;?>  #<------ this is the error                       

这是我的 wordpress 代码.. 你能教我如何将对象转换为字符串.. 将结果显示给我的 wordpress。

【问题讨论】:

  • 错误是不言自明的,您正在尝试回显对象。 &lt;?php $array_data = getjobid(); ?&gt; 现在先打印,然后相应地工作。显示使用打印此变量后得到的内容
  • 请尝试 $desc = $wpdb->get_results($qry,ARRAY_A);
  • 呃对不起对不起我只是一个初学者我如何将它转换为字符串?
  • @manish jesani 错误消失了,但它显示“数组”..
  • @ElliJoshuaRey print_r($generatedid);

标签: php sql wordpress


【解决方案1】:

请试试这是你的代码的面糊

function getjobid() {
global $geotag_table, $wpdb;
$qry = "SELECT jo_id FROM mirdc_jo_form WHERE  jo_id = (SELECT MAX(jo_id)  FROM mirdc_jo_form)";
$desc = $wpdb->get_col($qry);

return $desc[0]; }
$lastid = getjobid();

【讨论】:

  • ohhhhh...
  • @ElliJoshuaRey 您的查询 SELECT * FROM mirdc_jo_form ......您从数据库表中获取所有字段,但您只需要一个字段“jo_id”。那你为什么要得到所有领域。因此您的信息会因大型数据库而异,您会从数据库中获得一个字段 mysql 查询快速响应,否则您的网站会慢....
  • ohhhhhhhhhhh isee thx 为您提供的信息,我将永远记下它:D
  • sr 我有一个问题.. 如果我的桌子上没有价值怎么办.. 如果我的桌子上没有数据。我想要值为 1.. 尝试一个 if 语句,但它有错误if (!$lastid) { echo "Ther is no data"; echo $val1; } else { foreach ($lastid as $row) { $auto = $row-&gt;jo_id; if ($auto === ''){ echo "There is no id!"; } else { echo $auto; } } } 错误的部分是当我的桌子上有一个值时,它给了我很多9999999(我的最后一个 id 是 9)为什么它给了我这么多 9?
  • 愚蠢的我 xD 为什么当我已经得到 jo_id if (!$lastid) { echo "Ther is no data"; echo $val1; } else { echo $lastid-&gt;jo_id; } 时我还要放置一个 foreach 语句
【解决方案2】:

$generatedid 是一个Object 并包含整行数据。您需要从该行中指定您想要的列。

您应该尝试var_dump($generatedid) 来查看所有数据。

foreach (getjobid() as $generatedid) {
    echo $generatedid->jo_id; // or whatever ID you want from DB 
}

【讨论】:

  • OWWW 我明白了:(我太菜鸟了 THX SR T_T
  • 我之前试过 ---- echo $generatedid["jo_id"];但这是错误的
  • 这是一个对象,你应该试试$generatedid-&gt;jo_id
  • 我是新来的,当我不懂编程时,它对我有很大帮助:D 如果我有问题,很多人都想帮忙..
  • 这是我们所有人的学习阶段。每个人在某个时间点都是新的。保持精神,继续前行。祝你一切顺利。 :)
猜你喜欢
  • 2015-11-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多