【问题标题】:How do I use multiple attributes in a php string when pulling data from a mysql database?从 mysql 数据库中提取数据时,如何在 php 字符串中使用多个属性?
【发布时间】:2012-03-06 05:27:35
【问题描述】:

我有一个网站,它使用 lytebox 在当前网站的顶部显示一些图像和其他网站。这一切都很好,但是我已经将数据转移到了一个 MYSQL 数据库中,现在该行的类不起作用。

这是我以前的,并且有效:

<div id="photo01">
<a href="images/strayKatts/photo01.JPG" title="" class="thickbox">
   <img src="images/strayKatts/photo01.JPG" alt="Stray Katts Creations" 
    width="150px" height="113px" border="0"/>
</a>
</div>

但是因为我在目录中获取的数据越来越多,所以我将数据转移到了 mysql 数据库中,以便于维护。

我可以提取数据和所有内容,只是可能没有显示,我目前有这个:

<div id="photo01">
    <?php
        $category_set = mysql_query("SELECT * FROM currentmarkets 
                          WHERE id = '3' AND visible = '1';", $dbconnect);
            if (!$category_set) {
            die("Database query failed: " . mysql_error());
            }
            while ($titleItem = mysql_fetch_array($category_set)) {
            echo "<a href='{$titleItem["imageLink01"]}' title='' class='thickbox'><img src='{$titleItem["imageSrc01"]}' alt='{$titleItem["imageAlt01"]}' width='150px' height='113px' border='0'/>";}
    ?></div>

我确信这与我使用 '' 的方式和我的 "" 坐不正有关。

还有什么建议/帮助吗?


编辑!!

对不起,也许我做得不对,但我已经尝试了所有答案,即使它们看起来正确,它们都没有改变任何东西 - 这令人困惑:-)

哦,对不起,我忘记了——我再也不会那样做了:-)

【问题讨论】:

  • 使用串联添加变量:echo "&lt;a href='".$titleItem["imageLink01"]."' ......
  • @jwk82 - 你可能想更改问题的标题 - 这有点误导。
  • 您的输出 HTML 是什么样的?引用对我来说似乎没问题,尽管您可以使用 {$titleItem['imageLink01']} 在数组键周围加上单引号。
  • 顺便说一下,你的&lt;a&gt;标签是未闭合的!
  • @circusdei 我更改了标题,我希望这能更多地反映我的要求。欢呼

标签: php mysql html class


【解决方案1】:

尝试这样,使用连接。还可以尝试仅打印获取的数组以查看是否是您在 php 中嵌入的 html 的问题,或者检查查询是否正常。

<div id="photo01">
    <?php
        $category_set = mysql_query("SELECT * FROM currentmarkets WHERE id = '3' AND visible = '1';", $dbconnect);
            if (!$category_set) {
            die("Database query failed: " . mysql_error());
            }
            while ($titleItem = mysql_fetch_array($category_set)) {
            echo "<a href='".$titleItem["imageLink01"]."' title='' class='thickbox'><img src='".$titleItem["imageSrc01"]."' alt='".$titleItem["imageAlt01"]."' width='150px' height='113px' border='0'/>";}
    ?></div>

【讨论】:

  • 您需要删除{},它们用于指出字符串中的变量。否则,这应该可以工作
  • 感谢这个答案有效 - 不知何故,问题出在我的 MAMP 服务器上的本地主机上 - 一旦我上传它 - 它工作正常
【解决方案2】:

改变:

echo "<a href='{$titleItem["imageLink01"]}' title='' class='thickbox'><img src='{$titleItem["imageSrc01"]}' alt='{$titleItem["imageAlt01"]}' width='150px' height='113px' border='0'/>";}

到:

echo "<a href='" . $titleItem["imageLink01"] . "' title='' class='thickbox'><img src='" . $titleItem["imageSrc01"] . "' alt='" . $titleItem["imageAlt01"] . "' width='150px' height='113px' border='0'/></a>";}

【讨论】:

    【解决方案3】:

    在您的 while 循环中:

    while ($titleItem = mysql_fetch_array($category_set)) {
        echo "<a href='".$titleItem["imageLink01"]."' title='' class='thickbox'>";
        echo "<img src='".$titleItem["imageSrc01"]."' alt='".$titleItem["imageAlt01"]."'";
        echo " width='150px' height='113px' border='0'/></a>";
    }
    

    您忘记了&lt;/a&gt; 结束标记,并且还需要使用连接到echo 查询结果中的变量。

    【讨论】:

      【解决方案4】:

      这应该可行,我没有看到您的代码有任何其他错误:

      echo "<a href='" . $titleItem["imageLink01"] . "' title='' class='thickbox'><img src='" . $titleItem["imageSrc01"] . "' alt='" . $titleItem["imageAlt01"]. "' width='150px' height='113px' border='0'/></a>";
      

      【讨论】:

      • 他没有关闭&lt;/a&gt;标签怎么样? ;)
      【解决方案5】:

      当您有大量 HTML 和 PHP 变量时,使用 heredoc

      while ($titleItem = mysql_fetch_array($category_set)) {
          echo <<<EOL
      <a href="{$titleItem['imageLink01']}" title="" class="thickbox">
          <img src="{$titleItem['imageSrc01']}" alt="{$titleItem['imageAlt01']}" width="150px" height="113px" border="0" />
      </a>
      EOL;
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-09-18
        • 1970-01-01
        • 1970-01-01
        • 2021-09-16
        相关资源
        最近更新 更多