所以我正在为我的公司更改php应用程序。我了解基本知识,到目前为止,我一直在独自改变。基本上,该程序有一个管理端和一个用户端。已经建立了一个存储用户信息的数据库,我可以添加用户/编辑。我想做的是在管理端有一个小脚本,用单选按钮选择"可用"或"不可用",然后在用户端,它会回显一个不同的"可用"answers"不可用的"图像。这行得通吗?还是我必须将复选框值存储在数据库中,这样它才能保留该值?
管理员
<form name="f1" method="POST" action="SAVE TO DATABASE??">
<input class="no-check-border-win" type="checkbox" name="Availability" value="y" />Available<br/>
<input type="submit"/>
</form>
用户
if((isset($_POST['Availability'])) && ($_POST['Availability'] == 'y'))
{
echo '<img src="http://mysite/image1.png" border=0>';
}
else
{
echo '<img src="http://mysite/image2.png" border=0>'
}
您必须将值存储在数据库中。
要做到这一点,你必须做到:
-
连接到数据库
$mysql = mysqli_connect('localhost','username','password');
-
选择数据库
mysqli_select_db("databasename",$mysql);
-
将值存储到一个表中(假设您创建了一个名为
settings
的表)mysqli_query("INSERT INTO settings (name,value) VALUES ('active','1') ON DUPLICATE KEY UPDATE value='1' ",$mysql);
现在,该值存储在数据库中。
要获得它,您必须执行以下操作:
-
连接到数据库
$mysql = mysqli_connect('localhost','username','password');
-
选择数据库
mysqli_select_db("databasename",$mysql);
-
从表
settings
中检索值$res = mysqli_query("SELECT value FROM settings WHERE name='available'",$mysql);
$row = mysqli_fetch_array($res);
$value = $row['value'];
现在
$value
将包含您存储在数据库中的值(在本例中,将包含1
)
您需要将值存储在某个地方。它可以是一个到的文件,也可以交换图像,并强制客户端在每次页面加载时重新加载它。但是数据库解决方案是更好的。
$_POST是发送到服务器的数据,但只能由$_POST的用户使用。即,当您单击表单时,数据会被发送到设置的任何action=""
、另一个文件、同一个文件等等,但之后不会保存在任何位置,因此您以后无法访问它来向用户提供数据。
您需要将您的设置存储在某个地方,而数据库是理想的选择
然后你的管理区域管理你的用户,并将你为他们所做的设置保存在数据库中。当他们登录/查看页面时,为他们查看的页面提供的脚本将从数据库(您保存的)中获取数据并提供给他们。