如何使用MySQLI与MySQL显示数据库中特定表行列的数据

时间:2014-02-23 22:32:59

标签: php sql database mysqli

我仍然是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中重做这个?提前谢谢!

2 个答案:

答案 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。