- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:複数の検索)
PHPとMySQLを使った友達のID番号の取得方法
このQ&Aのポイント
- 会員情報から友達の名前を登録できるようにしました。postで受け取った情報は友達の名前のみです。友達の名前から友達のID番号を取得したいのですが、15人分まとめて取得する方法はありますか?調べるテーブルのカラムにはidとnameがあり、重複はありません。
- HTMLフォームには15個ほどのinput=textがあり、何も記入されていない欄もあります(fre3に書き込んであってfre2が空白の場合があります)。
- $fre1 = $_POST['fre1']; $fre2 = $_POST['fre2']; $fre3 = $_POST['fre3']; $sql = sprintf("SELECT id FROM friend WHERE name LIKE '%s'",$fre1); $recordSet = mysql_query($sql); $data = mysql_fetch_assoc($recordSet);
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
freの受け渡しを配列処理でできれば構文は簡素化できます <input type="text" name="fre[]"> <input type="text" name="fre[]"> <input type="text" name="fre[]"> <?PHP $sql = "SELECT id FROM friend WHERE 1"; $str=""; $fre=isset($_POST["fre"])?$_POST["fre"]:false; foreach((array) $fre as $val){ if(!empty($val)){ //空データの場合処理しない $str.=$str===""?"AND name IN (":","; $str.=$val; } } if($str!="") $str.=")"; $sql.=$str; print_r($sql); ?> nameが完全一致ならlikeで検索する必要はありません
お礼
お答え頂きありがとうございます 難しくてできませんでした 他の方法かんがえます