[php] Ausgabe aus Array !== NULL oder !== "" Problem

mallmis

Mitglied
Hallo liebe Forum Gemeinde,

habe wieder mal ein Problem. Habe mir eine Schleife gebastelt, welche nur diejenigen Inhalte einer Tabelle ausgeben soll, welche nicht null sind. Es werden aber immer alle Dateinamen ausgegeben, auch wenn null ist. Hier mal der Code:

PHP:
<table width="600" border="0" cellspacing="0" cellpadding="0">
        <tr>
		<?php
		  var_dump($datensatz);
		  for($i = 1; $i <= 25; $i++)
		  { 
		  $aktuelles_feld = "bild_150_$i";echo $aktuelles_feld;
		  if ( $aktuelles_feld !== "" ) 
		  {
		          
		
		  ?>
          <td>Bild <?php echo $i; ?>: </td>
          <td><img src="<?php echo $datensatz["$aktuelles_feld"];?>"></td>
          <?php
	
	    // Ende der Schleife
		}
		else
		{
		echo "Sie haben ".$i." Bilder hochgeladen";
		}
	 }
		?>
        </tr>
      </table>

$datensatz ist mit dem richtigen Inhalt gefüllt, $aktuelles_feld gibt den richtigen Wert aus. Ich glaube, es liegt irgendwie an der Schleife, die nicht abbricht sobald der wert null ist.

Kann mir jemand helfen? Wäre riesig.

Viele Grüße aus dem warmen Mallorca,

mallmis
 
Mal ins blaue geschossen.

Versuch mal anstelle von
PHP:
 if ( $aktuelles_feld !== "" )
besser
PHP:
 if ( $aktuelles_feld == "" )

Dann müsstes klappen (denke ich, wenn nicht dann hab ich spontan keine Idee)

LG
Filip
 
Vielen Dank für die rasend schnelle Antwort

Leider bringt das nichts, denn so gebe ich ja die Felder aus die leer sind oder Null haben. Habs schon probiert.

Danke,

mallmis
 
Hallo, danke!

Sorry, geht auch nicht...

Ich sitze jetzt schon seit Stunden vor diesem Problem.

Aber, aller Anfang ist schwer...


Bis dann

mallmis
 
Warum so kompliziert?

PHP:
<?php
$datensatz_cnt = count($datensatz);
echo '<table width="600" border="0" cellspacing="0" cellpadding="0">'."\n";
for($i = 0; $i < $datensatz_cnt; $i++)
{
  if(in_array("bild_150_".$i, $datensatz) === true)
  {
  echo "<tr>\n
    \t<td>Bild ".$i.":</td>\n
    \t<td><img src=\"".htmlspecialchars($datensatz["$aktuelles_feld"])."\"></td>\n 
  </tr>\n";
  }
}
echo "</table>\n";
echo 'Sie haben '.datensatz_cnt.' Bilder hochgeladen';
?>
 
Zuletzt bearbeitet:
PHP:
<?php

	echo '<table width="600" border="0" cellspacing="0" cellpadding="0">';
	for( $i=1; $i<=25; $i++) {
		$aktuelles_feld = 'bild_150_'.$i;
		if( empty($datensatz[$aktuelles_feld]) ) {
			break;
		}
		echo '<tr><td>Bild '.$i.':</td><td><img src="'.htmlspecialchars($datensatz[$aktuelles_feld]).'"></td></tr>';
	}
	echo '</table>';
	echo 'Sie haben '.$i.' Bilder hochgeladen';

?>
 
Zurück