0

私はしばらくの間、この問題の解決策を探していましたが、$_GET 変数が設定されていることを確認していない人は、このエラーが発生していることがわかります。ただし、それらが設定されているかどうかを確認しますが、それでもこのエラーが発生します。これが私のコードです:

$customer_id = $_GET['customer_id'];
$actual_customer_id = $_GET['actual_customer_id'];


if (isset($_GET['customer_id'])&& $_GET['actual_customer_id'])    
{    
$query = "SELECT rewards_points.points,customers.id AS customerID, customers.email
 FROM rewards_points,customers WHERE rewards_points.customer_id= $customers_id AND
  $actual_customer_id = rewards_points.actual_customer_id";
}


$query = "SELECT rewards_points.points,customers.id AS customerID, customers.email
 FROM rewards_points,customers";

エラーは次のとおりです。

Notice: Undefined index: customer_id in /Applications/MAMP/htdocs/insertintotestt.php on line 14

Notice: Undefined index: actual_customer_id in /Applications/MAMP/htdocs/insertintotestt.php on line 15
[{"points":"20","customerID":"1","email":"someEmail@gmail.com 
 {"points":"20","customerID":"2","email":"otherEmail@gmail.com"},
 {"points":"10","customerID":"1","email":"aha238@gmail.com"},
 {"points":"10","customerID":"2","email":"spgiegg@gmail.com"},
 {"points":"15","customerID":"1","email":"aha238@gmail.com"},
 {"points":"15","customerID":"2","email":"spgiegg@gmail.com"},
 {"points":"25","customerID":"1","email":"aha238@gmail"},
 {"points":"25","customerID":"2","email":"spgiegg@gmail.com"}]
4

1 に答える 1

3

変数を初めて使用するときは、確認する必要があります。

すなわち:

$customer_id = isset($_GET['customer_id']) ? $_GET['customer_id'] : null;
$actual_customer_id = isset($_GET['actual_customer_id']) ? $_GET['actual_customer_id'] : null;

if ($customer_id && $actual_customer_id) { 
    ...

PHPでの SQL インジェクションを防ぐにはどうすればよいですか?早急に読む必要があると思います。、しかし、SQLクエリをどのように実行しているかがわからないため、これは推測です.

于 2013-08-25T13:50:01.500 に答える