前提・実現したいこと
前提:レンタルサーバの仕様上、PHPのバージョンが5.2になります。
商品サイトを構築しており、
約500種類の商品を任意の条件で絞り込み→表示したいと考えました。
↓
商品が多いのでデータベースを構築しました。
※データベースやPHPに対する知識はほとんどありません。
今回は巷の図書館で借りた、初心者向けの教本を読みながら
なんとか構築した次第です。
↓
データベースに接続し、選択された条件を表示することはできました。
↓
現在は条件を3つ、ラジオボタンで選択できるようにしています。
条件1:形状
条件2:大きさ
条件3:カラー
※ゆくゆくはさらに条件を増やしたいと考えています。
※それぞれの条件をカラムごとに用意しています。
※それぞれの条件ごとにname値を統一し、value値をAND検索の対象にしています。
実現したいこと:
各条件における“すべて”を選んだ場合、表示する対象をカラム内全てとしたいです。
例)形は☆を選び、大きさは中を選び、カラーはすべてを選んだ場合、
☆の形状で中の大きさですべてのカラーの商品が表示エリアに表示される、としたいです。
現状→それぞれの条件において、“すべて”以外(条件を特定した)を選んだ場合のみ、
その選択条件の通り正しく表示します。
該当のソースコード
PHP
1<?php 2 $sql = "SELECT * 3 FROM productDB 4 WHERE 1 5 AND keijou = '$keijou' 6 AND size = '$size' 7 AND color = '$color' 8 "; 9 $result = mysql_query($sql, $link); 10 11 $cnt = mysql_num_rows($result); 12 if ($cnt == 0) { 13 echo "<p>【条件に該当する製品はみつかりませんでした】</p>"; 14 } else { 15 $num_rows = mysql_num_rows($result); 16 echo "<p>" . ($num_rows) . "件みつかりました</p>"; 17 18 while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { 19 echo "<p>{$row['detail']}</p>"; 20 } 21 } 22?>
考えたり試したこと
・“すべて”を選んだときのvalue値を変えれば良いのでは?と考え、
0(ゼロ)やカラム名を入れて試しましたが、動きませんでした。
・“すべて”を選んだときのvalue値を仮に0(ゼロ)にして、
sql実行前にif関数で分岐してはどうだろう、と考えましたが、
エラーメッセージが出て動きませんでした。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/02/27 05:13
2019/02/27 05:16
2019/02/27 05:32
2019/02/27 05:38
2019/02/27 06:04