1

さて、この質問の解決策を探しましたが、役に立ちませんでした。私の言い方かもしれませんが、考えられることはほぼすべて試しました。そして、これはおそらく非常に単純なことであることを私は知っています。

私が抱えている問題はこれです:

MySQL データベースからのデータが事前入力されたフォームがあります。フォームのこの部分は、(ユーザーが以前に入力した) レコードを表示するためのものです。私はそれを機能させることができます。データベースがリンクされており、必要な特定のテーブルの行のデータが表示されます。しかし、これは私が問題を抱えているものです。

ユーザーがデータベース内のデータの各行を循環し、それに応じてフォームに出力できるボタンが必要です。

少し複雑なので、簡単な例を使用します。

ID、Name、 およびEmailAddressの 3 つの列を含む基本的なテーブルが MySQL データベースにあるとします。

データを取得するクエリは次のとおりです。

$sql = "SELECT * from tbl_Users ORDER BY ID ASC";
$query = mysql_query($sql);
$result = mysql_fetch_array($query);

これが非推奨であることはわかっていますが、古いバージョンの php で作業しており、この特定のドメインで他のページ/アプリの一貫性を維持しようとしています。

ここで、2 つの入力と送信ボタンを備えた単純なフォームがあるとします。

HTML

<form name="button" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<input type="text" name="Name" value="<?php echo $row[Name]; ?>" />
<input type="text" name="emailAddress" value="<?php echo $row[EmailAddress]; ?>" />
<input type="submit" name="submit" value="Next Record" />
</form>

これで、必要なものをフォームに反映させることができます。必要に応じて、フォームに行を事前入力できます。問題は送信ボタンにあります。

送信ボタンをクリックすると、次の行がフォームに入力され、レコードの最後まで続きます。

if(isset($_POST['submit']{...} を試しましたが、これを機能させる方法が正確にはわかりません。ループなどを試しました。方法があることはわかっています。今のところ理解できません。よろしくお願いします。

4

2 に答える 2

0

残念ながら、あなたの場合、PHPはサーバー側であり、クライアント側が追いついて出力する前にクエリを実行します。これにはjavascriptを使用する必要があると思います。

1.ロード時にすべてのテーブル情報を取得し(遅い方法)、javascriptを使用してそのクエリの特定の要素を表示/非表示にします。または 2. AJAX を使用して、コマンドでデータを取得できます。

このための AJAX 呼び出しを実行するには、javascript を学習することをお勧めします (たとえば、jQuery のようなフレームワークを使用します) 。

于 2013-04-16T22:42:20.047 に答える