2017-02-05 10 views
0

のSQLのいずれかの値をSQLに照会するmy sqlは正常に機能していますが、3つの選択オプションのいずれかに値を入力するか選択するかどうかを尋ねます。 3つの変数がある中で、あなたは、$年、$のDEPTと$ KURSを見ることができるように選択オプション

は、ここに私のSQL

$sql = "SELECT * FROM tblAlumni WHERE yeargrad LIKE '$year' AND department LIKE '%$dept%' AND course LIKE '$kurs' AND alum_status LIKE 2"; 

です。

$ yearだけのように1つしか選択できなかったが、$ deptと$ kursを選択せず​​に依然としてクエリを取得できるようにしようとしている。助けてください。

使用MySQLのOR条件:私は非常にあなたの質問を理解していないんだけど、これは私が理解であるあなたに

答えて

0

をありがとうございます。また、年とステータスを一致させているので、同じ操作を使用してクエリを変更しました。

$sql = "SELECT * FROM tblAlumni WHERE yeargrad = '$year' OR department LIKE '%$dept%' OR course LIKE '%$kurs%' OR alum_status = 2"; 
+0

たとえば、年のみを選択するとします。選択した年のデータが表示されます。 2つの部門とコースを選択することなく。どうかあなたの意見を明確にしたいのであれば、直接回答しないでください – lokis

+0

はい、OR条件を使用してください。クエリは$ yearが存在するかどうかをチェックし、$ yearのクエリを実行します。 SQL文だけに頼るのは良い習慣ではなく、あなたのPHPサーバ側のスクリプトでは、検索機能のためにelseを使って入力をフィルタリングします。 –

+0

待つが、このSQLの問題は、私が値を持つ3つの選択肢のオプションを選択した場合、それが最初に読んだ場所だけです。例:私はyeargrad = 2002、department BSCS、course BSITを選択します。それは2002年のすべての年次を表に示しています – lokis

関連する問題