Export aus DB in CSV-Datei

Kalito

Erfahrenes Mitglied
hallo,

ich hab folgenden ein Programm-Schnipsel, der mir sorgen bereitet:
PHP:
    if(isset($_POST['submit'])){
        $array = array('position','passiv','geburtstag','mail_ci','mail_privat','telefon','adresse','studium','abschluss','hochschule','interessent','eintritt','ressort','history','einsatz');
        $auswahl =array('vorname','nachname');
        for($i=0; $i<count($array); $i++){
            if(!empty($_POST[$array[$i]])){
                if($_POST[$array[$i]]=='adresse'){   //Wenn Adresse gechecked ist
                    $auswahl[]= 'strasse';
                    $auswahl[]= 'hausnummer';
                    $auswahl[]= 'plz';
                    $auswahl[]= 'ort';
                    $auswahl[]= 'Wohnungsnr';
                }
                if($_POST[$array[$i]]=='ressort'){  //Wenn Ressort gchecked wurde
                    $auswahl[]= 'ressort_uk';
                    $auswahl[]= 'ressort_qm';
                    $auswahl[]= 'ressort_pr';
                    $auswahl[]= 'ressort_it';
                    $auswahl[]= 'ressort_hr';
                }
                if($_POST[$array[$i]]=='history'){
                    $history[] = array('von','bis','RID'); //Wenn history gechecked wurde
                }
                if($_POST[$array[$i]]!='adresse' && $_POST[$array[$i]]!='ressort' && $_POST[$array[$i]]!='history') $auswahl[] = $_POST[$array[$i]];
            }

        }
        $ausgabe = implode(" , ", $auswahl);
        if(!empty($history)) $ausgabeH = implode(" , ", $history);

        if(!empty($history)) $auswahl[] = 'history'; //Wenn History gechecked --> Eintragung in Head-Leiste
        $fp = fopen('file.csv', 'a+'); //Erstellung der csv-Datei
        fputcsv($fp, $auswahl, ';', ' " '); //Eintragung der Head-Leiste

        foreach($_POST['mid'] as $mid){
            connect_vz();
                $query = mysql_query("SELECT ".$ausgabe." FROM ".DB_TABLE_M." WHERE MID='".$mid."'");
              
            disconnect();
                $queryAusgabe = mysql_fetch_array($query);
            fputcsv($fp, $queryAusgabe, ';', ' " ');
        }
        fclose($fp);
    }

Die CSV wird generiert und auch die erste Zeile, sprich die Spaltenbezeichnungen werden Ordnungsgemäß bezeichnet. Aber in der zweiten Zeile, sprich wenn ich jemanden ausgewählt habe, dann wird der Wert der Spalte immer zweimal eingetragen.

So seiht es ungefähr in der CSV aus
Code:
vorname;nachname;mail_ci;mail_privat
Max;Max;Mustermann;Mustermann
So sollte es aber eig sein
Code:
vorname;nachname;mail_ci;mail_privat
Max;Mustermann;Mustermann@ci.de;Mustermann@privat.de

Aber warum, wird der Spaltenwert immer dupliziert?
 
Zurück