MYSQL 쿼리에 WHERE 절 (아래의 PHP 주석에 나타나는 구문)을 삽입하려고합니다. MYSQL 쿼리 문에이 절을 배치 할 때마다 항상 실패합니다 (LEFT JOIN과 ORDER BY 절 앞에 모두 시도했습니다).MySQL - WHERE 절이 LEFT JOIN과 결합되어 있습니까?
내 진술서를 사용할 수있는 방법에 대한 아이디어가 있습니까?
<?php
$result = mysql_query("SELECT *
FROM Items
LEFT JOIN Topics on Topics.TopicID = Items.FK_TopicID
ORDER BY TopicSort, TopicName ASC, ItemSort, ItemTitle");
/* WHERE FK_UserID=$_SESSION[user_id] */
$topicname = false;
while($row = mysql_fetch_array($result)) {
if (!$row['TopicID']) {
$row['TopicName'] = 'Sort Me';
}
if ($topicname != $row['TopicName']) {
echo '<ul><li>' . $row['TopicName'] . '</li><ul>';
$topicname = $row['TopicName'];
}
echo '';
echo '<li>' . $row['ItemTitle'] . '</li>';
echo '';
}
if ($topicname != $row['TopicName']) {
echo '</ul>';
$topicname = $row['TopicName'];
}
?>
"실패"무엇을 의미 하는가 :
더 나은 옵션은, SQL 주입 공격으로부터 자신을 보온 할 수는 sprintf 사용할 수 있나요? 오류 메시지가 나타 납니까? 원하는 데이터가 아닌 데이터를 얻을 수 있습니까? –