php-编辑用户的配置文件页面

php-编辑用户的配置文件页面,php,html,mysql,Php,Html,Mysql,我目前正在尝试创建一个个人资料编辑页面。我正在使用php和MySQL作为数据库。我对php和MySQL知之甚少。我的问题是:当我按下submit时,我会看到一个空白页。它不会打印错误或成功。有没有关于如何解决这个问题的想法?以下是我的php代码: <?php session_start(); include_once 'dbconfig.php'; if(!isset($_SESSION['user'])) { $userRow=mysql_fetch_array($r

我目前正在尝试创建一个个人资料编辑页面。我正在使用php和MySQL作为数据库。我对php和MySQL知之甚少。我的问题是:当我按下submit时,我会看到一个空白页。它不会打印错误或成功。有没有关于如何解决这个问题的想法?以下是我的php代码:

<?php
  session_start();
  include_once 'dbconfig.php';
  if(!isset($_SESSION['user'])) {
    $userRow=mysql_fetch_array($res);
    $username= $userRow["user_name"];
    $useremail= $userRow["user_email"];
    $userabout= $userRow["user_about"];

    $results = $mysqli->query("UPDATE users SET user_name='$username', user_email='$useremail', user_about='username' WHERE user_id=user");    

    if($results){
      print 'Success! record updated'; 
    } else {
      print 'Error : ('. $mysqli->errno .') '. $mysqli->error;
    }
  }
?>
而不是

<textarea name="userabout" rows="10" cols="30" value="<?php echo $userRow['user_about'];?>"/></textarea>
无法识别用户
,并引发错误。因为PHP错误不会显示在服务器上,所以您不会看到任何东西。但如果您查看日志,就会发现MySQL中的语法错误问题。您想使用
$\u会话['user']
,而不是那里的
user

最后,您的代码容易受到SQL注入和XSS注入的攻击。请将您的查询转义或使用PDO进行和

在许多项目中,我都有一个PHP中的
Common
类,它包含常见的功能。这是其中之一:

public static function protectArrayAgainstXSS(&$arr) {
    $changed = false;
    foreach ($arr as $index => $a) {
        if (is_array($a)) {
            $changed = $changed || Common::protectArrayAgainstXSS($arr[$index]);
        } else if ($a !== null) {
            $changed = $changed || ($arr[$index] === strip_tags($a));
            $arr[$index] = strip_tags($a);
        }
    }
    return !$changed;
}   

例如,通过调用
Common::protectArrayAgainstXSS($\u POST)
,您可以使用它来保护您的项目不受XSS注入的影响。

这里有一些问题,混合了API,并且没有在WHERE子句中引用。而且
没有
value
属性。我可以用什么来代替呢?你不必用其他东西替换你的textarea,只需删除value属性并将你的php echo{over here}放在这里,这样就不用了$\u SESSION['user'],我只需要使用user?我真的不知道你的意思
<textarea name="userabout" rows="10" cols="30"><?php echo $userRow['user_about'];?></textarea>
/></textarea>
user_id=user
public static function protectArrayAgainstXSS(&$arr) {
    $changed = false;
    foreach ($arr as $index => $a) {
        if (is_array($a)) {
            $changed = $changed || Common::protectArrayAgainstXSS($arr[$index]);
        } else if ($a !== null) {
            $changed = $changed || ($arr[$index] === strip_tags($a));
            $arr[$index] = strip_tags($a);
        }
    }
    return !$changed;
}