Problem mit Formular + Speichern

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

  • Problem mit Formular + Speichern

    Hallo,
    Ich wollte ein kleines Script machen, das ein Formular erstellt, das geht auch, nun will ich die Angaben im Formular abspeichern, aber irgendwie habe ich ein Problem dass zu machen...Ich weiss nicht was ich noch tun soll....

    Hier mal der Code:
    PHP-Code:
    <html>

    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>Edit</title>
    </head>

    <body bgcolor="#000080" text="#FFFFFF" link="#00FFFF" vlink="#00FFFF">
    <div align="center">
    <center>
    <table cellpadding="5" cellspacing="5" width="100%">
    <form method="post" action="update.php?action=saveentries">
    <div align="center">
    <center>
    <table border="1" cellpadding="3" cellspacing="1" style="border-collapse: collapse" bordercolor="#C0C0C0" width="100%">
    <tr>
    <td width="20%" height="22">
    <font face="Arial" color="#FFFFFF" size="4"><b><u>Name</u></b></font></td>
    <td width="20%" height="22">
    <font face="Arial" color="#FFFFFF" size="4"><b><u>E-Mail</u></b></font></td>
    <td width="20%" height="22">
    <font face="Arial" color="#FFFFFF" size="4"><b><u>Homepage</u></b></font></td>
    <td width="13%" height="22">
    <font face="Arial" color="#FFFFFF" size="4"><b><u>Herkunft</u></b></font></td>
    <td width="27%" height="22">
    <font face="Arial" color="#FFFFFF" size="4"><b><u>Mitteilung</u></b></font></td>
    </tr>
    <?
    $i = 1;
    while ($i <= 50) {
        echo "<tr>
    <td width=\"20%\" height=\"23\" valign=\"top\">
      <p><input type=\"text\" name=\"name$i\" size=\"26\"></p>
    </td>
    <td width=\"20%\" height=\"23\" valign=\"top\">
    <input type=\"text\" name=\"email$i\" size=\"26\">
    </td>
    <td width=\"20%\" height=\"23\" valign=\"top\">
    <input type=\"text\" name=\"homepage$i\" size=\"26\">
    </td>
    <td width=\"13%\" height=\"23\" valign=\"top\">
    <input type=\"text\" name=\"datum$i\" size=\"15\">
    </td>
    <td width=\"27%\" height=\"23\" valign=\"top\">
      <p><textarea rows=\"6\" name=\"nachricht$i\" cols=\"31\"></textarea></p>
    </td>
    </tr>";

    $i = $i + 1; 
    }

    if($action=="saveentries") {



    $configfilew = fopen("entries.txt","a");

    $i = 50;
    while ($i <= 1)
    {


    fwrite($configfilew,"$datum$i."|".$name$i."|".$email$i."|".$homepage$i."|".."|".."|".$nachricht$i."|".");
    fclose($configfilew);

    $i = $i - 1; 
    }


    echo "<center><font color=\"#FFFFFF\">Daten erfolgreich geändert!<br>Wenn Sie die neuen Einstellungen sehen wollen, <br>dann bitte die Seite neu Aktualisieren.</font><br></center>";
    }

    ?>
    </table>
    <input type="submit" value="speichern"><input type="reset" value="löschen">
    </form>
    </center>
    </div>
    </table>
    </body>
    </html>
    Bin wie man sieht nich sehr gut im Umgang mit PHP...
    Aber wäre doch froh wenn mir da jemand helfen könnte...
    Gruss adihas

  • #2
    Oops, habe eben entdeckt was ich falsch gemacht habe...
    habe
    PHP-Code:
    $i 50;
    while (
    $i <= 1)
    {


    fwrite($configfilew,"$datum$i."|".$name$i."|".$email$i."|".$homepage$i."|".."|".."|".$nachricht$i."|".");
    fclose($configfilew);

    $i $i 1

    in
    PHP-Code:
    $i 50;
    while (
    $i >= 1)
    {


    fwrite($configfilew,"$datum$i."|".$name$i."|".$email$i."|".$homepage$i."|".."|".."|".$nachricht$i."|".");
    fclose($configfilew);

    $i $i 1

    umgewandelt, aber jetzt kommt folgende Fehlermeldung:
    Warning: fwrite(): 2 is not a valid stream resource in C:\wampp2\htdocs\Guestbook-5\update.php on line 61

    Warning: fclose(): 2 is not a valid stream resource in C:\wampp2\htdocs\Guestbook-5\update.php on line 62

    Was bedeutet das?

    Kommentar


    • #3
      du machst fwrite() aber kein fopen() ????

      machst du wenigstens ein fclose()?
      INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


      Kommentar


      • #4
        Ich habe ja ein fopen() und ein fclose()!?

        Kommentar


        • #5
          habe ich wohl übersehen...

          änder mal die zeile in das hier. die ist nciht korrekt.

          PHP-Code:
          fwrite($configfilew,$datum.$i."|".$name.$i."|".$email.$i."|".$homepage.$i."|"."|"."|".$nachricht.$i."|"); 
          INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


          Kommentar


          • #6
            Du hattest recht...ich musste das:
            PHP-Code:
            $configfilew fopen("entries.txt","a"); 
            in die Schleife einbauen, dann gehts, nur speichert es dann die Daten ganz falsch, irgendwie so: ??>.>

            Ich werde jetzt mal das machen, was du gesagt hast!

            Kommentar


            • #7
              Es klappt nich so, wie ich es will...
              Es speichert nur komische sachen :-P
              Es speichert immer wieder etwas anders, immer diese Zeichen: ?.;>

              Weiss nicht was das Problem ist...

              Die while schleife, die die Daten speichern sollte, sieh nun so aus:
              PHP-Code:
              $i 50;
              while (
              $i >= 1)
              {

              $configfilew fopen("entries.txt","a");
              fwrite($configfilew,"$datum$i."|".$name$i."|".$email$i."|".$homepage$i."|"."|"."|".$nachricht$i."|".\n");
              fclose($configfilew);

              $i $i 1

              Was ist daran falsch??

              Kommentar


              • #8
                du hast auch nicht das gemacht was abraxax gesagt hast ...

                hier ABRAXAX code
                PHP-Code:
                fwrite($configfilew,$datum.$i."|".$name.$i."|".$email.$i."|".$homepage.$i."|"."|"."|".$nachricht.$i."|"); 
                hier deiner :
                PHP-Code:
                fwrite($configfilew,"$datum$i."|".$name$i."|".$email$i."|".$homepage$i."|"."|"."|".$nachricht$i."|".\n"); 
                eigentlich muesste das sogar ne fehler,eldung geben (dein code ) ....
                aber scheinbar wird er nur vollkommen falsch interpretiert ....

                nimm abraxax dann sollte er das zumindestens lesbarer speichern ...

                ALSO OHNE " vor dem $datum am anfang ....

                Kommentar


                • #9
                  OK, habe es so gemacht, nur funktionierts imernoch nicht richtig, jetzt speichert es einfach den wert $i, nicht den wert von datum1, datum2 u.s.w, nur die zahl der variabel $i....

                  Kommentar


                  • #10
                    also dann haste scheinbar die werte nicht gesetzt ....

                    hab mir eben, da ich keine datei schreibn wollt, nen aewhnlihces skript gebastelt:

                    <?php
                    $datum = "datum";
                    $name = "name";
                    $email = "email";
                    $nachricht = "nachricht";
                    $homepage = "homepage";

                    $i=50;
                    while ($i >= 1)
                    {

                    $ausgabe .=$datum.$i."|".$name.$i."|".$email.$i."|".$homepage.$i."|"."|"."|".$nachricht.$i."|<br>";

                    $i--;
                    }
                    echo $ausgabe;
                    ?>

                    und die ausgabe ist korrekt ....

                    skript ist auch ausfuehrbar :
                    http://www.history-of-gaming.de/test/whiletester.php

                    greetz
                    iglo

                    Kommentar


                    • #11
                      Finde die Idee gut, nur ist es nicht dass, was ich brauche...
                      Ich will dich den wert von $i speichern, sonder so:
                      $datum50 | $email50 ...
                      $datum49 | $email49 ...

                      also, dass das es die Angaben vom Feld datum50 abspeichert...
                      weiss du jetzt was ich meine?

                      Kommentar


                      • #12
                        ok meinst du das ?

                        http://www.history-of-gaming.de/test/whiletester.php
                        wieder dort zu sehen



                        und hier der quellcode :


                        <?php
                        $datum3 = "22.11.1980";
                        $datum2 = "11.10.1570";
                        $datum1 = "22.07.3812";
                        $name3 = "franz";
                        $name2 = "hugo";
                        $name1 = "engelbert";
                        $email3 = "email3";
                        $email2 = "email2";
                        $email1 = "email1";
                        $nachricht3 = "huhu";
                        $nachricht2 = "tag";
                        $nachricht1 = "sabber";

                        $homepage3 = "toll";
                        $homepage2 = "kacke";
                        $homepage1 = "bleode";

                        $i=3;
                        while ($i >= 1)
                        {
                        $tag = "datum".$i;
                        $name = "name".$i;
                        $email = "email".$i;
                        $homepage = "homepage".$i;
                        $nachricht = "nachricht".$i;
                        $ausgabe .=$$tag."|".$$name."|".$$email."|".$$homepage."|"."|"."|".$$nachricht."|<br>";
                        $i--;
                        }
                        echo $ausgabe;
                        ?>


                        hab den mal nur mit 3 gemacht , waer sonst do ch nen bissel viel arbeit gewesem

                        so nochmal geaendert ... da fehlten noch . --> parse errors ...

                        ist es das?

                        greetz

                        iglo

                        Kommentar


                        • #13
                          Ja genau, das meine ich!
                          Vielen Dank für deine Hilfe!
                          Gruss adihas

                          Kommentar


                          • #14
                            kein problem .....

                            allerdings frag ich mich ob du nicht vielleciht leiber mit arrays arbeiten solltest, denn diese $$var schreibweise find ich immer ziemlich aetzend und sie ist oft unnoetig ....

                            Kommentar


                            • #15
                              Original geschrieben von kapitaeniglo
                              [...] und sie ist oft unnoetig ....
                              jepp.

                              und arrays sind wesentlich komfortabler.
                              INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                              Kommentar

                              Lädt...
                              X