PHP Select SQL view no output

▼魔方 西西 提交于 2019-12-11 08:21:35

问题


I creating a php file that pulls a view from an SQL database. Can someone let me know why this isn't working? It seems to be timing out. I am not getting a connection error, either. Thank you in advance.

<?php       
require ('mysqli_connect.php');         

    $sql = "SELECT * FROM testview ;";
    $result = mysqli_query($dbc,$sql);

     // Check connection if ($dbc->connect_error) {
          die("Connection failed: " . $dbc->connect_error); } 

     $result=mysqli_query($sql);

     if ($result->num_rows > 0) {
         echo "<table><tr><th>userID</th><th>first_name</th></tr>";
         // output data of each row
         while($row = $result->fetch_assoc()) {
echo "<tr><td>".$row["userID"]."</td><td>".$row["first_name"]."</td></tr>";
}
  echo "</table>"; } else {
  echo "0 results"; }

} 
$dbc->close(); 

?>

Here is the connection file

<?php
DEFINE ('DB_USER', 'root');
DEFINE ('DB_PASSWORD', 'root');
DEFINE ('DB_HOST', 'localhost');
DEFINE ('DB_NAME', 'Test');

// Make the connection:
$dbc = mysqli_connect (DB_HOST, DB_USER, DB_PASSWORD, DB_NAME) OR die ('Could not connect to MySQL: ' );
?>

回答1:


give this a go. you were using mysqli and mysql in the same document. this somtime causes issues.

require_once ('mysqli_connect.php');         

$q = "SELECT * FROM testview";
$r = mysqli_query($dbc, $q);

//there was no real need to check the connection, you should be doing this in your connection script.

//you where using 'mysqli' above and 'mysql' below. 
$row = mysqli_fetch_array($r);

if ($r) {

   echo "<table><tr><th>userID</th><th>first_name</th></tr>";

     while ($row = mysqli_fetch_array($r)){

         echo "<tr><td>" . $row["userID"] . "</td><td>" . $row["first_name"] . " " . $row["last_name"] . "</td></tr>";
     }
         echo "</table>"; 
} else {
         echo "0 results"; 
}

close($conn);



回答2:


You do not have error messages turned on. Therefore when you are getting syntax errors and etc. they are not showing up and you are assuming a time-out. OR perhaps since you have a non-existent function in your die() call maybe it gets confused trying to die but not able to die.

Before you euthanize your code, turn error messages on. Your code will thank you.

Oh, and change

die("Connection failed: " . $dbc->connect_error);

to

die("Connection failed: " . mysql_error($dbc));


来源:https://stackoverflow.com/questions/29451227/php-select-sql-view-no-output

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!