Sto tentando di utilizzare mysqli per preparare un'istruzione per passare in sicurezza i valori delle variabili alla query. Tutto ciò funziona per me, ma il problema che sto incontrando è ottenere il risultato in un array associativo. Ecco la mia struttura finora:PHP mysqli - restituisce un array associativo da un'istruzione preparata
$query = $c->stmt_init();
$query->prepare("SELECT e._id,e.description,e.eventDate,e.eventTime,e.address,e.locationDescription,i.guestId,r.guestId IS NOT NULL AS 'RSVP-ed' FROM eventList AS e JOIN inviteList AS i ON e._id = i.eventId LEFT JOIN rsvpList AS r ON r.eventId = e._id AND i.guestId = r.guestId JOIN guestList AS g ON g._id = i.guestId WHERE g.groupName = ?");
$query->bind_param('s',$groupName);
if ($result = $query->execute()){
$a = $result->fetch_array(MYSQLI_ASSOC); // this doesn't work :/
} else{
error_log ("Didn't work");
}
Come potete vedere, ho un sacco di colonne ottenere ripassato quindi mi piacerebbe non dover loro ogni legarsi a una variabile.
Inoltre, l'obiettivo finale è quello di restituire un array associativo codificato JSON al resto della mia applicazione.
Ho esaminato il problema nella documentazione php e nello scambio di stack e ho trovato suggerimenti, ma non riesco a farli funzionare. Qualcuno potrebbe dare una mano ??
impressionante, che ha funzionato e ha restituito un associativa array, ma restituisce solo la prima riga della query. Avrei bisogno di metterlo in un ciclo foreach per tirare fuori il resto delle righe e inserirle in un nuovo array ?? –
@ChrisSchmitz si, solo loop 'while ($ row = $ result-> fetch_array (MYSQLI_ASSOC)) {var_dump ($ row); }; ' –
Questo è disponibile solo con mysqlnd – greg