$alerter2="false";
for ($counter = 0; $counter <= count($filter); $counter++) {
$questionsubmitted=strtolower($_POST[question]);
$currentcheck =$filter[$counter];
$foundvalue=stripos((string)$questionsubmitted,(string)$currentcheck);
echo $foundvalue;
if ($foundvalue==0) {
$alerter2="true";
} else { }
}
if (!($alerter2=="true")) {
$sql="INSERT INTO Persons (Name, Email, Question)
VALUES
('$_POST[name]','$_POST[email]','$_POST[question]')";
} else {
echo "Please only post appropriate questions";
}
언제든지 이것을 실행할 때마다 모든 반복마다 매번 stripon이 0을 반환합니다. 그것은 필터로되어 있고, echo를 사용하면 stripos가 나타날 때마다 0입니다. 그러나 if에서 0을 사용하면 단어가없는 경우에도 true를 반환합니다.이상한 부울 반응
어디에서 mysql_real_escape_string을 사용해야합니까? 쿼리 후? 이 코드는 사용자 입력을 데이터베이스에 저장하려는 코드 부분입니다.
사용'mysql_escape_real_string();'당신'$의 sql' 내에서'$ _POST' 변수에 대한 것은 – kjy112
SQL을 할 수있는 다른 일이 될 것입니다 사출 공격! – Arafangion
문자열을 사용하여 "true"와 "false"를 나타냅니다. 정말?? – Spudley