2012-07-25 3 views
1

PHP를 사용하여 HTML 텍스트 필드에서 데이터베이스로 데이터를 업데이트하려고합니다. 알림 필드를 업데이트하고 싶습니다. SQL 쿼리에 텍스트 필드 값을 가져올 수 없습니다. 여기 내 코드입니다 :PHP를 사용하여 HTML 텍스트 필드에서 MySQL 데이터베이스로 데이터 업데이트

그것은 noticifations 필드처럼 보이는
$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

가능성이 문자열입니다, 그래서 당신은이 같은 금리를 탈출해야합니다

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

귀하의 코드를 주입 ​​아주 열려 잠재적 공격을 막기 위해 준비된 진술을 사용하고 PDO 또는 msqli로 이동해야합니다.

+0

문제가 해결되었습니다. 방금 유형 이름을 입력하기 위해 []를 추가했습니다. 이제 작동합니다. – user1108483

관련 문제