0

現在、ユーザーによるすべての投稿を表示するときは、次のようにします。

while($info=mysql_fetch_array($data)) {
echo "<div id = 'posts'>";
   echo $info['subject'];
   echo $info['post-item'];
echo "</div>";

}

ただし、divユーザーが投稿を「いいね」するなど、さまざまな投稿を実際に操作できるようにするには、各投稿のpost_idを取得するために出力されるだけでなく、フェッチされた各要素を実際の投稿として扱う必要があります。

好みに合ったハイパーリンクを試してみ hrefまし?id=$thispostたが、ユーザーがURLを変更したり、コメント機能も追加したい場合でも、別の方法が必要になります!

4

1 に答える 1

2

さまざまなタスクについては、さまざまなクエリ文字列を渡します。

<a href="page.php?do=like&id=2">like this</a>
<a href="page.php?do=comment&id=2">comment</a>
<a href="page.php?do=share&id=2">share this</a>

page.php、あなたはそれから...

if (isset($_GET['do'] && isset($_GET['id'])) {
    $do = $_GET['do'];
    $id = $_GET['id'];
} else exit("blabla");

switch ($do) {

    case 'like':
        // do sth
        break;

    case 'comment':
        // do sth
        break;

    // etc.

} // switch

もちろん、URLで値を渡すと、操作への門が開かれます。
したがって、ストア$do$idイン$_SESSIONまたはインのいずれか$_POSTです。

$_POST

$h = "";
while ($info = mysql_fetch_array($data)) {

    $h .=  '<div id = "posts">';
    $h .= '<form method="post" action="page.php">';
    $h .= "{$info['subject']}<br />{$info['post-item']}";
    $h .= "<input type=\"hidden\" name=\"id\” value=\”{$info['id']}\” />';
    $h .= '<input type="submit" name="do" value="like" />';
    $h .= '</form></div>';

}
echo $h;

コメント:
1。を使用しないでくださいmysql_*mysqli_*またはPDO->コードを将来にわたって利用でき、より安全に
します2.このコードは、すべての投稿の周りにフォームを作成し、その投稿のID(dbから)を含む非表示フィールドを使用します...
3.およびユーザーに非表示のIDを送信するボタンpage.php。4.で、あなたは私の上記の例のようにpage.php、を読みます:$_POST$_GET

if (isset($_POST['id'])) {
    $do = $_POST['do'];
    $id = $_POST['id'];
} else exit("blabla"); 

// etc. 
于 2013-03-25T22:47:40.367 に答える