여기에 업데이트 된 코어가 있습니다. 그것을하는 적당한 방법입니까? 웹에서 자습서를 따라 Prepared Statements를 시도하지만 잘 작동하지 않습니다.PHP 업데이트를 수행하는 올바른 방법입니까?
$Enrolsql = "Select * FROM Enrol WHERE ActivityID=$activityid AND UserPhone=$userPhone AND UseUp=1";
$Enrolresult = $conn->query($Enrolsql);
if ($Enrolresult->num_rows > 0) {
$ssql = "UPDATE Enrol SET UseUp=0 WHERE ActivityID=$activityid";
if (mysqli_query($conn, $ssql)) {
echo "+1+"; //successfully Used.
} else {
echo "+2+"; // System Error.
}
} else {
echo "+0+"; // Coupon is not Vaild
}
$conn->close();
데이터베이스 테이블 정보 : http://php.net/manual/en/mysqli.query.php에 따르면
당신의 쿼리가 성공적으로 실행한다는 것을 의미한다. 영향을받은 행 수를 확인하여 어떤 일이 발생했는지 확인하십시오. 그리고 SQL 인젝션을 읽어야합니다. – jeroen
if 루프가 쿼리 실행과 관련이 있으며 유효하지 않거나 유효하지 않은 값입니다. – pr1nc3
문제가 생기기 전에 http://bobby-tables.com을 방문하고 SQL 주입에 대해 알아야합니다. 실제로 코드는 실제로 취약하며 전혀 저장하지 않습니다. 시스템에 대한 더 깊은 지식 없이도 데이터베이스 전체가 몇 초 안에 해킹 당할 수 있습니다. 절대로 사용자 입력을 직접 쿼리에 넣지 마십시오. 대신 준비된 문을 사용하십시오. 준비된 진술에 대해 배우고 bobby-tables.com에서 사용하는 방법을 배울 수 있습니다 - 정말 쉬운 주제이며 2 분 안에 코드가 변경됩니다. 이 작업을 수행하는 것이 좋습니다. – Twinfriends