我正在创建一个网站,我遇到了一个问题,在搜索了一段时间后,我发现很难在网上找到解决方案。
所以我的网站是使用bootstrap框架制作的,有许多页面可以显示数据库中的记录,然后编辑或删除,并将新记录添加到数据库中。现在我显然不想让任何人来我的网站上删除或编辑我的任何记录,这就是为什么我创建了一个登录和注册系统,它工作得很好。
但问题是,在用户登录之前,我如何对用户隐藏添加、编辑和删除按钮?或者我必须创建另一个页面来显示数据?
例如,我的新闻页面包含以下文件: config.php;index.php;add_news.php;edit_news;delete_news.php;read_more.php。现在我想对未登录的用户隐藏add_news.php、edit_news.php和delete_news.php。我真的卡住了,请帮帮忙。
<!-- Page Content -->
<?php
// load the configuration file.
include("config.php");
//load news from the database and then ORDER them by newsid
//you will notice that newlly added news will appeare first.
//also you can OREDER by (dtime) instaed of (news id)
$result = mysql_query("SELECT * FROM news ORDER BY newsid DESC",$connect);
//lets make a loop and get all news from the database
while($myrow = mysql_fetch_array($result))
{//begin of loop
//now print the results:
echo "<b>Title: ";
echo $myrow['title'];
echo "</b><br>On: <i>";
echo $myrow['dtime'];
echo "</i><hr align=left width=160>";
echo $myrow['text1'];
// Now print the options to (Read ,Edit or Delete the news article)
echo "<br><a href=\"read_more.php?newsid=$myrow[newsid]\">Read More...</a>
if(isset($_SESSION['userid'])) {
<div>
|| <a href=\"edit_news.php?newsid=$myrow[newsid]\">Edit</a>
|| <a href=\"delete_news.php?newsid=$myrow[newsid]\">Delete</a><br><hr>";
</div>
}//end of loop
?>发布于 2016-05-22 19:54:53
使用会话。您可以存储登录的用户信息(用户、管理员等),然后相应地管理您的视图和访问控制。
这是手册:http://php.net/manual/en/book.session.php
以下是来自php.net的一些示例:http://php.net/manual/en/session.examples.php
发布于 2016-05-22 19:56:52
你可以在你想要隐藏的if元素之前放置一个php html条件来检查用户会话是否存在,如下所示:
<? if(isset($_SESSION['userid'])) { ?>
<div>your html here </div>
<? } ?> 最简单的选择是检查用户是否已登录,如果未登录,则将其重定向到登录页面。
根据编辑后添加的代码,php作用域中的代码应该是:
if(isset($_SESSION['userid']))
{
echo "<div>||
<a href=\"edit_news.php?newsid=$myrow[newsid]\">Edit</a>
|| <a href=\"delete_news.php?newsid=$myrow[newsid]\">Delete</a>
<br><hr>
</div>";
}发布于 2016-05-22 19:58:05
您应该使用php sessions。在显示删除/更新按钮之前,请检查用户是否已登录。并且应该将其存储为会话变量。更重要的是,你应该做一个额外的保护层,以便当有人试图更新某些东西时,检查他们是否可以。
无论如何,我建议您在构建web应用程序时使用框架。一旦你掌握了它的诀窍,它会让你的生活变得容易得多。更重要的是,大多数框架都有不同的包/插件/扩展,具有可以在应用程序中使用的功能。
因为很多应用程序都有身份验证系统,所以只需安装身份验证和用户系统即可。
https://stackoverflow.com/questions/37373909
复制相似问题