Si, il concetto è chiaro ma l'applicazione non è corretta in quanto, come ti ho già detto, nel primo caso potresti non entrarci mai.
Provo a spiegartelo con i commenti al punto giusto
Codice PHP:
$immagine = "";
$caption = "";
$query="SELECT * FROM immagini";
$risultato=mysql_query($query,$link);
while ($riga = mysql_fetch_row($risultato)) {
/*
Usando =. appendi un certo valore a $immagine e $caption.
Lo fai all'inizio del ciclo, quindi arrivando all'if, se $riga[1] e $riga[2]
contenevano un valore ( e lo contengono ) vuol dire che non saranno più stringa vuota
Una soluzione potrebbe essere l'utilizzo di diversi identificatori
*/
//$immagine .= $riga[1];
//$caption .= $riga[2];
// diventano
$img = $riga[1];
$cap = $riga[2];
// Il loro valore è sovrascritto ad ogni giro
/*
if ($immagine=="") {
$immagine .= "'admin/upload/".$riga[1]."'";
} else {
$immagine .= ",'admin/upload/".$riga[1]."'";
}
*/
// diventa
if ($img=="") {
$immagine .= "'admin/upload/".$riga[1]."'";
} else {
$immagine .= ",'admin/upload/".$riga[1]."'";
}
/*
if ($caption=="") {
$caption .= "'".trim(str_replace("\n","",$riga[2]))."'";
} else {
$caption .= ",'".trim(str_replace("\n","",$riga[2]))."'";
} */
// diventa
if ($cap=="") {
$caption .= "'".trim(str_replace("\n","",$riga[2]))."'";
} else {
$caption .= ",'".trim(str_replace("\n","",$riga[2]))."'";
}
}
echo $immagine;
echo $caption;
Non ho testato il codice ovviamente, tu provalo e dimmi se ottieni il risultato.
Ciao