2

私のphpスクリプトは、そのページにhtmlリンクを作成する目的で、ユーザーIDのリストをSESSION ARRAY変数に保存します。

その html リンクをクリックすると、別のPHPスクリプトがそのユーザー ID のすべてのユーザー情報を html テーブルに表示する必要があります。

SELECTこのクエリを作成するためのベスト プラクティスを知っておく必要があります

1) SELECT * from `users` WHERE  
`user_id` = '$array_valuer1' OR 
`user_id` = '$array_valuer2' OR 
`user_id` = '$array_valuer3' OR 
`user_id` = '$array_valuer4' OR 
`user_id` = '$array_valuer5' OR 
`user_id` = '$array_valuer6' OR 
----
----
`user_id` = '$array_valuern';

2) select all user --> SELECT * from `users`
   then using php script display only the userid in the SESSION array and skip other userid

ベストプラクティスはどれですか?SESSION 配列は一時的なものであり、データベースに保存したくありません。

ありがとう

4

2 に答える 2

3

セッションにいくつかのユーザー ID を保存している場合は問題ありません。ただし、数が膨大な場合は、SESSION に保存しないでください。クエリを使用してそれらを取得することをお勧めします。

クエリについては、次のフォームを使用できます。

$q = "SELECT * from `users` WHERE `user_id` IN ('".implode("','", $array)."')";
于 2013-01-23T07:44:36.000 に答える
1

shiplu.mokadd.imの回答は良いですが、PDOを使用する方が良いです:

$db = new PDO("...");
$statement = $db->prepare("SELECT * from `users` WHERE `user_id` IN (':list')");
$statement->execute(array(':list' => implode("','", $array)));
$row = $statement->fetch();
于 2013-01-23T07:47:50.970 に答える