Duergy
Mitglied
Frohes Neues und schönen Montag,
ich sitze seit letzter Woche an einen Problem und ich hoffe ihr könnt mir helfen.
Folgende Situation. Ich habe aus WinData ein CSV File welches ein Kontoauszug ist.
Ich möchte alle Einträge behalten, welche
Ich habe noch weitere kleiner Filter eingebaut.
Nun ist es so, das die Filter nicht wirklich so Funktionieren wie sie sollten.
ich sitze seit letzter Woche an einen Problem und ich hoffe ihr könnt mir helfen.
Folgende Situation. Ich habe aus WinData ein CSV File welches ein Kontoauszug ist.
Ich möchte alle Einträge behalten, welche
- positiven Umsatz haben (Zahlungseingang)
- in einer der Betreffzeilen eine Zahl zwischen 1900-2999 ist
Ich habe noch weitere kleiner Filter eingebaut.
PHP:
// $zeile[0] = Empfänger BLZ
// $zeile[3] = Buchungsdatum
// $zeile[4] = Umsatz (Also der Betrag)
// $zeile[26] = Fortlaufende Nummer die das Programm vergibt
// $zeile[8];$zeile[9]$zeile[10] = Betreffzeilen
$fp = fopen("".$_FILES['datei']['tmp_name']."", "r");
$zeilen = array();
while( !feof($fp) ) {
$zeilen[] = fgetcsv ( $fp , 4096 , ";" , "\"" );
}
for ($i=0; $i<count($zeilen); $i++){
if(!is_numeric($zeilen[$i]['0']) OR empty($zeilen[$i]['26']) OR empty($zeilen[$i]['4']) OR preg_match('/[-]/', $zeilen[$i]['4']))
{
unset($zeilen[$i]);
}
}
rsort($zeilen);reset($zeilen);
for ($i=0; $i<count($zeilen); $i++){
$betreff1=preg_match('/\b[1-2][0-9]{3}(?![0-9])\b/', $zeilen[$i][8], $resnr1);
$betreff2=preg_match('/\b[1-2][0-9]{3}(?![0-9])\b/', $zeilen[$i][9], $resnr2);
$betreff3=preg_match('/\b[1-2][0-9]{3}(?![0-9])\b/', $zeilen[$i][10], $resnr3);
if(empty($resnr1[0]) AND empty($resnr2[0]) AND empty($resnr3[0])){
unset($zeilen[$i]);
}
}
rsort($zeilen);reset($zeilen);
for ($i=0; $i<count($zeilen); $i++){
if(!empty($zeilen[$i]['26'])){
$betreff1=preg_match('/\b[1-2][0-9]{3}(?![0-9])\b/', $zeilen[$i][8], $resnr1);
$betreff2=preg_match('/\b[1-2][0-9]{3}(?![0-9])\b/', $zeilen[$i][9], $resnr2);
$betreff3=preg_match('/\b[1-2][0-9]{3}(?![0-9])\b/', $zeilen[$i][10], $resnr3);
$buchungen[]=array(
"Buchungsdatum" => "".$zeilen[$i]['3']."",
"Umsatz" => "".$zeilen[$i]['4']."",
"Betreff1" => "".$zeilen[$i]['8']."",
"Betreff2" => "".$zeilen[$i]['9']."",
"Betreff3" => "".$zeilen[$i]['10']."",
"Reservierungsnummer" => "".$resnr1['0']."".$resnr2['0']."".$resnr3['0'].""
);
}
}
if(count($buchungen)==0){echo"<div align=\"center\">Keine Zahlung zum verbuchen Vorhanden.</div>";}
foreach($buchungen as $buchung){
echo"<div style=\"width:500px; border: 1px solid black; margin: 0 auto; padding: 10px;\">
<span style=\"text-decoration: underline;\">Datensatz mit folgenden Daten:</span><br>
Datum: ".$buchung['Buchungsdatum']."<br>
Umsatz: ".$buchung['Umsatz']."<br>
Betreff: ".$buchung['Betreff1']."<br>
Betreff: ".$buchung['Betreff2']."<br>
Betreff: ".$buchung['Betreff3']."<br>
Reservierungsnummer: ".$buchung['Reservierungsnummer']."</div>";
}
Nun ist es so, das die Filter nicht wirklich so Funktionieren wie sie sollten.