4 つの選択オプションがあります
name, region, year, month
私が欲しいのは、ユーザーが名前を選択して送信を押したときに、ユーザーが提供していない場合、地域、年、月を無視してその名前に関連するデータを返す必要があることです。名前と年を選択すると、その名前と年に関連するデータが返され、他は無視されます。どの選択でも、それはうまくいくはずです。助けてください
PHPだけでは、これを簡単に行うことは不可能のようです。あなたがしなければならないことは、提出された(すなわち$ _POST)値配列をチェックしempty()
、それに応じてmysql-queryを構築し、ユーザーがフィールドを選択したときにさらにWHERE句を追加することです。
これを試して...
if($_POST['name'])
{
$subqry.="name='".$_POST['name']."'";
$and="and";
}
if($_POST['region'])
{
$subqry.=$and." region='".$_POST['region']."'";
$and="and";
}
if($_POST['month'])
{
$subqry.=$and." month='".$_POST['month']."'";
$and="and";
}
if($_POST['year'])
{
$subqry.=$and." year='".$_POST['year']."'";
}
$sqlqry = "select * from tablename where ".$subqry;
連鎖選択はあなたが必要とするものです: