【问题标题】:How to save 5 rows from mysqlidatabase and save them in array for later use?如何从 mysqli 数据库中保存 5 行并将它们保存在数组中以备后用?
【发布时间】:2015-04-13 10:23:49
【问题描述】:

我想通过使用mysqli_* 从我的数据库中选择它们来获得 5 个不同的行,并将它们按数组保存在一个变量中。保存后,在页面中使用数组变量。

应该是这样的:

// Create connection
$db_connection = mysqli_connect($mysql_servername, $mysql_username, $mysql_password, $mysql_dbname);

// Check connection
if (!$db_connection) {
  die("Connection failed: " . mysqli_connect_error());
}

$query = "SELECT url, title, summary, upload_date, id FROM video ORDER BY upload_date LIMIT 5"; 

$images= array();
$result = mysqli_query($db_connection, $query);
while(($row = mysqli_fetch_assoc($result))){
  array_push($images, $row);
}

echo $images[0];
echo"<br/>";
echo $images[1][0];
echo"<br/>"; 

我希望将这些数据保存为一个数组,因为我想稍后在同一页面中将其用于轮播。

我正在使用mysqli_* 连接到我的数据库。

【问题讨论】:

  • 到目前为止您尝试过什么?为什么这不起作用?请提供MCVE 并说明问题。
  • 我试过 $images= array(); $result = mysql_query($query); while(($row = mysql_fetch_assoc($result))) { array_push($images, $row); }
  • 请把它放在问题中,而不是 cmets - 毕竟这是你要问的一部分。
  • 我现在编辑了它
  • 您使用哪个 API 连接? mysql_ - mysqli_ - PDO?

标签: php mysql arrays multidimensional-array arraylist


【解决方案1】:

从 W3school 复制

示例(MySQLi 程序)

<?php
$servername = "localhost";
$username = "username";
$password = "password";

// Create connection
$conn = mysqli_connect($servername, $username, $password);

// Check connection
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}
echo "Connected successfully";
?>  

这样的?

$images= array();
$result = mysql_query($query);
while(($row = mysql_fetch_assoc($result))) {
    array_push($images, $row);
}

【讨论】:

    【解决方案2】:

    “来自mysqli数据库”

    你是说 MySQL 吗? :)

    使用 PDO。

    http://php.net/manual/en/book.pdo.php

    并使用 fetchAll() 方法将所有 5 行保存到一个数组中 - http://php.net/manual/en/pdostatement.fetchall.php

    【讨论】:

    • 是的,MySQL。谢谢你的提问,但它在 PHP 代码中应该是什么样子? :)
    • try { $dbh = new PDO( 'mysql:dbname=' . DATABASE_NAME . ';host=' . DATABASE_HOST, DATABASE_USER, DATABASE_PASS, array(PDO::ATTR_ERRMODE =&gt; PDO::ERRMODE_EXCEPTION) ); $sql = 'your query'; $sth = $dbh-&gt;prepare($sql); $sth-&gt;execute(); $result = $sth-&gt;fetchAll(PDO::FETCH_ASSOC); } catch (PDOException $e) { // handle exception } $result 会将所有行存储为关联数组。
    • 然后如何从数组中获取数据?
    • 使用print_r($result); 并猜测如何使用foreach ;)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-22
    • 1970-01-01
    相关资源
    最近更新 更多