Tom: Automatische Nummerrierung

Beitrag lesen

Hello,

danke erstmal für die gute Antwort! Hat soweit auch super geklappt.

Bitte, gerne geschehen. :-)

Jetzt kommen in dieser Datei aber auch Felder in Datensätzen vor, die ich nicht auslesen will. Wie kann ich denn hier jetzt diese selektieren?

Der erste Schritt ist wohl, dass Du Dir klar machst, welche Schleife für was verantwortlich ist.
Das Script arbeitet im Prinzip als Batch-Script, also Daten holen, Daten aufbereiten und ausgeben. Konsequenterweise könnte man den zweiten Schritt auch noch aufteilen in zwei, dann hätte man das klassische EVA-Prinzip.

Jedenfalls sind die beiden foreach-Schleifen-Konstrukte vür
 - vertikale       (Datensätze)
und
 - horizontale     (Felder in den datensätze)
Verarbeitung zuständig.

Du könntest jetzt in der Feldverarbeitung entweder eine Sperrliste aufbauen, also Datenfelder mit einer bestimmten Position im Satz von der Ausgabe ausschließen, oder aber du baust eine Positivliste auf, in der Du die Index der Datenfelder angibst, die Du ausgeben willst.

Ich poste Dir mal das Beispiel für die Positivliste:

irgendwo in der Konfiguration festlegen:

$_positive = array(0,3,4,5);     ## Liste der Spalten-Indexe, die ausgegeben werden sollen

foreach($_positive as $index)            ## Positiv-Liste abarbeiten
       {
         if(isset($_record[$index))             ## und schauen, ob ein Feld im Datensatz
         {                                      ## dafür vorhanden ist

echo htmlspecialchars($_record[$index]) . "\t";
         }
       }

Du siehst, dass das mit Arrays ein relativ kleiner chirurgischer Eingriff ist.
Das wesentliche ist aber auch hier wieder

  • dass man vorher schaut, ob der gewünschte Datenwert überhaupt gesetzt ist
  • Dass man bei Ausgabe als HTML-<table> darauf achtet,
      dass jede Zeile dieselbe Zellenzahl hat

Harzliche Grüße aus dem
verschneiten Sankt Andreasberg
und Frohe Weihnachtszeit

Tom

--
Nur selber lernen macht schlau