2011-08-10 1 views
2

PHP에서 .NET의 Command.SqlParameters.AddWithValue()에 해당하는 것은 무엇입니까? 나는 SQL 주입을 피하고 싶다. PHP가 이미 mysql_real_escape()을 통해 이스케이프 문자열을 제외하고 같은 방법을 사용하고 있는지 궁금하다.PHP의 .NET의 SqlParameters

미리 감사드립니다.

답변

1

PDOprepare() 방법 PDOStatement::bindParam() 또는 PDOStatement::bindValue()

두이다 bindParam() 차이는 변수에 대한 참조를 결합한다. 변수 값은 매개 변수를 다시 바인드하지 않고 변경할 수 있습니다. 이것은 특히 루프에서 유용합니다.

bindValue()은 단순히 정적 값을 매개 변수에 바인딩합니다.

+0

와우! PDO에는 트랜잭션, 커밋 및 롤백 기능이 있습니다. 감사! 그건 그렇고, 루프의 각 반복에서 쿼리의 실행에 동의하지 않습니다. 그 사람. – dpp

+0

@domanokz 알아두면 편리합니다. 일부 DB는 insert 문에서 한 세트의 값만 허용합니다. 삽입 할 배열이나 콜렉션이 있다면 변수에 한 번 바인드하고 반복하면서 삽입을 실행하는 것이 좋습니다. – Phil