0 レビュー
1 回答
mysql-phpUPDATEテーブルを行ごとに
あるテーブルを別のテーブルから更新したいと思います。 1つのテーブルからデータを選択しています:
$result2 = mysql_query ('SELECT * FROM pages_language_overlay WHERE sys_language_uid = 1', $con);
次に、選択したデータで複数のテーブルを行ごとに更新したいと思います。
while ($row2 = mysql_fetch_array($result2)){
$updatepowerfields = "UPDATE tx_powermail_fields SET tstamp='$row2[11]' WHERE sys_language_uid = 0";
mysql_query($updatepowerfields,$con);
$updatepowerfieldsets = "UPDATE tx_powermail_fieldsets SET pid='$row2[0]', tstamp='$row2[11]', crdate='$row2[12]', cruser_id='$row2[13]',
t3ver_oid='$row2[2]', t3ver_id='$row2[3]', t3ver_wsid='$row2[4]', t3ver_label='$row2[5]', t3ver_state='$row2[6]', t3ver_stage='$row2[7]', t3ver_count='$row2[8]',
t3ver_tstamp='$row2[9]', t3_origuid='$row2[10]', deleted='$row2[19]', hidden='$row2[16]', starttime='$row2[17]', endtime='$row2[18]', title='$row2[15]'
WHERE sys_language_uid = 0";
mysql_query($updatepowerfieldsets$con);
}
それは機能しますが、私が期待していた方法ではありません。 「while」の最初の反復では、テーブル全体を1行で書き換えるだけです。これらのテーブルを行ごとに更新する必要があります。私は何が間違っているのですか?手伝ってくれませんか?ありがとう
わからない
0
レビュー
答え :
解決策:
while ($row2 = mysql_fetch_array($result2)){
for($i = 1; $i <= sizeof($row2); i++) {
mysql_query("update fld_name = $row2[i] where $id = '$i'");
}
}
実際には、1行しかフェッチされないため、whileループは必要ありません。お役に立てば幸いです。
わからない
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。