Ankündigung

Einklappen
Keine Ankündigung bisher.

Formular-Variable in csv-Datei abspeichern

Einklappen

Neue Werbung 2019

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

  • Formular-Variable in csv-Datei abspeichern

    Guten Abend,

    ich arbeite gerade an einem Meldeformular für einen sportlichen Wettkampf, bei dem sich die Sportler/Vereine melden können(hoffentlich deutlich einfacher als sonst)
    Allerdings bereitet mir das abspeichern in einer für mich einigermaßen passablen Struktur erhebliche Schwierigkeiten.

    ich habe hier etwas, womit aber nicht ganz zurecht komme:
    PHP-Code:
    <?php
        
        
    /**
        * Datei Name, wo die Daten gespeichert werden
            sollen
        */
        
    $dateiname 'meldung2.csv';
        
    /**
        * Prüfen ob die Variable ein Wert zugewiesen
            wurde. Ansonsten werden diese Variablen
            deklariert.
        */
        
    if (!isset($_POST['vorname'])) $_POST['vorname'] = '';
        if (!isset(
    $_POST['nachname'])) $_POST['nachname'] = '';
        if (!isset(
    $_POST['email'])) $_POST['email'] = '';
        if (!isset(
    $_POST['senden'])) $_POST['senden'] =''$meldung '';
        
    /**
        * Prüfen der Variable $_POST['senden'] ob diese
            ein Wert hat.
        */
        
    if ($_POST['senden'] == 'speichern') {
            
    /**
            * Zeile aufbauen, die in die CSV-Datei am Ende
                geschrieben werden soll
            */
            
    $inhalt =
                
    $_POST['vorname'].'; '.$_POST['nachname'].' '
                    
    ';'.$_POST['email']."";
            
    /**
            * Datei öffnen und den Dateizeiger auf das
                Ende der CSV Datei legen, wenn die Datei
                noch nicht vorhanden ist wird versucht
                diese anzulegen. Wichtig ist, dass die
                Skriptdatei die Rechte zum anlegen einer
                Datei hat.
            */
            
    $handle = @fopen($dateiname"ab+");
            
    /**
            * Schreiben der Zeile, in der CSV Datei
            */
            
    fwrite($handle$inhalt);
            
    /**
            * Datei wieder schließen
            */
            
    fclose ($handle);
            
    /**
            * Prüfen ob die CSV Datei existiert
            */
            
    if (file_exists($dateiname) == true) {
                
    /**
                * Die schreib Rechte ändern bei der CSV
                    Datei, damit das nächste mal diese
                    beschrieben werden kann.
                */
                
    @chmod ($dateiname0757);
            }
            
    /**
            *  Ausgabemeldung erstellen
            */
            
    $meldung '<font color="green">Daten wurden
                gespeichert!</font>'
    ;
             
        }
        
    /**
        * Prüfen ob eine Ausgabemeldung in der Variable
            $meldung hinterlegt wurde, wenn eine
            Ausgabemeldung vorhanden ist wird diese per
            Echo ausgegeben.
        */
        
    if ($meldung != '') echo $meldung;
    ?>
    <form action="" 
           method="post">
      <table>
        <tr>
          <td>Vorname:</td>
          <td><input type="text" name="vorname" value=""/></td>
        </tr>
        <tr>
          <td>Namename:</td>
          <td><input type="text" name="nachname" value=""/></td>
        </tr>
        <tr>
          <td>Email:</td>
          <td><input type="text" name="email" value=""/></td>
        </tr>
      </table> 
      <input type="submit" name="senden" value="speichern"/>
    </form>
    Für die Variablen, die abgespeichert werden sollen(Vor-, Nachname, Jahrgang) soll für jeden Sportler eine neue Zeile angelegt werden, aber ich weiß nicht wie ich den Zeiger auf eine neue Zeile und in deren 1. Zelle setze.

    Danke für eure Hilfe


  • #2
    Format CSV, wenn nicht sogar besser Datenbank!
    Competence-Center -> Enjoy the Informatrix
    PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

    Kommentar


    • #3
      Ich würde dir auch eine Datenbank empfehlen.

      Kommentar


      • #4
        was meint ihr mit Datenbanken? MySQL?

        Kommentar


        • #5
          Ganz genau. Du solltest doch über mysqli oder pdo informieren. Dadurch solltest du optimaler arbeiten können.

          Kommentar


          • #6
            Okay ich glaub ich hab es soweit verstanden um es mit meiner ursprünglichen Idee zu machen.

            Aber ich hätte noch eine Frage:

            Da sich mehrere Vereine anmelden sollen und ich nicht für jeden Verein seine eigene Meldemaske schreiben will, wollte ich einfach bei jeder neuen SESSION den Dateinamen = Username setzen. Wie schreibe ich das, wenn der Username als Session-Variable vorhanden ist?

            Kommentar


            • #7
              Am besten einfach nur ne UserId in der Session halten, die Infos über den User bekommst Du ja wieder über die Datenbank.
              Wie schreibe ich das, wenn der Username als Session-Variable vorhanden ist?
              Hast Du schon Sessions eingebaut? Wie sieht Dein Ansatz denn aus?
              Competence-Center -> Enjoy the Informatrix
              PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

              Kommentar

              Lädt...
              X