正在同一页内重新加载数据库条目 php
Reloading database entries within same page php
我创建了一个小网站,其中显示了数据库中的一些条目。过去,总是有一个按钮 update
,我按下它,然后调用 extern PHP 脚本来根据更改更新所有条目。
但过了一段时间后,这种方法变得很烦人,因为我总是必须手动返回并刷新页面。
所以我现在的问题是如何防止这种情况发生?
我的想法是创建一个带有 action='' 的表单并从 input type='submit'
调用它。但这导致我没有再次将密码和用户名发送到该站点的问题。
我的结构是这样的
... html code
<form action='' method='post'>
<input type='submit' value='update'/>
</form>
<?php
function loadTable()
{
// auth user ($POST['user'] == username, $POST['pass'] == password)
// sql query
// building html table
}
loadTable()
?>
此致
好吧..这里有一个方法可以做到这一点:
注意:加载页面后,您可以将用户名和密码保存在会话中,如下所示:
<?php
session_start();
if (isset($_POST['submit'])) {
$username = $POST['user'];
$password = $POST['pass'];
$_SESSION['user_credentials'] = array( "username" => $username , "password" => $password );
} else {
// Redirect back to index.php if user credentials are not posted from the form
header("Location: index.php");
?>
然后您可以在 function loadTable()
中添加类似这样的内容:
<?php
session_start();
function loadTable()
{
$user_session = $_SESSION['user_credentials'];
// Now you can access your username and password like this way as :
if ($user_session['username'] == username && $user_session['password'] == password)
{ /*do whatever you want*/ }
// sql query
// building html table
}
?>
注意: 将 session_start();
放在 PHP 起始标记之后,作为 <?php
会话或访问已创建的会话。
我创建了一个小网站,其中显示了数据库中的一些条目。过去,总是有一个按钮 update
,我按下它,然后调用 extern PHP 脚本来根据更改更新所有条目。
但过了一段时间后,这种方法变得很烦人,因为我总是必须手动返回并刷新页面。
所以我现在的问题是如何防止这种情况发生?
我的想法是创建一个带有 action='' 的表单并从 input type='submit'
调用它。但这导致我没有再次将密码和用户名发送到该站点的问题。
我的结构是这样的
... html code
<form action='' method='post'>
<input type='submit' value='update'/>
</form>
<?php
function loadTable()
{
// auth user ($POST['user'] == username, $POST['pass'] == password)
// sql query
// building html table
}
loadTable()
?>
此致
好吧..这里有一个方法可以做到这一点:
注意:加载页面后,您可以将用户名和密码保存在会话中,如下所示:
<?php
session_start();
if (isset($_POST['submit'])) {
$username = $POST['user'];
$password = $POST['pass'];
$_SESSION['user_credentials'] = array( "username" => $username , "password" => $password );
} else {
// Redirect back to index.php if user credentials are not posted from the form
header("Location: index.php");
?>
然后您可以在 function loadTable()
中添加类似这样的内容:
<?php
session_start();
function loadTable()
{
$user_session = $_SESSION['user_credentials'];
// Now you can access your username and password like this way as :
if ($user_session['username'] == username && $user_session['password'] == password)
{ /*do whatever you want*/ }
// sql query
// building html table
}
?>
注意: 将 session_start();
放在 PHP 起始标记之后,作为 <?php
会话或访问已创建的会话。