【问题标题】:PHP echo not displaying inside of HTML <h3> tagsPHP 回显未显示在 HTML <h3> 标记内
【发布时间】:2014-10-06 17:48:25
【问题描述】:

在我的页面上,我通过 PHP PDO 从我的 SQL 数据库中获取了一堆信息。

$query=$pdo->prepare("SELECT `balance`,`followers`,`following` FROM `users` WHERE `username`=?");
$query->bindValue(1,$logged);
$query->execute();
$followerslist=$query->fetch();
$userbalance=$followerslist['balance'];
?>

<div class="span4">
    <h3>
        <?=$userbalance;?>
    </h3>
</div>

上面没有显示任何内容。只是空白。但是,当我删除 &lt;h3&gt; 标签时,它起作用了!如果我 echo $userbalance;&lt;h3&gt; 块之外,它也可以工作。如果我将$userbalance 更改为等于一些随机文本而不是SQL 表中的数据集,它会在&lt;h3&gt; 块内工作。由于某种原因,它拒绝显示来自我的 SQL 表的信息。

然而,每当我 echo 同一个 &lt;h3&gt; 块内的“关注者”和“关注者”时,它都会起作用。需要明确的是,“余额”是一个数值。

【问题讨论】:

  • 你是否有一些 CSS 写着h3 {display: none;} 或类似的东西?当您在浏览器中查看源代码时,您会看到什么输出?
  • var_dump($userbalance); 说什么?
  • @Jigar 结果是:string(5) "92485"
  • @Austin 之类的 h3 {color:white} 可能会阻止文本出现?如果您尝试选择它,您可以复制粘贴它吗?
  • 您是否确认(通过在其他地方进行测试)您的服务器配置为在“= ... ?>”序列中解释 php?许多服务器没有。这就是尝试&lt;?php 的意义所在。

标签: php html mysql sql pdo


【解决方案1】:

找到问题了!

在“bootstrap.css”中有一行叫做“text-rendering: optimizelegibility;”。一旦我禁用它,一切都会再次运行。感谢大家的帮助!

【讨论】:

  • 好吧,我们很高兴在此期间唤醒了一些狂热的巨魔,但很高兴你能发现这一点。不要忘记接受你的答案,这样这个问题就可以悄悄地从视野中消失
【解决方案2】:

Leandro Oliva 在打开标签方面是正确的。您提供的代码的 sn-p 缺少 &lt;?php 开始标签。为了进一步调试,我建议打开 error_reporting。您可能知道这一点,但这是 php 内置函数 error_reporting(E_ALL) 更多详细信息可以找到 here

【讨论】:

  • 即使在做 不起作用。将尝试错误报告
【解决方案3】:

我指的是查询字符串。 这是你的代码

$query=$pdo->prepare("SELECT `balance`,`followers`,`following` FROM `users` WHERE `username`=?");
$query->bindValue(1,$logged);
$query->execute();
$followerslist=$query->fetch();
$userbalance=$followerslist['balance'];
?>

下面是带有正确开始标签的代码的样子。

<?php 
//shorthand  opening tag should work as well 
//if this is the second line of php script 
//place error reporting function before any script begins but after php opening tag
error_reporting(E_ALL);
$query=$pdo->prepare("SELECT `balance`,`followers`,`following` FROM `users` WHERE `username`=?");
$query->bindValue(1,$logged);
$query->execute();
$followerslist=$query->fetch();
$userbalance=$followerslist['balance'];
?>

【讨论】:

  • 谢谢,但仍然无法工作或返回任何错误。
【解决方案4】:

我相信用户名应该等于一个字符串。你有"username"=? 它应该是"username"="bob"

【讨论】:

  • 请务必使用单引号而不是双引号。这个网站最初省略了单引号,所以我不得不改用双引号来表达我的观点。
猜你喜欢
  • 2021-12-15
  • 1970-01-01
  • 2013-01-14
  • 1970-01-01
  • 1970-01-01
  • 2020-07-31
  • 2014-12-08
  • 2016-04-01
  • 1970-01-01
相关资源
最近更新 更多