問題なく単一のテーブルから画像を取得できますが、別のテーブルに画像がある場合にどのように機能するかわかりません。画像を含むことができる2つのテーブル(画像とカテゴリ)があるとします
images category
-gallery_id -cat_id
-image_id -image
-image
したがって、クエリ文字列に別のパラメーターを渡して、どのテーブルを指定できるかを考えます
if(mysql_escape_string(@$_GET['type']) === 'icon')
$PHPTHUMB_CONFIG['mysql_query'] = 'SELECT `image` FROM `category` WHERE (`cat_id` = \''.mysql_escape_string(@$_GET['id']).'\')';
else
$PHPTHUMB_CONFIG['mysql_query'] = 'SELECT `image` FROM `images` WHERE (`image_id` = \''.mysql_escape_string(@$_GET['id']).'\')';
これはうまくいきます
foreach($database->images->gallery_id($gal_id) as $v)
{
$img = "<img src=\"/test/include/phpThumb_1.7.9/phpThumb.php?w=150&id={$v->image_id}\" />";
echo "<li>{$img}</li>";
}
これは「禁止されたパラメーター: タイプ」で失敗します
echo "<img src=\"/test/include/phpThumb_1.7.9/phpThumb.php?w=150&type=icon&id={$database->category($v->cat_id)->cat_id}\" />";
コードを検索していましたが、「許可」されるパラメーターを設定する場所がどこにもありません。
私の質問は次のとおりです。これは複数のテーブルから画像を取得する良い方法ですか? はいの場合、「type」パラメーターを許可するにはどうすればよいですか? すべての画像を 1 つのテーブルに入れることができると思いますが、それは良い考えではないようです...
psこれをphpthumbサポートフォーラムに投稿しましたが、応答がなかったので、ここで試しています。それ以来、調べる時間があまりなかったので、今週末はもっと時間を作れたらいいなと思っています。
誰かが疑問に思っている場合は、$database オブジェクトにcrdbを使用しています。