Quando stampo alcune variabili estratte da una query, mi sorge sempre ... lo stesso problema...
Spesso devo concatenare delle varibili risultate da una query, su una riga sola separate da una virgola, un punto o uno spazio.
Poniamo ad esempio di avere questi campi
nome
data
id
linkage
e di volerli stampare in questo modo:
nome - data - id - linkage.
Dalla mia query le variabili si chiameranno rispettivamente $row[nome], $row[data], $row[id], $row[linkage].
Il problema sorge quando una di queste variabili è nulle.
Per evitare che venga fuori ad esempio
nome - data - - linkage
oppure
nome - - - linkage
devo fare if allucinanti, che diventano sempre + allucinanti in proporzione al numero di stringhe da concatenare.
In questo caso per far stampare correttamente le 4 stringhe concatenate dovrei fare qualcosa del genere:
Ovviamente come programmazione fa schifo...Codice PHP:
if ($row[nome] != "") print $row[nome];
if ($row[nome] != "" && $row[data] != "") print " - ";
if ($row[data] != "") print $row[data];
if (($row[nome] != "" || $row[data] != "") && $row[id] != "") print " - ";
if ($row[id] != "") print $row[id];
if (($row[nome] != "" || $row[data] != "" || $row[id] != "") && $row[linkage] != "") print " - ";
if ($row[linkage] != "") print $row[linkage];
... ma come risolvo il problema?
Premetto che le quattro variabili nell'array $row non sono le uniche, quindi non posso nemmeno risolvere con un while