2015-08-15 15 views
0

我有問題,當更新idSoal(PK),但對於其他可以做到這一點,SQL代碼是這樣的:如何更新主鍵字段的數據?

==>的index.php

<td align="center"><a href="editSoal.php?idSoal=<?php echo $row['idSoal']; ?>"><img src="images/edit.png" /></a></td> 

==> editSoal.php

$id_soal=$_GET['idSoal']; 
$sql = "SELECT * FROM soal WHERE idSoal = '$id_soal'"; 
............. 
<form id="contactform" action="proses_editSoal.php" method="POST"> 
    <label for="id_soal">ID SOAL</label> 
     <input id="id_soal" name="id_soal" value="<?php echo $row['idSoal']; ?>" required="" type="text" "> 
    <label for="soal">SOAL</label> 
    <input id="nama" name="soal" value="<?php echo $row['soal']; ?>" required="" type="text" > 
    <input class="buttom" name="submit" id="submit" tabindex="5" value="Edit!" type="submit">  
</form> 

==> proses_editSoal.php

$id_soal=$_POST['id_soal']; 
$soal = $_POST['soal']; 
$query="UPDATE soal SET idSoal='$id_soal',soal='$soal' WHERE idSoal='$id_soal'"; 

爲 「SOAL」 我可以更新它。我的問題在哪裏?

+0

有沒有錯誤? – KoKo

+0

沒有..只是idSoal無法更新,但爲soal沒有問題 – Rayyan

+0

此外,SQL注入。使用預準備語句 – Ben

回答

1

看來你是在SET和WHERE中使用相同的變量爲idSoal值。所以你沒有改變它的價值。

在mysql中你可以更新任何字段。嘗試打印查詢,你會看到問題。

+0

但是當我從phpmyadmin更新它的工作 – Rayyan

+0

@Rayyan你可以做echo $ query;並在這裏複製輸出 – KoKo