Allora, quello che forse non ti è chiaro è che con la while stai leggendo TUTTI i record restituiti dalla query, quindi se vuoi eliminare dei campi lo devi fare PRIMA di inserire l'array della riga, restituito dalla mysqli_fetch_assoc, nell'array principale $arrayRows, il quale conterrà tanti elementi quanti sono i record restituiti dalla query, OGNUNO DEI QUALI sarà un array con i campi del relativo record ed i rispettivi valori.codice:$query= $this->connect->query("SELECT * FROM tb_menu WHERE id_menu_s IN (".$request.") ORDER BY id DESC"); $arrayRows=array(); $fieldsToRemove = array("id_menu_p"=>"","id_menu_s"=>""); while ($thisrow = mysqli_fetch_assoc($query)) { $thisrow=array_diff_key($thisrow,$fieldsToRemove); $arrayRows[]=$thisrow; } var_dump($arrRows);
Detto questo, tutto questo è ASSOLUTAMENTE SBAGLIATO: se, come è chiaro dal codice, stai creando due righe più sopra la query, NON HA NESSUN SENSO che tu faccia restituire tutti i campi dalla tabella quando ne vuoi solo alcuni:
NON fare SELECT * FROM, ma fai SELECT campo_che_mi_serve1, campo_che_mi_serve2, ...
Elencando i campi che ti servono e omettendo i campi che non vuoi... E' inutile, rischioso, dispendioso e controproducente fare restituire tutti i campi quando te ne servono solo alcuni!
Infine: hai attentamente controllato cosa c'è nella variabile $request, VERO? VERO? Mi raccomando, NON è una variabile il cui valore viene preso direttamente da $_GET, $_REQUEST, $_POST o $_SERVER, VERO? Giuramelo, perché se non è così con un solo accesso ti possono eliminare tutte le tabella del db...

Rispondi quotando