1

私はphpプロジェクトに取り組んでいます、

データベースにデータを更新するためのレコードが 10 個あるので、助けが必要です。以下の診断を参照してください。

ここに画像の説明を入力

No_Infoオプションが表示されているように、No_DataおよびAvailableと表示されます。

したがって、ユーザーが ID:1 の No_data をクリックすると、対応する ID に関連付けられているフィールドが無効になります。と同じ利用可能な作品。

しかし、それはすべて ID: 1 でのみ機能し、他の行は機能していません.....

編集: ここでコードを更新します。

>>>> <?php
//connect to the database server
$objConnect = mysql_connect("localhost","root","") or  die(mysql_error()); 
//select the database 
$objDB = mysql_select_db("main_project"); 
//select which data you want to get.
$sql           = "SELECT * FROM website_maindb";
$objQuery      = mysql_query($sql);
// $Ct = mysql_query('select * from company_type');
/* $objResult     = mysql_fetch_array($objQuery);   // Not to use when using loop to call full database */
?>
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>ss</title>
    <script>
function disable()
{
document.getElementById("noi1").disabled=true;
document.getElementById("noi2").disabled=true;
document.getElementById("noi3").disabled=true;
document.getElementById("noi4").disabled=true;
document.getElementById("noi5").disabled=true;
document.getElementById("noi6").disabled=true;

}
function enable()
{
document.getElementById("noi1").disabled=false;
document.getElementById("noi2").disabled=false;
document.getElementById("noi3").disabled=false;
document.getElementById("noi4").disabled=false;
document.getElementById("noi5").disabled=false;
document.getElementById("noi6").disabled=false;
}
</script>
    </head>
    <body>

<form id="form" action="insert.php" method="post">
<table width="700" border="1">  
<tr> 
<th></th>  
<th width="20"> <div align="center">ID </div></th>  
<th width="98"> <div align="center">website </div></th> 
<th width="98"> <div align="center">category </div></th>
<th width="98"> <div align="center">email </div></th>
<th width="98"> <div align="center">contact form </div></th> 
<th width="98"> <div align="center">Primary No. </div></th> 
<th width="98"> <div align="center">Secondary No. </div></th> 
<th width="98"> <div align="center">fax </div></th> 
<th width="98"> <div align="center">Company type </div></th> 
<th width="98"> <div align="center">No_Info </div></th> 
<th width="98"> <div align="center">time </div></th> 
</th>  
</tr>
<?php
$options = '';
$Ctype=mysql_query("select distinct typec from company_type");
while($row = mysql_fetch_array($Ctype)) {
    $options .="<option>" . $row['typec'] . "</option>";
}
?>

<?php 
$i = 0;  
while($objResult = mysql_fetch_array($objQuery))  
{  
$i++;  
?>  
<tr>  
<td><input type="hidden" name="WID" value="<?=$objResult["WID"];?>"></td>  
<td><label><input type="text" name="ID" value="<?=$objResult["WID"];?>" disabled></label></td>  
<td><input type="text" name="website" value="<?=$objResult["website"];?>"></td> 
<td><input type="text" name="cat" size="10"></td> 
<td><input type="text" id="noi1" name="email" size="10"></td> 
<td><input type="text" id="noi2" name="cform" size="10"></td>  
<td><input type="text" id="noi3" name="contactp" size="10"></td>  
<td><input type="text" id="noi4" name="contacts" size="10"></td>  
<td><input type="text" id="noi5" name="fax" size="10"></td>  
<td><select id="Ctype" name="Ctype"> <?="  $options  "?> </select></td>  
<td><button type="button" onclick="disable()" size="20">No_Data</button> </br>
<button type="button" onclick="enable()" size="20">Available</button> 
</td>  
<td><input type="text" id="noi6" name="time" size="10"></td>  
</tr> 
<?php  
}  
?> 
<button type="submit" id="send">Submit</button>
</form>
</table>
</body>
</html>

誰もがそれを解決するのを助けることができます..

4

2 に答える 2

1

あなたはそれを少し間違っています。フォーム フィールドを配列で作成する必要があります。このような:

<input type="text" id="noi1_<?php echo $i; ?>" name="email[]" size="10">

.

そしてあなたのボタンは次のようになります:

<button type="button" onclick="disable('<?php echo $i; ?>')" size="20">No_Data</button>

.

次に、あなたのJSで:

function disable(idx)
{
  document.getElementById("noi1_"+idx).disabled=true;
  .
  .

. .

最後に $_POST でフォームを受け取ると、 $_POST['email'] を配列として取得します。

于 2013-04-10T08:33:38.457 に答える