【发布时间】:2013-01-28 14:41:06
【问题描述】:
根据建议和对我需要什么的更好理解,我改变了我的问题:
我的网站受 .htaccess 保护。我试图获取当前用户和其他一些变量并将它们保存到 MySQL 数据库。除了当前用户部分之外,一切正常。
这是我的代码:
<?php
$_SERVER["PHP_AUTH_USER"] = "rep";
$hostname = "hostname";
$username = "username";
$dbname = "dbname";
$password = "password";
$usertable = "usageStats";
$yourfield = "your_field";
$con = mysql_connect($hostname, $username, $password);
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db($dbname, $con);
$sql="INSERT INTO usageStats (Bid, PRid, User)
VALUES
('$_POST[BID]','$_POST[branding]','$_POST[rep]')";
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
echo "1 record added";
mysql_close($con);
?>
我知道以下都是错误的。应该如何传递当前用户而不是 $_POST[rep]?
黄:
$_SERVER["PHP_AUTH_USER"] = "rep";
和
'$_POST[rep]'
【问题讨论】:
-
您使用什么类型的身份验证?是基本认证吗?
-
不要依赖隐藏字段进行身份验证。这很容易被欺骗。
-
@Darin Dimitrov 是的,我正在使用基本身份验证。
-
@Olaf Dietsche “不要依赖隐藏字段进行身份验证”是什么意思我不使用表单登录用户,而是在用户登录后显示表单我想设置“currentUser”的值,以便它通过表单提交传递用户名。还是我误会了你?
-
如果此隐藏字段是唯一标识用户的标记,其他人可以使用此隐藏字段发送请求,声称自己是您网站的用户。