将变量从 PDO 函数数组获取到另一个页面



我在一个名为optionals的表中有多行,我正在尝试在单个函数中逐一获取它们。表包含:

id |   name   | stock
1  | article1 |  500
2  | article2 |  255

functions.php

function getStocks($mysqli)
{
    $stmt = $mysqli->query("SELECT * FROM optionals");
    $result = $stmt->fetch_all();
    //get the first row values
    $nameOptional1 = $result[0][1]; 
    $stockOptional1 = $result[0][2];
    //get the second row values
    $nameOptional2 = $result[1][1]; 
    $stockOptional2 = $result[1][2];
   ... //and code continues until I reached the last row
}

var_dump($result[0])将显示:

C:wamp64wwwfunctions.php:42:
array (size=3)
  0 => string '1' (length=1)
  1 => string 'article1' (length=19)
  2 => string '500' (length=3)

1.例如,我想在index.php中展示$nameOptional1,,但我无法做到这一点。我尝试了类似的东西:

include_once "functions.php";

$nameOptional1 = getStocks($mysqli);

echo $nameOptional1;

2. 这是使用预准备语句获取每一行值的好方法吗?如果没有,最好的方法是什么?由于无法进行 Sql 注入,我刚刚切换到 PHP 准备语句。

   function getStocks($mysqli)
{
    $sql = $mysqli->query("SELECT * FROM optionals");
    $result=mysqli_query($con,$sql);
    // Fetch all
    mysqli_fetch_all($result,MYSQLI_ASSOC);
    //get the first row values
    $nameOptional1 = $result[0][1]; 
    $stockOptional1 = $result[0][2];
    //get the second row values
    $nameOptional2 = $result[1][1]; 
    $stockOptional2 = $result[1][2];
   ... //and code continues until I reached the last row
}

最新更新