이 쿼리에 문제가 있습니까?MySQL 쿼리 오류
$query2=mysql_query("SELECT * FROM $t_medici WHERE `oras` LIKE $orase") or die(mysql_error());
이 코드는
Unknown column 'Bucuresti' in 'where clause'
이 쿼리에 문제가 있습니까?MySQL 쿼리 오류
$query2=mysql_query("SELECT * FROM $t_medici WHERE `oras` LIKE $orase") or die(mysql_error());
이 코드는
Unknown column 'Bucuresti' in 'where clause'
$orase
따옴표에 있어야합니다 반환합니다.
$query2=mysql_query("SELECT * FROM $t_medici WHERE oras LIKE '$orase'") or die(mysql_error());
작은 따옴표 안에 $orase
을 넣으십시오. 필요하면 % 기호를 사용하십시오.
oras
필드는 문자열이 다음 $orase
이 주위에 작은 따옴표를해야하는 경우 :
$query2=mysql_query("SELECT * FROM $t_medici WHERE `oras` LIKE '$orase'") or die(mysql_error());
어떤 해프닝이 선에 도달하고, SQL 코드 따라서이 종료 될 때 변수 $orase
문자열 Bucuresti
이 포함되어 있다는 것입니다 같은 :
...WHERE `oras` LIKE Bucuresti
하지만 당신은 또한 탈출해야는 (SQL을 방지하기 위해 전 njection) : 보조 노트에
$query2=mysql_query("SELECT * FROM {$t_medici} WHERE `oras` LIKE '".mysql_real_escape_string($orase)."'") or die(mysql_error());
:
$query2=mysql_query("SELECT * FROM $t_medici WHERE `oras` LIKE '".mysql_real_escape_string($orase)."'") or die(mysql_error());
이 또한 내가 여기에 이중 인용 된 문자열, 즉 {$ t_medici}에 다른 변수 주위에 괄호를 넣어 것 , 만약 당신이 LIKE
과 같은 문자열을 사용하고 있다면, 반환되는 모든 행은 정확히 Bucuresti
(또는 $ orase가 보유하고있는 것)이되어야합니다. 공백을 포함하여 그 앞이나 뒤에는 아무 것도 없습니다. 이 경우에는 LIKE
을 전혀 사용하지 않아도됩니다.
"SELECT * FROM {$t_medici} WHERE `oras` ='".mysql_real_escape_string($orase)."'"
을하지만 당신은 어떻게 든 (예 : "부쿠레슈티의"oras
분야에서 (어떤 $ orase 보유 나) 어떤 Bucuresti
을 가지고 행을 일치시킬 경우, "부쿠레슈티", "당신은뿐만 아니라과 같이 =
를 사용할 수 있습니다 kdsbks kksd saBucurestie ", 등) 당신은과 같이 %
을 사용해야합니다
"SELECT * FROM {$t_medici} WHERE `oras` LIKE '%".mysql_real_escape_string($orase)."%'"
즉 $orase
이 Bucuresti
을 보유하는 경우 %Bucuresti%
인터넷에서 쿼리를 복사하여 편집 할 때 매우 익숙한 오류가 발생합니다. 위에 인용 된 것과 같이 작은 따옴표.
질문이 명확하지 않습니다 ... – diEcho
SQL 주입 취약점이이 쿼리에 잘못되었습니다. –
't_medici' 테이블은 어떻게 생겼습니까? –