输入表单数据是不是保存在mysql db中?

时间:2013-05-11 12:37:27

标签: php mysql

这是我的代码无法正常工作

 <?php
 include('admin/class.php');

这是我的数据库连接:

 $hostname="localhost";
 $username="root";
 $password="";
 $dbhandle = mysql_connect($hostname, $username, $password)
 or die("Unable to connect to MySQL");
 echo "Connected to MySQL<br>"; 
 $se = mysql_select_db("timesheet1234",$dbhandle)
   or die("Could not select timesheet1234");
 echo "connected to db";

点击按钮后,我正在执行此功能:

 if(isset($_POST['save']))
 {  
 $sel=@$_POST['selpro'];
 $mon=@$_POST['mon'];
 $tue=@$_POST['tue'];
 $wed=@$_POST['wed'];
 $thu=@$_POST['thu'];
 $fri=@$_POST['fri'];
 $sat=@$_POST['sat'];
 $sun=@$_POST['sun'];

这里写的是查询功能

 if(isset($_SESSION['user']))
 {
 echo "session user";
 $sql="UPDATE empdaytimesheet SET 
`project code`='$sel',`mon`='$mon',`tue`='$tue',`wed`='$wed',`thu`='$thu',`
 fri`='$fri',`sat`='$sat',`sun`='$sun' where `username`='".$_SESSION['user']."'";

 $res=mysql_query($sql,$dbhandle);

以下是无效的问题:

    if($res){
         echo "<script type='text/javascript'>";
         echo "alert('TimeSheet Saved..!')";
         echo "</script>";
         echo "<script type='text/javascript'>";
         echo "window.location='my_timesheet.php'";
         echo "</script>";
      }
      else
      {
         echo "<script type='text/javascript'>";
         echo "alert('Some Error Occured ! Retry..!')";
         echo "</script>";
         echo "<script type='text/javascript'>";
         echo "window.location='my_timesheet.php'";
         echo "</script>";
      }
    }
  }
?>

1 个答案:

答案 0 :(得分:0)

在$ _POST之前移除'@',你应该没问题。

但是,您当前的脚本看起来很容易受到SQLi的攻击。<​​/ p>

您还使用了已弃用的扩展程序。您应该考虑使用MySQLi或PDO。

Check this answer有关如何使代码更安全的更多信息。