2014-04-21 3 views
0

.post 찾을 수 없습니다 '테이블에서 SELECT *를 WHERE ID <'$ 임의 '아이디 DESC의 LIMIT BY ORDER 1'

+1

당신은 제대로을 연결해야합니다. [문서] (http://www.php.net/manual/en/language.operators.string.php)를 참조하십시오. –

+2

하지만 그냥 PHP를 배우기 시작하는 경우, 준비된 문으로 MySQLi 또는 PDO 확장을 사용하여 배우고 오히려 맹목적으로 당신의 SQL 쿼리에 사용자 입력을 주입하는 대신 변수를 바인딩합니다. –

+0

+1에 @AmalMurali가 말했다. SQL 주입 방법으로부터 자신을 보호하기 위해 준비된 문을 사용하여 http://us3.php.net/pdo.prepared-statements이 정답이다 – Axel

답변

4

귀하의 연결 라인 9 올바르지 않습니다

$db->query('SELECT * FROM table WHERE id < ' . $random . ' ORDER BY id DESC LIMIT 1'); 

.은 PHP의 연결 연산자입니다.

그리고 당신은 SQL 주입을 즐길하지 않는 한, 나는 강력하게 $db 개체가 당신을 위해이 작업을 수행하지 않는 한 POST 입력을 탈출 건의 할 것입니다.

+1

하지만, 공개 웹 서버에이 코드를 사용하지 마십시오, 누군가가 당신의 손상된 수 왜냐하면 SQL 쿼리에서 데이터를 이스케이프 처리하지 않기 때문입니다. –

+0

@MichaelButler 나는 실제로 그것을 포함시키기 위해 내 게시물을 편집하고있었습니다. :) – qJake