問題から始めます。私は、mysql_fetch_assoc()呼び出しをループして、すべてのフィールドを行から表示しています。新しいパスがあれば、新しい行に加えて古い行の値も加えられます。それは各パスを合成する。私は多くのことを試して、多くのポストやフォーラムを見てきました。どんな助けもありがとうございます。mysql_fetch_assoc()の結果は、古い値を新しい値に合成します。何か案は?
編集:申し訳ありませんが、私は質問を投稿した後にインデントがうまくなりません。ループここ
$query = "SELECT h._userNumber, d._dateWorked, h._hoursWorked FROM pay_hours h, pay_dates d WHERE d._userNumber=h._userNumber ORDER BY d._dateWorked DESC"; // gets the user, hours and dates and displys most recent dates first.
$result = $keyFrameObject->Execute($query); // wrapper for mysql_query()
です::クエリここ
CREATE TABLE pay_hours
(
_key int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
_userNumber int(11),
_hoursWorked double
);
CREATE TABLE pay_dates
(
_key int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
_userNumber int(11),
_dateWorked date
);
です:
ここではMySQLのテーブル・スクリプトです
$row = mysql_fetch_assoc($result);
while ($row)
{
$table .= "<tr>";
foreach ($row as $field)
{
$table .= "<td>" . $field . "</td>";
}
$table .= "</tr>";
$row = mysql_fetch_assoc($result);
}
これは、PHPのページだと私は最終的に表をエコーしますこのデータで作成されます。テスト目的で同じuserNumber値を使用している間は、dateWorkedとhoursWorkedの値を入力しています。ここではいくつかのサンプル入力と出力は(var_dump($row)
を使用して)です:
入力:
date = 2011-08-05
hours = 1
出力:
array(3) { ["_userNumber"]=> string(3) "333" ["_dateWorked"]=> string(10) "2011-08-05" ["_hoursWorked"]=> string(1) "1" }
今すぐページが戻って掲載していると私は値の新しいセットに入力します:
入力:
date = 2011-08-04
hours = 5
出力(フォーマットされていない):
array(3) { ["_userNumber"]=> string(3) "333" ["_dateWorked"]=> string(10) "2011-08-05" ["_hoursWorked"]=> string(1) "5" } array(3) { ["_userNumber"]=> string(3) "333" ["_dateWorked"]=> string(10) "2011-08-05" ["_hoursWorked"]=> string(1) "1" } array(3) { ["_userNumber"]=> string(3) "333" ["_dateWorked"]=> string(10) "2011-08-04" ["_hoursWorked"]=> string(1) "1" } array(3) { ["_userNumber"]=> string(3) "333" ["_dateWorked"]=> string(10) "2011-08-04" ["_hoursWorked"]=> string(1) "5" }
出力(フォーマット):
array(3) { ["_userNumber"]=> string(3) "333" ["_dateWorked"]=> string(10) "2011-08-05" ["_hoursWorked"]=> string(1) "5" }
array(3) { ["_userNumber"]=> string(3) "333" ["_dateWorked"]=> string(10) "2011-08-05" ["_hoursWorked"]=> string(1) "1" }
array(3) { ["_userNumber"]=> string(3) "333" ["_dateWorked"]=> string(10) "2011-08-04" ["_hoursWorked"]=> string(1) "1" }
array(3) { ["_userNumber"]=> string(3) "333" ["_dateWorked"]=> string(10) "2011-08-04" ["_hoursWorked"]=> string(1) "5" }
Iが値を入力し、コードを実行するたびに、それが更なる化合物。問題はループだとは思いますが、わかりません。何とか$行はポストバックの後に値を保持しています。
もう一度お返事いただき、ありがとうございます。これ以上の情報が必要な場合はお知らせください。
ここでvar_ダンプをやっていますか?それがwhileループの中にあれば、表示される出力は期待されるものです。whileループが完了した後にvar_dump($ table)は何を表示しますか? – vascowhite