0

こんにちは、タグを使用して画像をフィルタリングできるタグフィルタリング機能を作成しようとしています。具体的には、tagz 配列を渡すのに問題があります。これは、テーブルのセットアップにかかっている可能性があります。いずれにしても、SQL またはコードの他の部分に関するヘルプをいただければ幸いです。前もって感謝します。

<?php
    if (@mysql_connect('*****','*****','****')) {
        if (mysql_select_db('****')) {
            $tagz = $_REQUEST['tagz'];
            $tagz = mysql_real_escape_string($tagz);
            $tagz = implode(", ", $tagz);

            $query = " SELECT boxes . BNO, boxes . BName, boxes . URL, images . Ipath FROM boxes LEFT JOIN images ON boxes . INO = images . INO LEFT JOIN links ON boxes . BNO = links . BNO WHERE links . TNO LIKE '$tagz' ";
            $query_run = mysql_query($query);
        } while ($query_row = mysql_fetch_assoc($query_run)) {
            echo $row ='<li id='.$query_row['BNO'].' class="box">;
        }
    }

?>
4

1 に答える 1

1

$tagz をエコーアウトしてから、手動で SQL を実行して動作を確認しましたか? SQL 内のロジックの問題か、SQL を壊す不発の文字である可能性があります。

また、mysqli または pdo に切り替えることを検討してください。これにより、escape_string tagz の必要がなくなります。

于 2012-11-16T00:18:34.363 に答える