Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何从我的faq表中显示我的faq页面中的所有行?_Php_Mysql_Database - Fatal编程技术网

Php 如何从我的faq表中显示我的faq页面中的所有行?

Php 如何从我的faq表中显示我的faq页面中的所有行?,php,mysql,database,Php,Mysql,Database,这是一个常见问题页面。页面只能显示数据库中与其答案相关的最后一行问题。当我点击数据库中的所有问题时,我希望它崩溃并显示关于它的问题的答案。我该怎么做呢?谢谢非常感谢! 面板我希望它显示为: 问题A 回答A 问题B 答复B 问题C 答复C 现在它只显示以下内容: 问题C 答复C 表结构: 名称类型排序规则空默认值 1 Id Int No None 2问题Varchar拉丁语1\u瑞典语\u ci无 3回答Varchar拉丁语1_瑞典语1_ci无 4状态Varchar拉丁语1\u瑞典语\u ci无

这是一个常见问题页面。页面只能显示数据库中与其答案相关的最后一行问题。当我点击数据库中的所有问题时,我希望它崩溃并显示关于它的问题的答案。我该怎么做呢?谢谢非常感谢! 面板我希望它显示为:

问题A

回答A 问题B

答复B 问题C

答复C 现在它只显示以下内容:

问题C

答复C 表结构:

名称类型排序规则空默认值 1 Id Int No None 2问题Varchar拉丁语1\u瑞典语\u ci无 3回答Varchar拉丁语1_瑞典语1_ci无 4状态Varchar拉丁语1\u瑞典语\u ci无 5日期\添加日期否无

下面是我的代码:

 <h1>FAQ</h1>
    <?php

  $result = mysql_query("SELECT * FROM faq ORDER BY id ASC;");
     if($result >= 1 ){             

        $i=1;



  while ($row = mysql_fetch_array($result))

        {  $id = $row["id"];  

?> 
 <?php

      $i++;  }

    }
?>

   <?php       
   $queryquestion = mysql_query("SELECT question FROM faq where status='Enabled' AND id='$id' ORDER BY id ASC;")or die(mysql_error());
   $data = mysql_fetch_assoc($queryquestion); 
   $question = $data['question'];
   $rows = mysql_num_rows($queryquestion);   

  if($rows != 0){             
        echo '
        <hr class="colorgraph">
        <div class="panel-group" id="accordion">
        ';   

  $i = 0; $j = 0;
  while($i < $rows)

        {   
       $queryanswer = mysql_query("SELECT answer FROM faq WHERE id='$id' AND question='$question'") or die(mysql_error());
        $data = mysql_fetch_assoc($queryanswer);
        $answer = $data['answer'];   
              echo
              '
         <div class="panel panel-default">
    <div class="panel-heading">
    <h4 class="panel-title"><a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion" href="#collapse'.$i.'">
    '.$question.'</h4>
        </a></div>

       <div id="collapse'.$i.'" class="panel-collapse collapse">

      <div class="panel-body">'.$answer.'</div>

         </div>
        </div>
        ';
        $i++;
 }
      echo'     
           </div>
         ';
    }else{
        echo "No Questions Found";
    }

?> 

太过分了,兄弟。。好的,那么你应该写下面的代码。现在它应该可以工作了,兄弟..:-

<h1>FAQ</h1>
    <?php

  $result = mysql_query("SELECT * FROM faq ORDER BY id ASC;");
     if($result >= 1 ){             

        $i=1;



  while ($row = mysql_fetch_array($result))

        {  $id = $row["id"];  
        //echo $id;

?> 
 <?php

      $i++;  }

    }
?>

   <?php       
   $queryquestion = mysql_query("SELECT * FROM faq where status='Enabled'  ORDER BY id ASC;")or die(mysql_error());



   $rows = mysql_num_rows($queryquestion);   

  if($rows != 0){             
        echo '
        <hr class="colorgraph">
        <div class="panel-group" id="accordion">
        ';   

  $i = 0; $j = 0;
  while($data = mysql_fetch_assoc($queryquestion))
  {



              echo
              '
         <div class="panel panel-default">
    <div class="panel-heading">
    <h4 class="panel-title"><a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion" href="#collapse'.$i.'">
    '.$data['question'].'</h4>
        </a></div>

       <div id="collapse'.$i.'" class="panel-collapse collapse">

      <div class="panel-body">'.$data['answer'].'</div>

         </div>
        </div>
        ';
        $i++;
 }
      echo'     
           </div>
         ';
    }else{
        echo "No Questions Found";
    }

