簡體   English   中英

在while循環中在另一個mysql查詢中調用mysql查詢

[英]Calling a mysql query inside another mysql query while loop

include "mysql.php";
          $query= "SELECT ID,name,displayname,established,summary,searchlink,imagename,image FROM institutions ORDER BY rand() ";
          $result=mysql_query($query,$db);
          while($row=mysql_fetch_array($result))
            {
              echo "<div class='grid-item item1' style='background: ".ran_col().";'>"; 

                $query1= "SELECT content FROM ".$row['name']." limit 1";
                $result1=mysql_query($query1,$db);
                while($row1=mysql_fetch_array($result1))
                {
                            echo "<div class='content-short' data-id=".$row['name'].">";
                                $string = $row1['content'];
                                if (strlen($string) > 200) 
                                {
                                $trimstring = substr($string, 0,200). '...';
                                } 
                                else 
                                {
                                $trimstring = substr($string,0). '...';
                                }
                                echo $trimstring;

                            echo "</div>";
                }
              echo <"/div">;
            }

應該執行什么代碼:

代碼應從機構表中獲取數據,然后將$row['name']用作下一個mysql查詢的表,從該表中獲取$row['name']$row['content']

但是它不能像預期的那樣工作

您到處都使用相同的變量。 更改為

include "mysql.php";
          $query= "SELECT ID,name,displayname,established,summary,searchlink,imagename,image FROM institutions ORDER BY rand() ";
          $result=mysql_query($query,$db);
          while($row=mysql_fetch_array($result))
            {
              echo "<div class='grid-item item1' style='background: ".ran_col().";'>"; 

                $query1= "SELECT content FROM ".$row['name']." limit 1";
                $result1=mysql_query($query1,$db);
                while($row1=mysql_fetch_array($result1))
                {
                            echo "<div class='content-short' data-id=".$row['name'].">";
                                $string = $row1['content'];
                                if (strlen($string) > 200) 
                                {
                                $trimstring = substr($string, 0,200). '...';
                                } 
                                else 
                                {
                                $trimstring = substr($string,0). '...';
                                }
                                echo $trimstring;

                            echo "</div>";
                }
              echo <"/div">;
            }

編輯:

另外你的查詢是錯誤的

$query1= "SELECT content FROM ".$row['name']" limit 1";

$query1= "SELECT content FROM ".$row['name']." limit 1";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM