これが私のコードです。
<center>
<html>
<body>
<form method="post" name="AwardList" action="<?php echo $_SERVER['PHP_SELF']?>">
<script>
function awardSort($ID)
{
document.AwardList.hiddenID.value = $ID;
document.AwardList.submit();
}
</script>
<table border=1>
<input type="hidden" name="hiddenID" />
<tr>
<th><b>Award</b></th>
<th><b>Issue ID</b></th>
<th><b>Sort #</b></th>
<th><b>Submit</b></th>
</tr>
<?php
$userid = ($vbulletin->userinfo['userid']);
$query = ("select a.*, userdisplayorder, issue_id from award a join award_user aw on a.award_id = aw.award_id where aw.userid = '$userid'");
if (isset($_POST['submit'])){
$userdisplayorder = mysql_real_escape_string($_POST['userdisplayorder']);
echo $_POST[hiddenID];
echo '<br>';
echo $userdisplayorder;
$sql = mysql_query("UPDATE award_user SET userdisplayorder='$userdisplayorder' WHERE userid='$userid' AND issue_id='$_POST[hiddenID]'");
}
$result = mysql_query($query) or die(mysql_error());
while ($row = mysql_fetch_array($result)){
$awardimgurl = $row['award_img_url'];
$ID = $row['issue_id'];
$userdisplayorder = $row['userdisplayorder'];
echo '<tr>';
echo '<th>'; echo "<img src='$awardimgurl'>"; echo '</th>';
echo '<th>'; echo '<input type="text" name="issueid" readonly="readonly" value="' . $ID . '" size="5">'; echo '</th>';
echo '<th>'; echo '<input type="text" name="userdisplayorder" value="' . $userdisplayorder . '" size="5">'; echo '</th>';
echo '<th>'; echo "<center><input type='submit' name='submit' value='Submit' onclick=awardSort('$ID')></center>"; echo '</th>';
echo '</tr>';
}
?>
</table>
</html></center>
ウェブページでは次のように表示されます。
編集:ここにいくつかの追加情報があります。
コードを修正して、何が印刷されているかを確認しました
結果:
アワード発行IDは今のところ問題ありません。ただし、ソート # は機能しません。issue_id 88 の最初の賞を Sort # 3 に変更すると、0 に戻るだけです。ただし、issue_id 14537 の sort # は何にでも変更できます。issue_id 14537 のソート # を 5 に変更し、次に issue_id 5 のソート # を 3 に変更すると、5 になります。それ自体ではなく、issue_id 14537 のソート # にある値を使用しています。$ID のように $userdisplayorder を一意にする関数を作成しようとしましたが、2 つの onclick を実行する方法がわかりません。