这是发布帖子的用户代码。
if(islet($_POST['submit'])) {
$name = $_POST['name'];
$keywords = $_POST['keywords'];
$description = $_POST['description'];
if(islet($_GET['user_id'])) {
$_SESSION['user_id'] = $_GET['user_id'];
} //Then I just have a inset into statement for my database with these 4 variables.
}
我有一个用户创建帖子的网络表单。我现在想让用户能够返回专用于该帖子的页面,供他们编辑,添加等等。
答案 0 :(得分:0)
以下是高级解决方案:
http://yoursite.com/show-post.php?post_id=136
$_GET['post_id']
SELECT * FROM post WHERE post_id = $_GET['post_id']
。http://yoursite.com/my-posts.php
。SELECT * FROM post WHERE user_id = $_SESSION['user_id']
(假设您在post表中有user_id,并且用户已经过身份验证,并且他的id已存储在会话中)。< / LI>
请注意,您应该转义查询字符串中传递的参数。有很多方法可以做到这一点,所以我不会在这里讨论它。
编辑:
这是您生成链接的方式:
<?php foreach ($mysql_result as $row) { ?>
<a href="http://yoursite.com/edit-post.php?post_id=<?= $row['post_id'] ?>">link</a>
<?php } ?>
然后,在edit-post.php中,您可以通过$postId = $_GET['post_id'];
获取post_id,然后在查询中使用它来获取有关该特定帖子的所有信息。
答案 1 :(得分:0)
确保数据库中有一个唯一的ID列 - 称之为'postid',并将其设置为每个新条目的自动增量。
这样,您就可以确保为插入数据库的每个条目都有唯一的标识符。
然后,您需要检索数据库中的项目列表,包括postid,并为数据库中的每一行提供显示它的链接。
如果在网址中选择了postid,则显示该帖子的信息。如果不是,则显示一个列表:
<?
$dbh = new PDO('mysql:host=localhost;dbname=databasename;charset=utf8', 'username', 'password');
///No post id selected, display a list of everything
if(!$_GET['postid']) {
print "You're listing all the rows in the database<br/>";
$query = $dbh->prepare("SELECT `postid`,`name` FROM `table` ORDER by postid ASC");
$query->execute();
while ($row = $query->fetch(PDO::FETCH_ASSOC)) {
print "<a href=\"?post_id=".$row['postid']."\">".$row['name']."</a><br/>";
}
} else { //A post ID is selected
$postid = $_GET['postid'];
Print "Select from the database where postid = ".$postid;
$query = $dbh->prepare("SELECT `postid`, `name`, `keywords`, `description` FROM `table` WHERE `postid` = '$postid' LIMIT 1");
$query->execute();
while ($row = $query->fetch(PDO::FETCH_ASSOC)) {
$name = $row['name'];
$keywords = $row['keywords'];
$description = $row['description'];
print 'Displaying details for '.$name.': '.$keywords.', '.$description.' - create edit links here... <br/><br/>';
}
} //End post id is selected
?>