Arrays og Prepared Statements
HejJeg har nu arbejdet med MySQLi og Prepared Statements i et par måneder og er blevet glad for at arbejde med det. Dog savner jeg mysql_fetch_array, så jeg ville høre om jeg kan lave noget lignende i Prepared Statements?
Som eksempel kan vi jo tage eksemplet fra denne guide: http://www.eksperten.dk/guide/1480
/* Bind parametre */
$stmt->bind_param('i', $id);
/* Sæt værdier på parametrene */
$id = $_GET['id'];
/* Eksekver forespørgslen */
$stmt->execute();
/* Bind resultatet */
$stmt->bind_result($fornavn, $efternavn);
/* Hent rækker og udskriv data */
while ($stmt->fetch()) {
echo $fornavn . ' ' . $efternavn . '<br>';
}
/* Luk statement */
$stmt->close();
}
else {
/* Der er opstået en fejl */
echo 'Der opstod en fejl i erklæringen: ' . $mysqli->error;
}
I eksemplet gemmer vi jo hver enkelt værdi i sin egen variabel. Men er det muligt at gemme dem i et array i stedet, således at jeg laver et array kaldet $navn og så henter jeg blot tingene ud ved at skrive echo $navn['fornavn'].' '.$navn['efternavn']?
Jeg ved godt at det er ligemeget i en situation som eksemplet, hvor jeg kun skal hente to felter ud, men i en situation hvor jeg skal bruge 10-15 felter, så tager det jo væsentligt længere at skulle skrive variabler til alle felterne inde i bind_result() og bagefter skrive de samme navne igen når jeg skal bruge dem. Med et array skal jeg kun skrive en variabel og så kan jeg hente det jeg skal bruge ud af mig array.