メインメニュー
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
My Links
メイン
   Amaxoop2
     Amazon検索ブロックでもメディアを選択させたい
新規スレッド作成画面へ

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
ikkki
投稿日時: 2006-6-15 11:28
新米
登録日: 2006-6-4
居住地:
投稿: 8
Amazon検索ブロックでもメディアを選択させたい
Amazon検索ブロックでは、デフォルト値として設定されたメディア(全ての商品、DVD・・・)を対象に検索がかかるようになっています。

search.phpで表示されるものと同等にブロックでもメディア選択をさせるにはどうしたらよいでしょうか。
amax2_search.htmlのソースを参考にamax2_search_block.htmlを改変しようとしているのですが、どうもうまくいきません。

こんなふうに変えてみました。
引用:

<form action="<{$xoops_url}>/modules/amaxoop2/search.php" method="get" style="margin-bottom:0; display:inline;">
<input type="text" name="KeyWord" value="" size="12" /> <br />
<input type="hidden" name="SearchIndex" value="<{$block.SearchIndex}>" />
<select name="SearchIndex">
<{foreach item=si from=$SearchIndex}>
<option value="<{$si.id}>"><{if $si.id == $SearchIndex}> selected="selected"<{/if}>><{$si.name}></option>
<{/foreach}>
</select>
<input type="hidden" name="Page" value="1" /><br />
<input type="submit" value="検索" /><br />
</form><br />


なにか相対的な位置関係を配慮しないといけないような気がしているのですが、知識不足でわかりませんでした。ご教授いただければ幸いです。
返信
taquino
投稿日時: 2006-6-15 14:12
管理人
登録日: 2004-10-22
居住地: 湘南
投稿: 1543
Re: Amazon検索ブロックでもメディアを選択させたい
検索ページ用のsearch.phpとブロック表示用のamax2_search.phpとでは変数の持ち方や名前が異なっているので、流用はできません。
#コーディングが美しくないのが原因なんですが...

amax2_search_block.htmlについて、以下の通り変更してみてください。
元々のhtmlにある下記の部分を削除もしくはコメントアウトし、

<input type="hidden" name="SearchIndex" value="<{$block.SearchIndex}>" />

ここに下記の内容を追加。

<select name="SearchIndex">
<{foreach key=sicode item=siname from=$block.SearchIndexes}>
<option value="<{$sicode}>"<{if $sicode == $block.SearchIndex}> selected="selected"<{/if}>><{$siname}></option>
<{/foreach}>
</select>

返信
ikkki
投稿日時: 2006-6-16 9:16
新米
登録日: 2006-6-4
居住地:
投稿: 8
Re: Amazon検索ブロックでもメディアを選択させたい
↓ 解決しました。失礼いたしました。

-----
ありがとうございます。できたみたいです。

しかし、副作用なのか、search.phpにアクセスしたときの「メディア:」後ろの選択肢がおかしくなってしまいました。

>和書
>洋書
・・・
selected="selected">全ての商品

といったように表示されてしまいます。
何か対策はありますでしょうか??
返信
taquino
投稿日時: 2006-6-16 14:05
管理人
登録日: 2004-10-22
居住地: 湘南
投稿: 1543
Re: Amazon検索ブロックでもメディアを選択させたい
副作用で起きるということは考えにくいですね。
今回参考にされたというamax2_search.htmlを編集していませんか?

<{foreach item=si from=$SearchIndexes}>
<option value="<{$si.id}>"<{if $si.id == $SearchIndex}> selected="selected"<{/if}>><{$si.name}></option>
<{/foreach}>

あたりで、例えばselectedの直前に余分な>が入っていると書かれたような現象が起きると思います。
返信
ikkki
投稿日時: 2006-6-18 19:57
新米
登録日: 2006-6-4
居住地:
投稿: 8
Re: Amazon検索ブロックでもメディアを選択させたい
おっしゃるとおり、余計なタグが原因だったようです。失礼いたしました。
返信
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

新規スレッド作成画面へ