2012-07-25 86 views
1

我嘗試使用PHP將數據從HTML文本字段更新爲數據庫。我想更新通知字段。我無法將文本字段值轉換爲SQL查詢。這裏是我的代碼:使用PHP將數據從HTML文本字段更新到MySQL數據庫

$result = mysql_query($query) or die (mysql_error()); // Run query 
    while($row = mysql_fetch_array($result)) { ?> 
     <tr><td><?php echo $row[0];?></td>  
     <td><?php echo $row[1];?></td> 
     <td><?php echo $row[2];?></td> 
     <td><?php echo $row[3];?></td> 
     <td><?php echo $row[4];?></td> 
     <td><input type="text" name="notifications" value="<?php echo $row[5];?>" size=13></td></tr> 
<?php 
if (isset($_POST['save'])) { 
    for($i = 0; $i < $count; $i++) // For loop 
    { 
     $id=mysql_result($result,$i,"id"); // Get id from query 
     $notifications = $_POST['notifications']; 
     $update = "UPDATE testtable SET notifications = {$notifications[$i]} WHERE id = {$id}"; 
     echo "$update<br>"; 
     //mysql_query($update); // Run 
    } 

回答

0

它看起來像noticifations領域可能是一個字符串,所以你需要有這樣的報價進行轉義:

$update = "UPDATE testtable SET notifications = '{$notifications[$i]}' WHERE id = {$id}";

你的代碼是注射相當開放攻擊,你應該使用準備好的語句,並轉移到PDO或msqli,以防止潛在的攻擊。

+0

問題已解決。我只是將[]添加到輸入類型名稱,現在它工作。 – user1108483 2012-07-25 16:57:45

相關問題