Php 将$item=mysql\u fetch\u assoc($stmt)更改为prepared语句样式

Php 将$item=mysql\u fetch\u assoc($stmt)更改为prepared语句样式,php,sql,prepared-statement,Php,Sql,Prepared Statement,这段代码可以工作,但我正在尝试如何更改$rose=mysql\u fetch\u assoc($stmt);“准备好的语句样式”部分。有人知道吗 $rose_id = $_GET['rose_id']; //prepare the statement $stmt = $conn2->prepare("SELECT * FROM rosename LEFT JOIN rosevariety ON (rosename.variety_name = roseva

这段代码可以工作,但我正在尝试如何更改$rose=mysql\u fetch\u assoc($stmt);“准备好的语句样式”部分。有人知道吗

$rose_id = $_GET['rose_id'];
  //prepare the statement
  $stmt = $conn2->prepare("SELECT * FROM rosename 
            LEFT JOIN rosevariety ON (rosename.variety_name = rosevariety.variety_name) 
            WHERE rose_id = ?");

            //bind the parameters
  $stmt->bind_param("i", $rose_id);

  //$sql = mysql_query($query, $conn);
  $stmt->execute();

  //was there a good response?
  if ($stmt) {

    $rose = mysql_fetch_assoc($stmt);

    //echo out rose information
    echo "<h1>".$rose['latin_name']."</h1>";
    echo "<h2>".$rose['common_name']."</h2>";
$rose\u id=$\u GET['rose\u id'];
//准备声明
$stmt=$conn2->prepare(“从rosename中选择*
左键连接rosevariety ON(rosename.variety\u name=rosevariety.variety\u name)
其中rose_id=?”;
//绑定参数
$stmt->bind_参数(“i”,$rose_id);
//$sql=mysql\u查询($query,$conn);
$stmt->execute();
//反应好吗?
如果($stmt){
$rose=mysql\u fetch\u assoc($stmt);
//呼出玫瑰的信息
echo“$rose[“拉丁名]”;
echo“$rose['common_name']”;
如果使用PDO:

$rose = $stmt->fetch(PDO::FETCH_ASSOC);

如果使用mysqli:

$result = $stmt->get_result();
$rose = $result->fetch_assoc();

如果使用PDO,则(PDO::FETCH_ASSOC)将是答案。

事实上,我认为要正确使用它,你需要

while(($rose = $stmt->fetch()) !== false){
  //$rose = current row;
}

这看起来像是
mysqli
而不是
PDO
是它的mysqli。我如何为mysqli做到这一点?
while(($rose = $stmt->fetch()) !== false){
  //$rose = current row;
}