-2

行ごとに「read_forum」の値をエコーアウトしようとしています/行の各「id」。

たとえば、次のようになります。

id  |  read_forum(views)  |  content  |

1          30          hello
2          45          bored
3          34          something

私のページでは、次のようになります。

id 1 content: hello     30 views 
id 2 content: bored     45 views

等々。

したがって、基本的に私の質問は、sqlステートメントにwhere句を配置して、id 1のビューをid 1でエコーアウトし、id 2のビューをid 2でエコーアウトする方法です。

私は自分自身を明確にすることを願っています。誰かが助けてくれることを願っています。

function check_new_forum2($forum) {
            global $connection;
            global $_SESSION;
            $query = "SELECT read_forum FROM ptb_forum WHERE id=$forum
        ";
            $check_new_forum_set2 = mysql_query($query, $connection);
            confirm_query($check_new_forum_set2);
            return $check_new_forum_set2;       
        }
4

3 に答える 3

0

使用する代わりに

$query = "SELECT read_forum FROM ptb_forum WHERE id=$forum";

使用する必要があります

$query = "SELECT * FROM ptb_forum WHERE id=".$forum ;
于 2013-03-14T02:30:40.200 に答える
0

表示行だけが必要な場合は、次のように列を人間が読める文字列に連結できます

$query =  "SELECT 'id ' || `id` || ' content: ' || `content` 
         || '    ' || `views` || ' views' FROM ptb_forum WHERE id=$forum"; 
于 2013-03-14T02:31:56.757 に答える
0

何が何だかよくわかりませんread_forum。それはあなたのテーブル名ですか、それとも列名ですか? ptb_forumテーブル名ですか、それともデータベースの名前ですか?

MySQL への接続を開くときは、データベース名を指定する必要があり、クエリはそのデータベースのみを検索します。

あなたがやろうとしていることは、列が特定の値read_forumであるデータベース内のテーブルのすべての列を選択することです。その場合、クエリは(適切なデータベースに接続した後)次のようになります。ptb_forumid

SELECT * FROM read_forum WHERE id=$forum

このクエリは SQL インジェクションに対して脆弱であることを警告します。少なくとも、値をクエリに追加する前に整数に解析することをお勧めします。

于 2013-03-14T02:29:45.227 に答える