簡體   English   中英

使用PHP從SQL數據庫中獲取信息

[英]Grab Information From SQL Database using PHP

現在我已經創建了一個包含一些信息的SQL數據庫。

我目前有三個包含以下列的表:

(1)表名=參議員; columns = Dnumber,Name(2)table name = committeetees; columns = ID,委員會(3)表名= memberCommittee; columns = ID,Dnumber

我的選擇聲明:

SELECT DISTINCT s.name作為參議員FROM參議員為s,委員會為c,memberCommittee為m WHERE s.Dnumber = m.Dnumber和c.ID = m.ID,c.ID =“1001”;

這樣做的目的是使用三個表獲取信息並顯示ID為“1001”的“名稱”。 我的select語句有效,因為它會向委員會中的人員顯示ID為1001,但我不太了解獲取信息的PHP部分。

這部分:

*

 $result = mysqli_query($conn, "SELECT DISTINCT s.name as Senator 
     FROM senators as s, committees as c, memberCommittee as m 
    WHERE s.Dnumber =m.Dnumber and c.ID = m.ID and c.ID = "1001");  

    while ($row = mysqli_fetch_assoc($result)){
            unset($id, $Senator);           
            //$id = $row['Features'];   
            $Senator = $row['Senator'];
            echo '<option value="'.$Senator.'">'.$Senator.'</option>';      

    }

*

有人可以幫我嗎?

 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script language="javascript" type="text/javascript"> function dynamicdropdown(listindex) { document.getElementById('senator').className = listindex; </script> <style> optgroup { display: none; } select.Agriculture optgroup.Agriculture { display: block; } div#header{ padding: 1px; color: yellow; padding-left: 9px; background-color: #000080; } .category_div{ padding: 3px; } .sub_category_div{ padding: 3px; } .microphone{ padding: 3px; } .body{ padding-right: 5px; } </style> </head> <body> <div class="header" id="header"> <h1>Indiana State Senate IT</h1> </div> <div class="room130"> <h3>Room 130</h3> <form target="Room 130" action = "room130.php" method="POST"> <div class="category_div" id="category_div">Committee: <select id="committee" name="committee" onchange="javascript: dynamicdropdown(this.options[this.selectedIndex].value);"> <option value="">Select Committee</option> <option value="Agriculture">AGRICULTURE</option> </select> </div> <div class="sub_category_div" id="sub_category_div"> Individual: <select name="senator" id="senator"> <option value="">Select individual</option> <optgroup class="Agriculture"> <?php $conn = mysqli_connect("db.soic.indiana.edu", "i308f16_team43", "my+sql=i308f16_team43", "i308f16_team43"); if(!$conn){ die("Connection Failed".myslqi_connect_error()); } $result = mysqli_query($conn, "SELECT DISTINCT s.name as Senator FROM senators as s, committees as c, memberCommittee as m WHERE s.Dnumber = m.Dnumber and c.ID = m.ID and c.ID = "1001"); while ($row = mysqli_fetch_assoc($result)){ unset($id, $Senator); //$id = $row['Features']; $Senator = $row['Senator']; echo '<option value="'.$Senator.'">'.$Senator.'</option>'; } ?> </optgroup> </option> </select> </div> </body> </html> 

你有一個錯誤的雙引號序列(你應該將1001包裝在單引號內

 $result = mysqli_query($conn, "SELECT DISTINCT s.name as Senator 
     FROM senators as s, committees as c, memberCommittee as m 
    WHERE s.Dnumber =m.Dnumber and c.ID = m.ID and c.ID = '1001'");     

你應該回顯行結果

 echo '<option value="'.$row['Senator'].'">'. $row['Senator'] .'</option>';  

並確保你沒有c.ID作為整數,在這種情況下你應該使用單引號1001

$result = mysqli_query($conn, "SELECT DISTINCT 
                            s.name as Senator 
                          FROM senators as s
                            , committees as c
                            , memberCommittee as m 
                          WHERE s.Dnumber =m.Dnumber 
                          and c.ID = m.ID 
                          and c.ID = 1001;");     

和(只是一個建議)你應該明確加入sintax)

$result = mysqli_query($conn, "SELECT DISTINCT 
                                s.name as Senator 
                              FROM senators as s
                              INNER  JOIN memberCommittee as m on s.Dnumber =m.Dnumber 
                              INNER JOIN  committees as c on  and c.ID = m.ID 
                              WHERE c.ID = 1001"); 

mysqli_query()返回一個mysqli_result對象(失敗時為false)。 該對象有一個名為:: fetch_assoc()(或fetch_assoc(),過程樣式)的方法,該方法不帶參數並返回數組。 while用於迭代直到所有行返回(一次一個)到$ row變量。 當$ row從fetch_assoc()獲得false時,循環停止。 查看手冊: http//php.net/manual/en/mysqli-result.fetch-assoc.php

暫無
暫無

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

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