这是一个非常奇怪的问题..我四处寻找解决方案.. 这是我的代码。它是我正在创建的网站上的帐户设置页面的一部分。代码与用户更改其名字有关:
// if there are post vars, user has changed something
if($_POST) {
if(isset($_POST['firstname'])) {
$firstname = trim($_POST['firstname']);
if(strlen($firstname) < 2 || strlen($firstname) > 15) {
$msg = "<span class='errmsg'>Could not complete your request. First name must be between 2 and 15 characters.</span>";
}
else {
// connect to db
require_once('modules/config.php');
// update table
$query = sprintf("UPDATE Users SET FirstName = '%s' WHERE Email = '%s'",
mysql_real_escape_string($firstname),
mysql_real_escape_string($_SESSION['email']));
mysql_query($query);
// set success message
$msg = "<span class='sucmsg'>First name successfully changed.</span>";
// reset the firstname session var
$_SESSION['firstname'] = $firstname;
}
}
}
编辑:添加了Dagon提到的右大括号。
答案 0 :(得分:0)
我认为你最后错过了}
。
else {
实际上正在关闭:
if(isset($_POST['firstname'])) {
而不是
if(strlen($firstname) < 2 || strlen($firstname) > 15) {
答案 1 :(得分:0)
我不知道这是否能解决你的问题,试试吧......
if(in_array(strlen($firstname), range(2, 15)))