Mysql
 sql >> Database >  >> RDS >> Mysql

PHP MySQLi fetch array push sovrascrive i dati

Il problema è che stai inserendo un riferimento a $tempArray in $arr. Quindi cambia il riferimento. Con il terzo ciclo hai 3 riferimenti allo stesso array. Ecco perché i valori si mostrano in questo modo... puoi risolverlo in un modo piuttosto non intuitivo.

prova:

$stmt->bind_result($tempArray["val1"], $tempArray["val2"],$tempArray["val3"]);
while ( $stmt->fetch () ) {
    $x = $tempArray; //This copies the values of $tempArray to $x and each loop will create a new x.
    array_push($arr, $x);
}