bakenshibakenshiのプロフィール
- ベストアンサー数
- 13
- ベストアンサー率
- 44%
- お礼率
- 81%
- 登録日2001/11/21
- smartyにAPIの動的データを呼び出したい
Smartyを初めて勉強して、基本的な部分はわかったのですが APIとの連携がわからない部分があります。 期待する結果として、テンプレートにYahoo知恵袋などの検索結果を読み込みたいのですが、 $smarty->assign('msg','Hello World!'); $smarty->assign('msg2','Hello World!2'); この部分のmsgとmsg2の中身をAPIで取得したデータに変えたいと思っています。 この変数の中を外部ファイルのリスト(txt)から取得することは可能ですか? もしくはさらにPHPを作成してその出力結果を読み込むことは可能なのでしょうか? 目的としてはmsgやmsg2の値を変更したいということです。 初心者の質問で申し訳ないですが、ご回答いただけると助かります。
- 【ImageMagick】 PDF → JPG 変換で1枚目のみ取得したい
Perl モジュールのImage::MagickをPHP5にて使用しています。 サーバーはレンタルでImageMagickのバージョンは6.2.8です。 いろいろな画像からJPEGサムネイルを自動生成したいと考え、最近ImageMagickを勉強しています。 そこで今引っかかっているのが アニメーションGIF や PDF を JPG に変換する際にできる複数画像の問題です。サムネイルなので適当に1枚あれば事足りるのですが、実際は全部処理されるため無駄が多く、何十ページもあるPDFですと処理に何十秒もかかります。 1ページだけ処理しておしまい… といったオプションはないものでしょうか。 お詳しい方、よろしくお願いいたします。
- 1つのsql文でデータを取得したい
phpとmysqlを連携させデータを取得しています。mysql5です。 現在は2つのテーブルからデータを取得するため以下のように2回のsql文を発行しています。 $sql = 'SELECT products_id, name, products_flag, comment1, IF("' . $products->beforedays . '" < DATE(create_date), "1", "0") as new, FROM products WHERE status = ? AND del_flg = ? ORDER BY create_date DESC'; // 1回目のsqlで取得したproducts_idを参照し下記のsqlを実行 $sql = 'SELECT MIN(price1) as min_price1, MAX(price1) as max_price1, MIN(price2) as min_price2, MAX(price2) as max_price2, IFNULL(price2, price1) as price0, stock FROM products_class_detail WHERE products_id = ?'; これを1回のsqlにまとめる場合どのような書き方になるでしょうか? 自分なりに下記のようにしてみたところ動作はするのですが複数のデータが条件に 当てはまるはずがminとmaxがあるためか条件に当てはまる最後のデータのみしか 取得されませんでした。 ※試しにmin,maxを外すと複数のデータを取得できました。 $sql = 'SELECT products.products_id, products.name, products.products_flag, products.comment1, IF("' . $products->beforedays . '" < DATE(products.create_date), "1", "0") as new, MIN(products_class_detail.price1) as min_price1, MAX(products_class_detail.price1) as max_price1, MIN(products_class_detail.price2) as min_price2, MAX(products_class_detail.price2) as max_price2, IFNULL(products_class_detail.price2, products_class_detail.price1) as price0, products_class_detail.stock FROM products, products_class_detail WHERE products_class_detail.products_id = products.products_id AND products.status2 = ? AND products.del_flg = ? ORDER BY' . $where_sql; 商品の情報を取得するsqlで最後のorder句は商品の並び順の変更でユーザーの指定した 順番(新着順や価格順等)で表示するためのものです。 2回のsqlの場合は問題なく動作していたのですがで新着順や価格順に並び替えを行うため 1回のでsqlで行いたいと思っております。 新着順の場合は1回目のsqlに条件が入るので問題ないのですが価格順の場合は2回目の sqlに条件が入るので2回のsqlではうまく並び替えができませんでした。 ソースの短縮にもなり可能であれば1回のsqlで完結させたいのですがどうすればいいものか わからずつまづいております。 詳しい方がいらっしゃいましたら宜しくお願い致します。