내 화면에이 오류가 표시됩니다. 디버그를 시도했습니다.MYSQL 구문 오류 - SELECT 문
"당신은 당신의 SQL 구문에 오류가 있습니다; 행 1에서 TESTNAME '' '=에'근처에 사용할 수있는 권리 구문에 대한 MySQL 서버 버전에 해당하는 설명서를 확인"
내 기능 메신저
사용을 다음과 같이입니다 : 이function recentMessages() {
$tbl_name="messages";
$username = $_SESSION['username'];
$result = mysql_query("SELECT * FROM $tbl_name WHERE to = '$username' ") or die(mysql_error());
while ($row = mysql_fetch_row($result))
{
return $row['date']." ".$row['time']." ".$row['from']." ".$row['subject']. "<br />";
}
}
기본적으로 어떤 메신저가 시도하는 것은 그 '으로는'그 밖으로 echo'd 세션과의 사용자 이름입니다 데이터베이스 메시지에서 데이터의 모든 행을 얻을 수 있습니다. 무엇이 잘못하고 있는지에 대한 아이디어가 있습니까? 감사합니다
는 SQL에 있지만 변수를 탈출 (물론) 유효한 점이다 @BrendanLong. 앤드류 - $ username = " 'OR 1 = 1 or x ='"라고 생각하십시오. – AD7six
정말로 [이스케이프 문자열 데이터] (http://php.net/manual/en/function.mysql-real-escape-string. php)을 데이터베이스에서 사용하기 전에 외부 소스에서 가져올 수 있습니다. –