【问题标题】:How to display multiple values using php and mysql?如何使用 php 和 mysql 显示多个值?
【发布时间】:2009-10-20 08:29:28
【问题描述】:

如何使用 php 和 mysql 显示同一 mysql 字段中的多个值

这是我已有的代码

<?php
if(!empty($skill) || !empty($years) || !empty($rating)){
    if (!empty($skill))
    {
        echo '<p>' . $skill . '</p>';
    }
    if (!empty($years))
    {
        echo '<p>' . $years . '</p>';
    }
    if (!empty($rating))
    {
        echo '<p>' . $rating . '</p>';
    }
    }
?>

我想问的是我希望上面的代码循环上面三个回显内容和变量,直到输入数据库的数据完全显示,例如如果用户输入 1-100... 不同的技能、年份和评级显示所有输入的数据。

我希望我解释得对

【问题讨论】:

    标签: php mysql


    【解决方案1】:

    类似这样的:

    单条记录:

    <?php
    // db connection 
    // query
    $resource = mysql_query("YOUR QUERY HERE");
    // 1 record as a result
    $aRow = mysql_fetch_array($resource);
    foreach ($aRow as $sKey => $sValue) {
      show($sValue);
    }
    
    function show($var) {
      if (!empty($var)) {
        echo '<p>'.$var.'</p>';
      } 
    }
    

    多条记录:

    <?php
    // db connection 
    // query
    $resource = mysql_query("YOUR QUERY HERE");
    // multiple records as a result
    while ($aRow = mysql_fetch_array($resource)) {
      foreach ($aRow as $sKey => $sValue) {
        show($sValue);
      }
    }
    
    function show($var) {
      if (!empty($var)) {
        echo '<p>'.$var.'</p>';
      } 
    }
    

    【讨论】:

    • 这样你只显示一行。
    【解决方案2】:

    如果我理解得很好,请尝试实现这个元代码:

    while (FALSE!==$row=fetch_array()) {
       <do your echoes for every row>
    }
    

    【讨论】:

      【解决方案3】:
      // Make a MySQL Connection
      $query = "SELECT * FROM example"; 
      
      $result = mysql_query($query) or die(mysql_error());
      
      while ($row = mysql_fetch_array($result)) {
          $skill  = $row['skill'];
          $years  = $row['years'];
          $rating = $row['rating'];
      
          // your code goes here.
      
      }
      

      【讨论】:

        【解决方案4】:

        您需要遍历 MySQL 查询返回的每一行,例如:

        $result = mysql_query("SELECT skill, years, rating, etc. FROM Table ..");
        if (! $result) {
            die('Error ' . mysql_error());
        }
        
        while ($row = mysql_fetch_assoc($result)) {
            if (!empty($row['skill']) || !empty($row['years']) || !empty($row['rating'])) { 
                if (! empty($row['skill'])) {
                    echo '<p>' , htmlspecialchars($row['skill']) , '</p>';
                }
        
                //etc.
            }
        }
        

        如果不能保证数据安全,使用 htmlspecialchars() 来防止 XSS 攻击很重要。

        【讨论】:

          猜你喜欢
          • 2013-06-22
          • 2011-08-10
          • 1970-01-01
          • 2014-10-24
          • 1970-01-01
          • 1970-01-01
          • 2019-11-19
          • 2012-10-04
          • 1970-01-01
          相关资源
          最近更新 更多