【问题标题】:How to style data from mysql database?如何对mysql数据库中的数据进行样式化?
【发布时间】:2013-08-31 17:49:14
【问题描述】:

我得到了这个 PHP 代码来显示数据库中的 cmets:

<?php
  $con = mysql_connect("localhost","root","");
  if (!$con){
    die("cannot connect: " . mysql_error());
  } 
  mysql_select_db("strek", $con);

  $sql="SELECT * FROM comments";  
  $result=mysql_query($sql, $con);

  while($row=mysql_fetch_array($result)){
    $name=$row['name'];
    $comment=$row['comment'];
    echo $name. "<br>" .$comment;
    echo"<br>";
  }
?>

我希望名称和评论都居中对齐,并且我希望名称加粗。 请帮助我如何做到这一点。

【问题讨论】:

  • 您输出适当的标记并链接适当的样式表。
  • @Fred-ii- — &lt;center&gt;?这在 90 年代已被弃用。
  • &lt;center&gt; 帮助我把东西放在中间 :) 完美的语义标签 :)
  • align 属性与center 元素同时被弃用。 CSS 于 1996 年推出,现在对它的支持非常好。
  • @Quentin:谁说具有那种 HTML 的网站不应该再工作了? HTML 不是一种编程语言。即使有更新,据说有些东西“已弃用”(可能是 W3C 对虚文本中的内容存在误解),它会永远存在。

标签: php mysql styles comments


【解决方案1】:
while($row=mysql_fetch_array($result)){
     <span style="display: block;">
         <span style="font-weight: bold; width: 100px; display: inline-block;">
             <?php echo htmlspecialchars($result['name'], ENT_QUOTES);?>
         </span>
         <span style="text-align: center; width: 200px; display: inline-block;">
             <?php echo htmlspecialchars($result['comment'], ENT_QUOTES);?>
         </span>
     </span>
}

函数 htmlspecialchars - 将特殊字符转换为 HTML 实体。使用标志 ENT_QUOTES 转义引号以避免破坏 HTML 代码。

【讨论】:

  • 为什么显示:块跨度而不是 div?其他跨度不会应用它们指定的widthtext-align 值,因为它们仍然是display: inline。如果您解释了htmlspecialchars 的目的(尽管添加它可能是正确的做法)并使用真正的样式表,这个答案会更好。
  • @Fred-ii- — 你为什么在别人的回答中抱怨我?如果您想了解我对如何改进答案的看法,请先阅读有关问题的 cmets,然后再写它。
【解决方案2】:

“我希望名称和评论都在中心对齐,并且我希望名称是粗体。请帮助我如何做到这一点。”

由于 OP 已经在 echo $name. "&lt;br&gt;" .$comment; 中有双引号,我认为它已经在工作并且需要将其居中并以粗体显示,因此使用下面的代码是完全有效的。

考虑以下几点:

echo "<div align='center'><b>" . $name. "<br>" .$comment . "</b></div>";

一个工作示例:

<?php

$name = "John";

$comment = "This is a comment";

echo "<div align='center'><b>" . $name. "<br>" .$comment . "</b></div>";

?>

您还可以使用带有 DIV ID 和/或 CLASS 的样式表。

例如:

echo "<div align='center' id='names_comments' class='centered bold_text'>" . $name. "<br>" .$comment . "</div>";

然后使用 CSS:

#names_comments {
font-family:Georgia;
font-size:12pt;
}

.centered bold_text {
text-align:center;
font-weight:bold;
}

注意:align='center' 可以省略,但保留它也无妨。

【讨论】:

    【解决方案3】:

    试试这个。

    while($row=mysql_fetch_array($result)){
     <span style="text-align:center">
         <b>
             <?= $row['name']?>
         </b>
             <?= $row['comment']?>
     </span>
    }
    

    【讨论】:

    • text-align 属性不适用于 display: inline 元素(默认情况下是 span 元素)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-27
    • 2020-07-04
    • 2019-02-09
    • 1970-01-01
    • 2011-06-07
    • 2017-03-29
    • 1970-01-01
    相关资源
    最近更新 更多