• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:チェックボックスをチェックしたアイテムを比較したいのですが...)

PHPで商品比較機能を実現する方法

このQ&Aのポイント
  • PHP+MySQLを使用して商品検索アプリケーションを作成していますが、チェックボックスを使ってユーザーが選択した商品を比較する機能を追加したいです。
  • 楽天市場のように、選択した商品を別窓に表示して比較するためには、JavaScriptを使用する必要があります。
  • 申し訳ありませんが、PHPだけでは実現することは難しいです。JavaScriptを組み合わせることで、ユーザーが選択した商品を比較する機能を実装できます。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

受け取り側、$_GET["item"]ですが、これは配列になっています。 if (count($_GET["item"] > 0)) { foreach ($_GET["item"] as $id) { $sql = "SELECT * FROM hogehoge where id = " . $id; $rs = mysql_db_query($db,$sql); $rows[] = mysql_num_rows($rs); } } // 以下、確認 foreach ($rows as $hogehoge) { echo $hogehoge; } こんな感じでどうでしょう。

neohiro
質問者

お礼

kaiwarepon様、どうもです。 無事解決いたしました。 本当にありがとうございました。 今まで何日も悩んでいたことが、こんなにもすぐに 解決するなんて、 「もっと早くに教えてGooを利用していれば...」 って、思ってしまいました。 たびたび、投稿させていただくと思うのですが、 お時間がございましたら、ご指導のほど宜しくお願いいたします。 本当にありがとうございました。

その他の回答 (1)

回答No.1

<input type="checkbox" name="item[]" value="00001"> <input type="checkbox" name="item[]" value="00002"> <input type="checkbox" name="item[]" value="00003"> の様な形でPOSTすれば $_POST["item"]に比較したい商品の商品コードが配列としてセットされますので、この商品コードを頼りにデータベースから商品データを引き出し、表示させれば良いと思います。

neohiro
質問者

お礼

kaiwarepon様、ご教授ありがとうございます。 ご回答を頼りにプログラムを組んでみたのですが、 恥ずかしながらスキル不足のためか、うまくいきませんでした。 //送り側ファイル「test.php」 <form method="GET" action="hikaku.php"> <input name="item[]" type="checkbox" value=" .$row[0]. " /> //$row[0]は、フィールド項目「id」の変数。 <input type="submit" name="Submit" value="比較する" /> //受け側ファイル「hikaku.php」 <?php 中略 $id = $_GET['item']; $sql = "SELECT * FROM hogehoge where id ='$id' "; $rs = mysql_db_query($db,$sql); $rows = mysql_num_rows($rs); 中略 ?> エラーは、出ないのですが(最初は出まくってましたが...)、データが表示されません。 チェックしたアイテムのid($row[0])は、受け側ファイル「hikaku.php」に渡ってました。 ちなみに、 $sql = "SELECT * FROM hogehoge where id ='$id' "; の変数「$id」に直接アイテムのidを入れたところ希望どおりに表示されました。(当たり前ですよね。) ということは、idが代入されていなかったから表示されなかったとということですよね。 大変申し訳ございませんが、今一度ご教授お願いできないでしょうか? よろしくお願いいたします。

関連するQ&A

専門家に質問してみよう