2017-08-13 138 views
0

我不知道这个代码出了什么问题。我有一段内容存储在数据库中,但出于某种原因,我无法显示它。任何帮助将不胜感激,我是一个新的开发人员,并欢迎任何反馈。PHP到MySQL数据库连接

<?php 
require_once('db_connection.php'); //connection credentials 

// Create connection 
$conn = new mysqli($servername, $username, $password, $dbname); 

$sql = "SELECT content FROM content"; 
$result = mysqli_query($conn, $sql); 

while($row = mysqli_fetch_row($result)) { 
    echo $row; 
} 

mysqli_close($conn); 
?> 

回答

1

echo $row;您错过了要回显的列对象的数组本身。

你想要的是echo $row[0];

然而,列和表名是相同的,所以一定要确保这是确实是正确的。

按手册:

$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 50,5"; 

if ($result = mysqli_query($link, $query)) { 

    /* fetch associative array */ 
    while ($row = mysqli_fetch_row($result)) { 
     printf ("%s (%s)\n", $row[0], $row[1]); 
    } 

    /* free result set */ 
    mysqli_free_result($result); 
} 

如果上述失败,那么这可能意味着你的查询可能失败:

例如,从手工拉并且您需要使用mysqli_error($conn)检查查询中的错误。

参考:

同样的事情会进行连接。

参考:

例如,从手册:

<?php 
$link = mysqli_connect("127.0.0.1", "my_user", "my_password", "my_db"); 

if (!$link) { 
    echo "Error: Unable to connect to MySQL." . PHP_EOL; 
    echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL; 
    echo "Debugging error: " . mysqli_connect_error() . PHP_EOL; 
    exit; 
} 

echo "Success: A proper connection to MySQL was made! The my_db database is great." . PHP_EOL; 
echo "Host information: " . mysqli_get_host_info($link) . PHP_EOL; 

mysqli_close($link); 
?> 
+0

太好了,谢谢大家的帮助。现在,如果我需要多次使用该代码块,最好是将它放在一个函数中吗?但如果我这样做,你如何控制显示哪一行? – Rjoel98

+0

@ Rjoel98不客气。如果你需要多次显示某些东西,那将取决于“如何”,而且有多种方法可以做到这一点,实际上太多了。如果你打算使用一个函数,那么你需要确保你在函数内传递你的数据库连接,否则你会得到一个可变范围问题。以下是有关变量范围的Stack https://stackoverflow.com/q/16959576/1415724上的一个问答。如果您想要遍历不同的页面,那么您需要为此http://php.net/manual/en/book.session.php使用会话或包含该文件。 –

+0

@ Rjoel98关于你:*“但是,如果我这样做,你如何控制哪一行显示?” - 再次,许多方法来做到这一点。 '[0]'和'[1]'对象数组控制您在查询中选择的序列中的哪一列,如我从手册中获取的示例所示。你也可以使用其他一些函数,例如http://php.net/manual/en/class.mysqli-result.php中概述的 - 例如'mysqli_fetch_assoc()'使用一个关联数组'$ row [“Name” ],$ row [“CountryCode”]'所以你可以使用这些名称,如果这使得跟踪作为给定列的名称更容易。查看该页面上的其他功能。 –