관리자 패널에 대한 업데이 트를 할 수 없다 내가 삭제, 편집 및 각 행에있는 옵션을 추가 테이블을 만들었습니다, 모든 일은 업데이 트 쿼리의 실행을 제외하고 완벽하게 작동하고 있습니다, uptil 지금 표시했습니다 그 형식으로 편집 할 텍스트를 찾고 echo()를 사용하여 검증 한 다음 페이지에 편집 값을 전달했습니다. 내 코드도 연결되지 있지만 업데이트 DB, 형태 아무 문제가 없다는 것을 의미하는 내 편집 값을 받고 쿼리 난`이전 update.php에게 에코로내가 변수에 값을 가지고 있지만 MySQL 데이터베이스에서
<head>
<?php
// 1. Create a database connection
// 2. Select a database to use
include('connect.php');
?>
<?php
// 3. Perform database query
$id=$_SESSION['id'];
$author=$_GET['author'];
$quotation=$_GET['quote'];
//below code is to check
echo $id . "<br>". $author . "<br>". $quotation ."<br>";
//4. update query
$query = "UPDATE 'quotations' SET
'author' = '$author',
'quotation' = '$quotation',
WHERE 'id' = '$id'";
mysql_query($query);
// test to see if the update occurred
if (mysql_affected_rows() == 1) {
// Success!
echo "The page was successfully updated.";
} else {
echo "The page could not be updated.";
}
?>
<?php
// 5. Close connection
mysql_close($connection);
session_destroy();
//header("Location: Admin.php"); commented just to observe the output.
?>
</body>
</html>
을 다음과 같습니다. 이와 관련하여 어떠한 고의라도 환영 할 것입니다.
['MySQL'] (http://php.net/manual/en/book.mysql.php) ('mysql_ *'functions) 확장은 [*** deprecated ***] (http://php.net/manual/en/function.mysql-connect.php)입니다. [mysqli] (http://php.net/manual/en/book.mysqli.php) ('mysqli_ *'함수) 나''PDO' (http://php.net/)를 사용하는 것이 좋습니다. manual/ko/book.pdo.php). – BlitZ
** 참고 : ** 귀하의 코드는 [*** SQL-Injection ***] (http://en.wikipedia.org/wiki/SQL_injection) 공격에 취약합니다. – BlitZ
나는 업데이트 자체에 문제가있는 바로 그 취약점이라고 생각합니다. 그러한 변수 중 하나라도 작은 따옴표를 포함하면 실패합니다. – EPB