?> 

太过分了,兄弟。。好的,那么你应该写下面的代码。现在它应该可以工作了,兄弟..:-

<h1>FAQ</h1>
    <?php

  $result = mysql_query("SELECT * FROM faq ORDER BY id ASC;");
     if($result >= 1 ){             

        $i=1;



  while ($row = mysql_fetch_array($result))

        {  $id = $row["id"];  
        //echo $id;

?> 
 <?php

      $i++;  }

    }
?>

   <?php       
   $queryquestion = mysql_query("SELECT * FROM faq where status='Enabled'  ORDER BY id ASC;")or die(mysql_error());



   $rows = mysql_num_rows($queryquestion);   

  if($rows != 0){             
        echo '
        <hr class="colorgraph">
        <div class="panel-group" id="accordion">
        ';   

  $i = 0; $j = 0;
  while($data = mysql_fetch_assoc($queryquestion))
  {



              echo
              '
         <div class="panel panel-default">
    <div class="panel-heading">
    <h4 class="panel-title"><a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion" href="#collapse'.$i.'">
    '.$data['question'].'</h4>
        </a></div>

       <div id="collapse'.$i.'" class="panel-collapse collapse">

      <div class="panel-body">'.$data['answer'].'</div>

         </div>
        </div>
        ';
        $i++;
 }
      echo'     
           </div>
         ';
    }else{
        echo "No Questions Found";
    }

?> 
停止使用mysql函数。它们已被弃用且不安全。学习使用PDO代替。这里有一个很好的参考:

你做的查询都错了。不需要先从表中选择问题,然后循环这些问题以获得答案。。只需选择*或选择问题、答案。。。您可以一次选择多个列,而不仅仅是一个列

下面是一个示例代码:

<?php

$hostname = 'localhost';
$username = 'root';
$password = '';

$dbh = new PDO("mysql:host=$hostname;dbname=test", $username, $password);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);

$sql = $dbh->prepare("SELECT * FROM `faq` WHERE `Status`='Enabled' ORDER BY id");
$sql->execute();
$result = $sql->fetchAll();

$i=0;
foreach ($result as $row) {
    $i++;
    echo "<h2>Question $i</h2>";
    echo "<p>".$row['Question']."</p>";
    echo "Answer: ".$row['Answer'];
    echo "<br /><br />";
}
?>
停止使用mysql函数。它们已被弃用且不安全。学习使用PDO代替。这里有一个很好的参考:

你做的查询都错了。不需要先从表中选择问题,然后循环这些问题以获得答案。。只需选择*或选择问题、答案。。。您可以一次选择多个列,而不仅仅是一个列

下面是一个示例代码:

<?php

$hostname = 'localhost';
$username = 'root';
$password = '';

$dbh = new PDO("mysql:host=$hostname;dbname=test", $username, $password);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);

$sql = $dbh->prepare("SELECT * FROM `faq` WHERE `Status`='Enabled' ORDER BY id");
$sql->execute();
$result = $sql->fetchAll();

$i=0;
foreach ($result as $row) {
    $i++;
    echo "<h2>Question $i</h2>";
    echo "<p>".$row['Question']."</p>";
    echo "Answer: ".$row['Answer'];
    echo "<br /><br />";
}
?>

废话废话。你的问题和答案存储在不同的表中吗?请提供表结构。我不能理解这些查询和循环的目的。我也不能。你选择了相同的东西两次。这有什么意义?废话废话。你的问题和答案存储在不同的表中吗?请提供表结构。我无法理解这些查询和循环的目的。我也不能。你选择了相同的东西两次。那有什么意思?嗨!谢谢你抽出时间来帮助我。但是,当我试图在我的页面上使用您编辑的代码时,它无法得到我想要的结果。它表明:问题A,回答A,并不断重复前两个信息。我似乎无法将您的代码放在我的设计中。这是行不通的=你好谢谢你抽出时间来帮助我。但是,当我试图在我的页面上使用您编辑的代码时,它无法得到我想要的结果。它表明:问题A,回答A,并不断重复前两个信息。我似乎无法将您的代码放在我的设计中。这是行不通的=谢谢@cen!我来看看你给我的链接。但是我觉得我的查询有问题,不允许我得到结果。我将尝试调试。如果没有,我将尝试使用PDO。谢谢你的帮助!谢谢@cen!我来看看你给我的链接。但是我觉得我的查询有问题,不允许我得到结果。我将尝试调试。如果没有,我将尝试使用PDO。谢谢你的帮助!