Brauche Script, das mir einen vordefinierten Inhalt in einer neue Datei schreibt

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

  • Brauche Script, das mir einen vordefinierten Inhalt in einer neue Datei schreibt

    Hallo!

    Also ich hab ein kleiner (?) Problem.

    Ich brauche ein Script das mir einen Vordefinierten Inhalt in eine neue Datei schreibt, also die Datei erst erstellen muss. Der Name der neuen Datei sollte variabel sein (z.B. über ein Texteingabefeld bestimmbar), aber auf die Endung .php hören. Dann muss das Script auch an ner 2 Stelle noch Variabel sein : Der Inhalt der neuen Datei verweist, mittels include() auf eine andere Datei die bei mir im Ordner "txt" liegt und auch ne .txt Datei ist.

    Den Inhalt der in die neue Datei,die geschrieben werden soll, sieht wiefolgt aus :
    Code:
    <html>
    <head>
    <title>
    </title>
    <link rel="stylesheet" type="text/css" href="styling.css">
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    
    </head>
    
    <body bgcolor="#000000" text="#FFFFFF" link="#FFFFFF" vlink="#FFFFFF" alink="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" background="design_images/backback.gif">
    <table width="800" border="0" height="600" cellspacing="0" cellpadding="0" align="center">
      <tr> 
        <td valign="top" height="66"><img src="design_images/very_top.gif" usemap="#Map" border="0" width="800" height="50"><br>
          <img border="0" src="images/Rookie_Webdesignz.gif" width="820" height="143"></td>
      </tr>
      <tr> 
        <td height="40"><img src="design_images/under_banner.gif" width="800" height="41"></td>
      </tr>
      <tr>
        <td valign="top" bgcolor="#000000"> 
          <table width="99%" border="0" cellspacing="0" cellpadding="0" height="404">
            <tr> 
              <td width="20%">
                <div align="center" style="width: 165; height: 100%"> 
    
                  <p><?php include("navigation.php"); ?> </p>
                </div>
              </td>
              <td width="80%" valign="top" bgcolor="#000000"> 
                <table width="99%" border="0" cellpadding="0" cellspacing="0" height="353">
                  <tr> 
                    <td valign="top" width="67%"> 
                      <p></p>
    	<p>
    	<center><textarea cols="100%" rows="50%"><?php
    	include("txt/textdatei.txt"); [COLOR=red]// <----Der Name der Textdatei muss variabel sein[/COLOR] 	?>
    	</textarea></center>
                    </td>
                          </tr>
                </table>
                <div align="left"><font face="Verdana, Arial, Helvetica, sans-serif" size="1"> 
                  <noscript></noscript></font></div>
              </td>
            </tr>
          </table>  
          <div align="center">
            <p>&nbsp;</p>
            <p>&nbsp;</p>
          </div>
        </td>
      </tr>
    </table>
    <map name="Map">
      <area shape="rect" coords="10, 3, 72, 36" target="_blank" nohref>
    </map>
    </body>
    </html>
    Ich hoffe mir kann jemand helfen.

    Danke schonmal im Vorraus
    EDIT:
    code.tags by wotan
    Zuletzt geändert von Wotan; 25.06.2003, 07:17.

  • #2
    bastel dir ein formular mit zwei textfeldern
    eines für den namen der zeildatei
    eines für den namen der textdatei

    die beiden namen hast du dann im $_POST array zur verfügung

    zum datei schreiben brauchst du fopen, fwrite und fclose

    hth
    EDIT:
    ggf. noch ein feld in dass du ein passwort eingibst, dass du dann prüfst, sonst könnte ja jeder deinen server zumüllen
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      PHP-Code:
      <?php
      $VordefinierterInhalt 
      "include(\"txt/textdatei.txt\");";
      $FileName "Wunsch1.php";

      $fp fopen($FileName,"w"); // File zum Schreiben öffnen
      if (!$fp) {
          print 
      "File $FileName konnte nicht angelegt werden<br>\n";
      } else {
         
      $zeile $VordefinierterInhalt "\n";
         
      fputs($fp$zeile);
         
      fclose($fp);
      }
      ?>

      Kommentar


      • #4
        Hey Cool, danke euch, ihr seid ja echt hardcore *g* PHP ist noch neuland für mich.

        Also ich hab mir jetzt das Formular mit den 2 Textfeldern gebastelt, nur weiß ich noch nicht wie ich den php code einbinden soll, so dass der die Angaben aus dem Formular verwendet.

        Ausserdem sollte der Dateiname nicht Wunsch1.php sein, sondern der, den ich im Textfeld angebebe. Und der soll im Vordefinierten Inhalt den Namen der zugehörigen txt Datei so ändern, wie ich es im Formular angebe (was da Variabel sein muss hab ich oben Rot markiert).
        Ja ich weiß, ich habs mit meinen Sonderwünschen, aber nochmal dank an euch.

        Greetz Rook

        @hand : so wie ich das verstanden hab, setzt der in deinem code die variable VordefinierterInhalt auf den Inhalt der Datei
        txt/textdatei.txt. Ich würd das dann so ändern, das der inhalt nicht aus einer Datei geholt wird, sondern komplett im Source
        Code Angegeben wird, weil der soll aber am Vordefinierten Inhalt eins ändern, nämlich den Namen der zugehörigen txt datei
        (oben halt rot markiert) Und zwar in den Namen, den ich im Formular angebe.

        Dann die Var. FileName auf Wunsch.php

        dann öffnet der die Datei, die in $Filename definiert wurde zum schreiben ("w")

        Der soll sich aber den Namen der Datei, die in $filename definiert wird aus dem Formular holen.


        Das Formular sieht so aus :
        PHP-Code:
        <html>
        <
        head>
        </
        head>
        <
        body>
        <
        input type="text" name="Neuer Dateiname" maxlength="50" size="25">Name
        <input type="text" name="Zugehörige txt Datei" maxlength="50" size="25">txt datei
        <input type="Submit" name="submit" value="Senden">
        </
        body>
        </
        html
        Zuletzt geändert von RookieXL2; 25.06.2003, 08:42.

        Kommentar


        • #5
          Original geschrieben von RookieXL2
          <input type="text" name="Neuer Dateiname" maxlength="50" size="25">Name
          <input type="text" name="Zugehörige txt Datei" maxlength="50" size="25">txt datei
          das überdenkst du aber bite nochmal.

          zitat selfhtml: "Der Name sollte nicht zu lang sein und darf keine Leerzeichen, Sonderzeichen oder deutsche Umlaute enthalten."
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            Danke für den Hinweis, ich bin gerade dabei das ganze Script zu überarbeiten, aber das wird kein öffentlich zugängliches, das ist nur für mich um mir die arbeit zu erleichtern.

            Greetz Rook

            Kommentar


            • #7
              Fehler im Script, wer ihn findet darf ihn behalten

              *AAAARGH* Ich krieg die Krise.

              Also ich hab das Script wie folgt fertig geschrieben :

              PHP-Code:
              <?php
              if(isset($_POST['FileName'])) {
              $name=$_POST['FileName'];
              };
              if(isset(
              $_POST['txt'])) {
              $mail=$_POST['txt'];
              };
              ?>
              <?php
              $VordefinierterInhalt 
              $VordefinierterInhalt "include(\"txt/textdatei.txt\");";
              $fp fopen($FileName,"w"); // File zum Schreiben öffnen
              if (!$fp) {
                  print 
              "File $FileName konnte nicht angelegt werden<br>\n";
              } else {
                 
              $zeile $VordefinierterInhalt "\n";
                 
              fputs($fp$zeile);
                 
              fclose($fp);
              }
              ?>

              <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
              <html>
              <head>
              <title></title>
              <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
              <meta name="MSSmartTagsPreventParsing" content="TRUE">
              <link rel="stylesheet" type="text/css" href="styling.css">
              </head>
              <body><body background="design_images/backback.gif">
              <center><img src="images/Rookie_Webdesignz.gif"></center>
              <form action="<?php print "$_SERVER[PHP_SELF]?>" method="post">
              <div style="text-align:center;">
              <?php
              print "Dateinamen der neu anzulegenden Datei: <input type=\"text\" name=\"FileName\" size=\"30\" maxlength=\"40\"><br><br>
              Zugehörige txt Datei: <input type=\"text\" name=\"txt\" size=\"30\" maxlength=\"40\"><br><br>"
              ;
              ?>
              <input type="submit" value="Abschicken" name="absend">&nbsp;<input type="reset" value="Zur&uuml;cksetzen">
              </div>
              </form>
              </body>
              </html>
              Der legt die Datei die ich im Textfeld eingebe auch an, aber wenn ich die Datei aufrufe steht da nur "include("txt/textdatei.txt"); "
              Der soll mir aber den INHALT der textdatei.txt Datei da rein packen (Datei enthält ganz oben angegebenen Source Code) und mir die fertige Datei ausgeben. Wo zum Geier issen jetzt der Fehler?

              Greetz Rook

              Kommentar


              • #8
                <? nicht vergessen
                Code:
                $VordefinierterInhalt = "<?include(\"txt/textdatei.txt\");";

                Kommentar


                • #9
                  Ja cool, danke. Das tuts jetzt.

                  Aber : Der schreibt mir nur den String include("txt/textdatei.txt"); in die neue Page, geht das nicht auch das er mir wirklich den Inhalt da rein pappt? Also nicht das er über include die Datei einbindet, sondern das er den Inhalt der Datei in die neu anzulegende Datei schreibt.

                  Greetz Rook

                  Kommentar


                  • #10
                    $VordefinierterInhalt = implode("\n",file("txt/textdatei.txt"));
                    Ich denke, also bin ich. - Einige sind trotzdem...

                    Kommentar


                    • #11
                      Danke, ihr seid echt die besten, ich weiß nicht was ich ohne euch gemacht hätte.

                      Kommentar


                      • #12
                        Überweise einfach den Betrag, davon leben wir ja schließlich

                        Kommentar


                        • #13
                          Ööhm wenn du mir jetzt noch sagst, wieso ich die angelegte Datei hinterher nichtmehr im Confixx WebFTP bearbeiten kann (angeblich nicht die erforderlichen Rechte) können wir dadrüber reden CHMOD 777 tuts auch nicht.

                          Greetz Rook

                          Kommentar


                          • #14
                            Sind die Rechte tatsächlich auf 777 gesetzt? Wie überprüfst Du das? Womit hast Du die Rechte gesetzt? Mit PHP Mitteln oder über Confixx WebFTP.

                            Kommentar


                            • #15
                              Nein, ich habe VERSUCHT die rechte auf 777 zu setzen weil ich die Datei über Confixx WebFTP zwar einlesen, aber die änderrungen nicht speichern kann. Hab dann über WSFTP versucht die Rechte auf 777 zu setzen, das ging aber auch nicht.

                              Greetz Rook

                              Kommentar

                              Lädt...
                              X