0

現在、これをファイルに保存しようとしています。しかし、それはうまくいきません。

私が間違っていることを誰かが知っていますか?verturen値を保存するボタン を押したときの私の目標roまたはgテキストファイルに保存し、その後に保存し$s1arrayます。その後、ダウンロードを押すと$s1array、テキスト ファイルに読み込まれます。の新しい価値をいつまでも残しておきたい$s1array

(ここに私のコードがあります)

    <form method="post">
    <input type="submit" name="submit1" value="Versturen">
    <select name="state1sl1">
      <option name="groen" value="g">groen</option>}
      <option name="oranje" value="o">oranje</option>
      <option name="rood" value="r">rood</option>}
    </select>

    <select name="state1sl2">
      <option name="groen" value="g">groen</option>}
      <option name="oranje" value="o">oranje</option>
      <option name="rood" value="r">rood</option>}
    </select>

    <select name="state1sl3">
      <option name="groen" value="g">groen</option>}
      <option name="oranje" value="o">oranje</option>
      <option name="rood" value="r">rood</option>}
    </select>
    </form>

<form method="post">
<input type="submit" name="download" value="download">
</form>


    <?php
    if(isset($_POST['submit1'])){
    $_name1 = $_POST['state1sl1'];
    $_name2 = $_POST['state1sl2'];
    $_name3 = $_POST['state1sl3'];
    $my_File = 'T-Splitsing.txt';
    $fh = fopen($my_File, 'w') or die("can't open file");
    fwrite($fh, $_name1);
    fwrite($fh, $_name2);
    fwrite($fh, $_name3);
    fclose($fh);
    $s1array = file_get_contents("T-Splitsing.txt");
    }

  if(isset($_POST['download'])){


   $file = 'T-Splitsing.txt';

     if (file_exists($file)) {
     $my_File = 'T-Splitsing.txt';
     $fh = fopen($my_File, 'w') or die("can't open file");
     fwrite($fh, $s1array);
     fclose($fh);

    ?>
4

1 に答える 1

0

PHP は状態を覚えていないので、それはできません。フォームを送信するたびに、これが新しい HTTP 要求になります。それにもかかわらず、できることは (データを「T-Splitsing.txt」に保存していることがわかります)、単純にファイルからデータをロードしてユーザーに送信することです。コードの「ダウンロード」部分は次のようになります。

 if(isset($_POST["download"])){
   $file = "T-Splitsing.txt";
   header("Content-Type: text/plain");
   header("Content-disposition: attachment; filename=\"".$file."\""); 
   readfile($file);
 }
于 2013-04-08T09:45:58.513 に答える