-3

私が実行しようとしている典型的なタスクに関するさまざまな投稿を読んでいると、私は混乱しています。したがって、2013 年のこの時点で、次のことを達成するためのベスト プラクティス ソリューションは何ですか。

  • ユーザーに多くの値 x1、x2、.....xn を要求する html ページがあります。
  • そのような入力は 10 から 20 あるかもしれません。そのため、それらが失われたり、何らかの理由で再入力する必要がないようにしたいと考えています。
  • ユーザー入力に基づいて計算を実行し、結果を出力します (例: y1、y2、y3..y5)。
  • ここの投稿のいくつかで示唆されているように、私は "echo" (PHP 用) を試しましたが、うまくいきました。ただし、新しいページに結果が表示されるため、ユーザー入力は表示されなくなります。
  • 入力と結果の両方をユーザーに見てもらいたい。そうすれば、必要に応じて印刷して、1 ページにすべての情報を表示できます。
  • 私は「基本的な」技術を使用することを好みます。ほとんどのユーザーが使用でき、警告に対して [OK] をクリックしたり、ブラウザーの設定を変更したり、何かを受け入れたりする必要がない技術.

前もって感謝します!

4

2 に答える 2

1
  1. html で入力を作成します。
  2. ページのリロードまたは AJAX のいずれかを選択
  3. リロードを選択した場合は、

コード:

  <form action="nextfile.php" method="POST">
   <input type="text" value="" name="y1" />
   <input type="text" value="" name="y2" />
   <input type="submit" value="calc me" name="submit" />
  </form> 

次に、 nextfile.php で値を取得する必要があり、$_POSTそれらを保存する場合は使用します$_SESSION

例えば

<?php 
session_start();
if(isset($_POST['y1']) && isset($_POST['y2']))
{
    $_SESSION['res'] = (int)$_POST['y1'] * (int)$_POST['y2'];
}

上記のコードは、y1 と y2 という名前の 2 つの入力に対して計算を実行し、それらをセッションに保存します。

AJAX が必要な場合は、このページにアクセスして例を参照する必要があります

JavaScript ソリューションはニーズに適合し、サーバー コードは必要ないため、JavaScript ソリューションを検討する必要があります。

于 2013-07-09T10:32:32.240 に答える
0

最も簡単な方法は、フォームを同じページに送信し、入力フィールドに再入力することです。

// calc.php
<?php

    if (isset($_POST['foo'])) {
        echo 'Result: ', $_POST['foo'] + 1;
    }

?>

<form action="calc.php" ...>
   <input name="foo" value="<?php if (isset($_POST['foo'])) echo htmlspecialchars($_POST['foo']); ?>">
   ...
</form>

より最新のバージョンでは、AJAX を介して計算を送信し、ページをリロードせずに Javascript を介して結果を入力します。

于 2013-07-09T10:32:43.203 に答える