这里有几个潜在的问题。
首先,您没有逃脱eventname
SQL 注入的攻击。我们假设这myusername
已经是安全的了。如果它之前没有被过滤,也使用mysql_real_escape_string()
on $_SESSION['myusername']
。
$eventname = mysql_real_escape_string($_POST['eventname']);
// Then you need space before VALUES and are missing a closing quote on $_SESSION['myusername'], which should be in {}
$sql = mysql_query("INSERT INTO $tbl_name VALUES('','$eventname','{$_SESSION['myusername']}')");
最后,为了使语句起作用,它假设您在$tbl_name
. 您应该明确使用的列。用正确的列名替换colname1, event_name, username
.
$sql = mysql_query("INSERT INTO $tbl_name (colname1, event_name, username) VALUES('','$eventname','{$_SESSION['myusername']}')");
SQL 语法错误的确切位置将通过mysql_error()
.
$sql = mysql_query(<your insert statement>);
if (!$sql) {
echo mysql_error();
}