我制作一个随机引用应用程序,按下按钮,我可以加载一个随机短语。我为此创建了一个MySQL数据库和两个php代码。
我在网络托管中上传了我的两个代码,应用程序正在运行!
但有时它会给我" null"而不是短语。我不知道为什么。
我对此不太满意。
可能是什么问题?
这是我的index.php
require_once 'db.php';
$query = "SELECT * FROM quotes ORDER BY rand() LIMIT 1";
$result = mysqli_query($con, $query);
while($row = mysqli_fetch_array($result)) {
print(json_encode($row['quote']));
}
这是我的db.php
// Create connection
$con=mysqli_connect("host","user","pass","a6361246_phrases");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
答案 0 :(得分:-1)
您可以在db.php文件中使用前三行,如下所示......
<?php
$host = 'localhost'; $db = 'database-name'; $user = 'database-user'; $pw = 'database-password';
$conn = new PDO('mysql:host='.$host.';dbname='.$db.';charset=utf8', $user, $pw);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
?>
不要忘记更改数据库名称,数据库用户和数据库数据库密码到您的特定凭据。
然后使用PDO得到这样的短语...
<?php
require_once 'db.php';
try {
$sql = "SELECT * FROM Quotes ORDER BY rand() LIMIT 1";
$query = $conn->prepare($sql);
$query->execute();
$row = $query->fetch(PDO::FETCH_ASSOC);
} catch (PDOException $e) {
die("Could not get the data: " . $e->getMessage());
}
?>