누군가가 여기에 무엇이 잘못되었는지를 도울 수 있기를 바랍니다. 테이블에 간단한 쿼리를 실행하려는 PHP 페이지를 여는 두 개의 필드 EMAIL
및 PASSWORD
이있는 양식이 있습니다. 의미가없는 오류 메시지가 표시됩니다.
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@gmail.com' at line 1
. '@ gmail.com'을
다음은 코드의로 끝
나는이 경우에 입력 된 이메일 주소가 않았다 PHP, MySQL 테이블 쿼리 구문 오류?
<?php
$dbhost = 'somewhere.net';
$dbuser = 'someUser';
$dbpass = 'pass';
$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql');
$dbname = 'medreunten_db1';
mysql_select_db($dbname) or die(mysql_error($conn));
$email = mysql_real_escape_string($_POST['email']);
$query = "SELECT * FROM employee WHERE email = $email";
$result = mysql_query($query, $conn) or die (mysql_error($conn));
extract(mysql_fetch_assoc($result));
while ($row = mysql_fetch_array($result)) {
extract($row);
echo $row['name'];
echo $row['surname'];
echo $row['age'];
}
?>
어떤 조언을
주시면 감사하겠습니다.
의 중복 가능성 (http://stackoverflow.com/questions/7546072/simple-table-query -syntax-error) – Quentin
$ query = "SELECT * FROM employee WHERE email = '$ email'"; 또는 OR $ query = "SELECT * FROM employee where email =". $ email; ' – Ehtesham
예. db 연결 전에 mysql_real_escape_string을 삽입했기 때문에 더 많은 문제가 발생했다. 그 스레드에서 계속 수행하고 싶었지만, 나는 코멘트를했다고 생각하고 받아 들일 수 없다. 그래서 mods는 그것을 삭제하고 나를 슬그머니 질렀다. 그래서 나는 새로운 질문을 시작했다. – Max