Ciao a tutti, non sono molto pratica con gli array e non so come risolvere questo problemino...
In pratica io creo un array multidimensionale con foto e didascalia prendendo i dati da alcuni campi in un db.
Il primo problema però è che alcuni campo potrebbero essere vuoti quindi un array potrebbe contenere degli indici vuoti.....come faccio a "ripulire l'array togliendo gli indici vuoti ma rinominando quindi l'array ripulito con gli indici consequenziali senza "vuoti"?
vi metto il codice:
codice:// QUI PRENDO I DATI DAL DB $query = "SELECT * from $tab where id=1"; $Recordset = mysql_query($query, $connessione) or die(mysql_error()); $row = mysql_fetch_assoc($Recordset); $foto1lato = $row['foto1lato']; $foto2lato = $row['foto2lato']; $foto1=$row['foto1']; $foto2=$row['foto2']; $foto3=$row['foto3']; $descrizionefoto1 = $row['descrizionefoto1']; $descrizionefoto2 = $row['descrizionefoto2']; $descrizionefoto1small = $row['descrizionefoto1small']; $descrizionefoto2small = $row['descrizionefoto2small']; $descrizionefoto3small = $row['descrizionefoto3small']; //QUI CREO L'ARRAY $foto = array( array('nomefoto' => $foto1lato, 'didascalia' => $descrizionefoto1), array('nomefoto' => $foto2lato, 'didascalia' => $descrizionefoto2), array('nomefoto' => $foto1, 'didascalia' => $descrizionefoto1small), array('nomefoto' => $foto2, 'didascalia' => $descrizionefoto2small), array('nomefoto' => $foto3, 'didascalia' => $descrizionefoto3small) ); //QUI RIPULISCO DAGLI ELEMENTI VUOTI L'ARRAY $conta = count($foto); for($i=0;$i<$conta;$i++){ if($foto[$i]['nomefoto'] == '') unset($foto[$i]); }
il problema è che così facendo gli indici rimagono gli stessi quindi può capitare di avere un array così:
elemento: 0 = nomefoto1.gif
elemento: 2 = nomefoto2.gif
elemento: 3 = nomefoto3.gif
elemento: 4 = nomefoto4.gif
Io vorrei invece che il nuovo array fosse così:
elemento: 0 = nomefoto1.gif
elemento: 1 = nomefoto2.gif
elemento: 2 = nomefoto3.gif
elemento: 3 = nomefoto4.gif
come posso fare?![]()

Rispondi quotando

