Einfügen von CSV und addieren

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Einfügen von CSV und addieren

    Hallo,

    ich möchte gerne bei einem vorhandenn wert in einer csv-datei +1 addieren und diesen dann in der gleicehn spalte an das ende anfügen.
    Sinn der ganzen Sache soll sein, dass bei jeder Anmeldung eine fortlaufende referenznummer ermittelt wird, die dann den angegeben Daten mit angefügt wird.Die referenznummer soll jedoch bei jedem anmelder eins höher sein als bei dem anmelder davor. beginnen soll die referenznummer mit 20080720-dann die berechnete referenznummer z.B. ref: 200080720-002.
    kann mir da irgendjemand helfen???
    hier meine bisherige form.php
    PHP-Code:
    <?php
    session_start
    ();
    if(isset(
    $_SESSION['captcha_spam']) AND $_POST["sicherheitscode"] == $_SESSION['captcha_spam']){
    unset(
    $_SESSION['captcha_spam']); 
    $verw = <---------------------------------------hier soll die referenznummer ermittelt werden
    $hotelname 
    $_POST['hotelname'];
    $anzahl $_POST['anzahl'];
    $asp $_POST['asp'];
    $tel $_POST['tel'];
    $mail $_POST['mail'];
    $rng_adresse $_POST['rng_adresse'];
    $bemerkungen $_POST['bemerkungen'];
    $anmeldungen "anmeldungen.csv";
    $betrag strval($anzahl 35);
    $datei fopen($anmeldungen,"a+");
    $gesamt = ("$hotelname;$anzahl;$asp;$tel;$mail;$rng_adresse;$bemerkungen;$betrag");
    fwrite($datei$gesamt."\n");
    fclose($datei);

    $empfaenger = ($mail);
    $betreff 'Anmeldung';
    $nachricht '
    hier ein text mit ref nummer
    '
    ;

    $header  'MIME-Version: 1.0' "\r\n";
    $header .= 'Content-type: text/html; charset=iso-8859-1' "\r\n";
    $header .= 'To: <XXX@XXX.de>' "\r\n";
    $header .= 'From: XXX <XXX@XXX.de>' "\r\n";
    header 'Location: [url]http://www.danke.de[/url]' );

    mail($empfaenger$betreff$nachricht$header);
    }
    ?>
    Vielen Dank für eure Hilfe
    MFG
    DeeKayBerlin

  • #2
    Versuchs mal so:

    PHP-Code:

    $f 
    file("datei.csv");
    $last count($f) - 1;
    $line explode("Dein Trennzeichen"trim($f[$last]));
    $aktuelle_referenznummer substr($line[Stelle deiner Referenznummer],stripos($line[Stelle deiner Referenznummer], "-") + 1); 
    Musst am schluss die $aktuelle_referenznummer nur noch um 1 erhöhen um die nächste zu bekommen.

    Gruß Julian
    Lurchi ! Lurchi ! Lurchi !

    Kommentar


    • #3
      habe das wi efolgt eingefügt:
      PHP-Code:
      session_start();
      if(isset(
      $_SESSION['captcha_spam']) AND $_POST["sicherheitscode"] == $_SESSION['captcha_spam']){
      unset(
      $_SESSION['captcha_spam']); 
      $f file("anmeldung.csv");
      $last count($f) - 1;
      $line explode(";"trim($f[$last]));
      $verw substr($line[A],stripos($line[A], "-") + 1);
      $hotelname $_POST['hotelname'];
      $anzahl $_POST['anzahl'];
      $asp $_POST['asp'];
      $tel $_POST['tel'];
      $mail $_POST['mail'];
      $rng_adresse $_POST['rng_adresse'];
      $bemerkungen $_POST['bemerkungen'];
      $anmeldungen "anmeldungen.csv";
      $betrag strval($anzahl 35);
      $datei fopen($anmeldungen,"a+");
      $gesamt = ("$verw;$hotelname;$anzahl;$asp;$tel;$mail;$rng_adresse;$bemerkungen;$betrag");
      fwrite($datei$gesamt."\n");
      fclose($datei); 
      ich habe vielleicht vergessen zu sagen, dass die ertse referenznummer in A2 steht. A2 möchte ich dann +1 und in A3 einfügen
      A3 dann beim nächster anmelder +1 und in A4 einfügen.
      was muss ich ändern??

      Kommentar


      • #4
        Zeig mir mal bitte eine ganze Zeile deiner CSV
        Lurchi ! Lurchi ! Lurchi !

        Kommentar


        • #5
          hier ein screenshot,
          vielen dank für deine mühe
          Angehängte Dateien

          Kommentar


          • #6
            Eine Frage was ist mit A1,A2... gemeint?
            Lurchi ! Lurchi ! Lurchi !

            Kommentar


            • #7
              die zellenangabe, wo sich die zelle mit der referenznummer befindet

              Kommentar


              • #8
                Kannst du bitte eine Zeile deiner CSV-Datei posten damit ich seh was genau drin steht. Keinen Screenshot aus Excel.

                Öffne die CSV einfach im Editor.

                Wir reden grad aneinanander vorbei hab ichs gefühl
                Lurchi ! Lurchi ! Lurchi !

                Kommentar


                • #9
                  hier:
                  Referenznummer;Hotelname;Anzahl der Teams;Ansprechpartner;Telfonnummer;E-Mailadresse;Rechnungsadresse;Bemerkungen;Betrag
                  20080720001;Hotel Test;2;Ich;110;test@xxx.de;bla;du nochmal bla;35

                  Kommentar


                  • #10
                    Lies halt die letzte Zeiel der Datei zuerst ein und erhöhe die Referenznummer um eins.
                    PHP-Code:
                    ...
                    $file file_get_contents($anmeldungen);
                    $zeile explode(';'$file[count($file) - 1]);
                    $verw $zeile[0] + 1;
                    $datei fopen($anmeldungen,"a");
                    $gesamt = ("$verw;$hotelname;$anzahl;$asp;$tel;$mail;$rng_adresse;$bemerkungen;$betrag\n");
                    fwrite($datei$gesamt);
                    fclose($datei);
                    ... 
                    und lass das ganze last- und substr()-Zeugs.

                    Das Ganze sieht aber irgenwie so aus, dass man das besser mit einer DB lösen würde.
                    Zuletzt geändert von H2O; 30.04.2008, 15:05.
                    Gruss
                    H2O

                    Kommentar


                    • #11
                      Original geschrieben von H2O
                      Lies halt die letzte Zeiel der Datei zuerst ein und erhöhe die Referenznummer um eins.
                      PHP-Code:
                      ...
                      $file file_get_contents($anmeldungen);
                      $zeile explode(';'$file[count($file) - 1]);
                      $verw $zeile[0] + 1;
                      $datei fopen($anmeldungen,"a");
                      $gesamt = ("$verw;$hotelname;$anzahl;$asp;$tel;$mail;$rng_adresse;$bemerkungen;$betrag");
                      fwrite($datei$gesamt."\n");
                      fclose($datei);
                      ... 
                      und lass das ganze last- und substr()-Zeugs.

                      Das Ganze sieht aber irgenwie so aus, dass man das besser mit einer DB lösen würde.

                      Dito
                      Lurchi ! Lurchi ! Lurchi !

                      Kommentar


                      • #12
                        hmmm
                        schonmal nicht schlecht soweit. entweder hab ich jetzt falsch gemacht, oder wir reden immernoch an einander vorbei.
                        wenn ich nun z.b. 8 datensätze in der csv habe, möchte ich, dass der 9. datensatz sich die ref vom 8. nimmt und +1 macht und ausgibt und dann der 10. datensatz vom 9. datensatz usw

                        Kommentar


                        • #13
                          Was willst du nun? Neue Sätze einfügen, oder bestehende ändern. Von letzterem war allerdings bis jetzt nicht die Rede.
                          Gruss
                          H2O

                          Kommentar


                          • #14

                            ich starte mit einem von mir vorgegeben datensatz den ich manuell in die csv eingefügt habe., der eine ref nummer 20080721001 enthält.
                            nun soll der nächste datensatz der durch das formular angelegt wird sich seine eigene ref nummer erstellen. 20080721001+1=20080721002
                            der 3. datensatz soll sich nun diese refnummer aus dem 2. nehmen und +1 = 20080721003, der 4. datensatz nimm sich die ref nr aus dem 3. und +1.
                            jedesmal wenn das formular abgeschickt wird, soll ein neuer datensatz geschrieben werden mit einer ref nr, die sich aus der ref nr des letzten datensatz +1 ergibt.
                            bin langsam selber durcheinander, aber ich glaube so will ich es haben :-D
                            Zuletzt geändert von deekayberlin; 30.04.2008, 14:50.

                            Kommentar


                            • #15
                              der erste datensatz befindet sich aber in der zweiten zeile!!

                              Kommentar

                              Lädt...
                              X