-1

$blockは返されません。この問題は、whileステートメントの間に発生するようです。私は以前にこのスクリプトを使用したことがありますが、わずかに異なるだけなので、かなりマイナーなものであることがわかります。よろしくお願いします。

<?php
if (isset($_GET['filter_tag'])) {
    $filter_tag = $_GET['filter_tag'];
}

    if (@mysql_connect('xxxxxxxxx','xxxxxxxxxx','xxxxxxxxxx')) {
        if (mysql_select_db('xxxxx')) {
                $query = " SELECT blocks . CNO, blocks . CName, blocks . URL, images . Ipath FROM blocks LEFT JOIN images ON blocks . INO = images . INO WHERE CNO LIKE 'mysql_real_escape_string($filter_tag)' ";
        $query_run = mysql_query($query);
        } while ($query_row = mysql_fetch_assoc($query_run)) {      
            echo $block =   '<li id="'.$query_row['CNO'].'" class="block" data-toggle="modal" data-target="#blocklModal" >
        <a href="'.$query_row['URL'].'" target="_blank">
        <img class="b" src="'.$query_row["Ipath"].'" alt="" data-controls-modal="block-modal" data-backdrop="static">
        </a>
        <p class="c-title">'.$query_row['Name'].'</p>
        </li>';
        }
    }
?>
4

1 に答える 1

0

これは機能する可能性があります (クエリが正しい限り)。mysql_* が減価償却されていることを知っておいてください。実際に PDO または MySQLi を使用してクエリを実行する必要があります。この答えは、近い将来役に立たなくなります。

if (isset($_GET['filter_tag'])) {
    $filter_tag = $_GET['filter_tag'];

    if (mysql_connect('xxxxxxxxx','xxxxxxxxxx','xxxxxxxxxx')) {
        if (mysql_select_db('xxxxx')) {
            $filter_tag = mysql_real_escape_string($filter_tag);
            $query = " SELECT blocks . CNO, blocks . CName, blocks . URL, images . Ipath FROM blocks LEFT JOIN images ON blocks . INO = images . INO WHERE CNO LIKE '$filter_tag'";
            $query_run = mysql_query($query);
            while ($query_row = mysql_fetch_assoc($query_run)) {
                $block =  '<li id="' . $query_row['CNO'] . '" class="block" data-toggle="modal" data-target="#blocklModal">';
                $block .= '<a href="' . $query_row['URL'] . '" target="_blank">';
                $block .= '<img class="b" src="' . $query_row["Ipath"] . '" alt="" data-controls-modal="block-modal" data-backdrop="static">';
                $block .= '</a><p class="c-title">' . $query_row['Name'] . '</p></li>';
                echo $block;
            }
        }
    }
} else {
    echo 'No filter tag provided';
}

このリンクをチェックして、PDO/MySQLi の詳細を確認してください: PDO と MySQLi - どちらを使用すべきか

于 2012-11-06T14:12:04.280 に答える