【发布时间】:2016-05-01 09:05:32
【问题描述】:
需要能够在页面加载时将数据输入 MySQL 表。
示例:
$q_edituser = "INSERT INTO hk_logs (type, time, who_done)
VALUES('Logged In','". time() ."','{$_SESSION['user']['username']}')";
但我可以让它在页面加载时“执行”吗?
【问题讨论】:
需要能够在页面加载时将数据输入 MySQL 表。
示例:
$q_edituser = "INSERT INTO hk_logs (type, time, who_done)
VALUES('Logged In','". time() ."','{$_SESSION['user']['username']}')";
但我可以让它在页面加载时“执行”吗?
【问题讨论】:
由于页面是按顺序加载的,如果您使用 PHP,您可以在该页面上创建一个数据库连接,并将其作为连接到数据库的 php 查询放在页面顶部,并执行操作。
或者你可以把它放在一个单独的 php 文件中,在你的 HTML 页面上有一个表单,这个 php 页面作为它的操作,并在页面加载时通过 ajax 或直接 JS 在任一 document.ready 上提交表单,如果使用 jQuery 或window.onload 如果使用 js。请注意,简单地传递到其他表单页面将需要返回标头重定向,或者使用 AJAX 完成以不将用户从页面中删除。
initialPage.html
//HTML stuff
<form id="someForm" action="editUser.php" method="POST">
<input type="hidden" name="logUser" value="login"/>
</form>
//js in initialPage.html
$(document).ready(function(){
$('#someForm').submit();
})
//editUser.php
session_start();
//appropriate database connection validation etc
if(isset($_POST('logUser')){
//php stuff
$q_edituser = "INSERT INTO hk_logs (type, time, who_done) VALUES('Logged In','". time() ."','{$_SESSION['user']['username']}')";
//other PHP stuff
}
【讨论】: