내 두 DB 배열 :PHP, mySQL. SELECT 문 잘못된
ORDER -> (ID, CUSTOMER_ID)
고객 -> (ID, 이름)
그들은 외래 키가 (order.customer_id 및 고객 .신분증).
나는 텍스트 필드와 제출 단추가있는 html 양식을 가지고 있는데,이 사용자는 고객의 이름을 알려주고 쿼리에서 선택한 고객의 주문을 받고 싶습니다. 이것은 내 코드입니다. SELECT 문에 오류가 있습니다. 사람이 도움을 줄 수 있다면 ...
<?php
$connect = mysql_connect("localhost", "root", "") or die("Unable to connect to MySQL");
$selected = mysql_select_db("eshop", $connect) or die("Could not select examples");
if (isset($_POST['name'])) {
$customerName = $_POST['name'];
}
$result = mysql_query("SELECT order.id
FROM order, customer
WHERE order.customer_id = customer.id
AND customer.name = $customerName
");
if($result === FALSE) {
die(mysql_error()); // TODO: better error handling
}
while($row = mysql_fetch_array($result))
{
echo $row['order.id'];
}
mysql_close($connect);
?>
** ** 더 많은 SQL 인터페이스 코드를 작성하기 전에 심각한 [SQL 주입 버그]가 발생하지 않도록 [올바른 SQL 이스케이프] (http://bobby-tables.com/php)를 읽어야합니다 http://bobby-tables.com/). 또한, mysql_query는 새로운 애플리케이션에서 사용되어서는 안된다. PHP의 향후 버전에서 제거되는 비추천 인터페이스입니다. [PDO와 같은 현대적인 대체물은 배우기 어렵지 않습니다.] (http://net.tutsplus.com/tutorials/php/why-you-should-be-using-phps-pdo-for-database-access/). [PHP The Right Way] (http://www.phptherightway.com/)와 같은 안내서는 이와 같은 실수를 피하는 데 도움이됩니다. – tadman
$ customerName은 누군가가 당신에게 도착하기 전에 – rray
[** 읽으십시오 (진행되기 전에) **] (http://stackoverflow.com/q/60174/1415724)의 경우에만 안에 존재합니다. 그리고 당신이 독서 분위기에있을 때 [** this too **] (https://www.owasp.org/index.php/Top_10_2013-Top_10) –