2012-10-30 2 views
-1

PHP를 통해 MySQL 데이터베이스를 업데이트하려고합니다. 업데이트가 성공적 이었는지, MySQL이 업데이트되지 않는지에 대해 알고 있습니다. MySQL에서 쿼리를 시도했지만 PHP 페이지를 통해서는 작동하지 않지만 거기에서 작동합니다. 왜? 이 시도PHP가 성공했지만 mysql이 업데이트되지 않는다고 말합니다.

$Request = mysql_query($sql, $con); 
$Result = mysql_affected_rows(); 
+1

'$ Id'의 실제 값을 디버깅하려고 시도 했습니까? (그런데 SQL 인젝션에 취약하다 - 최소 _에서 mysql_real_escape_string()을 호출해야한다) –

+2

'WHERE id = $ id' 조건과 맞는 행이 있는가? – Buksy

+0

테이블의 ID 필드가 Text 또는 Varchar입니다. 그렇다면 '$ Id'를 사용하지 말고 대신이 쿼리를 사용해보십시오. ' "UPDATE part SET Available = '예'WHERE Id =". $ Id' – Pratik

답변

0

기본 기능 mysql_affected_rows()를 사용하는이 솔루션을 시도

$의 SQL을 = "UPDATE 부품 SET 사용 가능 = '예'아이디 = '{$ 아이디 } '';

+0

당신은 $ result/$ request 등의 이유로 삽입/업데이트 쿼리가 실행되었다고 말할 것입니다 ... 그러나 mysql_affected_rows()를 사용하면 행이 업데이트/삽입 된 방법을 알려줄 것이므로 따라서 에 대한 쿼리를 테스트하십시오. – Brian

0

:

<?php 
include("checksession.php"); 
$Id = $_POST['Id']; 
$_SESSION['Id'] = $Id; 

include("dbconnect.php"); 

$sql = "UPDATE part SET Available = 'Yes' WHERE Id = '$Id'"; 
$result = mysql_query($sql, $con); 

if($result) 
{ 
Header("Location: Item.php?eMsg=Made Available"); 
} 
else 
{ 
Header("Location: Item.php?eMsg=Unable to Make Available"); 
} 

?> 
관련 문제