我仍然是MySQL的新手,甚至更新MySQLI。我试图用MySQLI更新我的网站,我似乎无法解决这个问题。
我的网站是一个单页网站,页面上有50个类别。每个类别都有一个类别标题。我在数据库中有一个包含所有50个类别标题和id的表。我使用MySQL / PHP通过专门选择行和列来显示每个类别顶部的每个类别标题。这是我的代码..
查询:
$query_meta = mysql_query("SELECT * FROM `categories`", $connection);
if (!$query_meta) {
die("Connection Failed: " . mysql_error());
}
$meta_query_result = array();
while( $row = mysql_fetch_assoc($query_meta) ) {
$meta_query_result[$row['id']] = array('url' => $row['url'], 'name' => $row['name'], 'title' => $row['title']);
}
回声声明:
<h2><?php echo $meta_query_result[1]['name']; ?></h2>
<h6><?php echo $meta_query_result[1]['title']; ?></h6>
这允许我选择我想要显示的行和列。
我如何在MySQLI中重做这个?提前谢谢!
答案 0 :(得分:0)
你需要在mysqli的对面添加连接。
所以// mysql_query($q, $db_connnect);
//变为// mysqli_query($db_connnect, $q);
答案 1 :(得分:0)
当然你应该阅读documentation,因为它与mysql看起来一样(乍一看),但差别不大......
下一个例子应该对你有用:
<?php
$db = new mysqli('localhost', 'root');
if ($db->connect_errno) {
echo 'Connect failed: '.$db->connect_error;
exit();
}
$db->select_db('test');
$cursor = $db->query('SELECT * FROM categories');
if ($db->error) {
echo $db->error.PHP_EOL;
}
$meta_query_result = [];
while($row = $cursor->fetch_assoc()){
$meta_query_result[$row['id']] = [
'url' => $row['url'],
'name' => $row['name'],
'title' => $row['title'],
];
}
$cursor->close();
注意:请记住,自PHP 5.5.0起,不推荐使用mysql_query,而是使用PDO。