PHP和SQL一页插入数据库

时间:2013-08-13 12:42:58

标签: php sql

我在提交按钮上编写了一个带有表单的PHP页面,我将操作设置为PHP表单页面。

 <form id="form1" method="post" action="../control_lbs/lbs_trace.php">

INSERT INTO是数据库的基本sql加载信息。

每次打开页面时都会出现问题,它会向行发送空白信息。我可以阻止这种情况发生吗?

 $sql = "INSERT INTO lbs_trace_etrack (lbs_msisdn, lbs_req_by, lbs_date_req,     
 lbs_reason, lbs_station, lbs_cas, lbs_traced_by) 
       VALUES     
    ('$_POST[lbs_msisdn]','$_POST[lbs_req_by]','$_POST[lbs_date_req]','$_POST[lbs_reason]'
 ,'$_POST[lbs_station]','$_POST[lbs_cas]','$_POST[lbs_traced_by]')";

以上是我的PHP动作代码

这是我使用的新代码和完整代码

 if ($con = mysql_connect($host, $username, $password)) {
    if ( !empty($_POST["send"])) {

       $sql = "INSERT INTO lbs_trace_etrack (lbs_msisdn, lbs_req_by, lbs_date_req,    lbs_reason, lbs_station, lbs_cas, lbs_traced_by) 
       VALUES    ('$_POST[lbs_msisdn]','$_POST[lbs_req_by]','$_POST[lbs_date_req]','$_POST[lbs_reason]','$_POST[lbs_station]','$_POST[lbs_cas]','$_POST[lbs_traced_by]')";
        if (mysql_query($sql, $con)) {
            $insertSuccessful = true;
        } else {
            echo $sql;
            echo "\n" . mysql_error($con);
            echo "mysql err no : " . mysql_errno($con);
        }

在刷新或页面输入时,它仍然提供有关数据库的空白信息

1 个答案:

答案 0 :(得分:0)

您需要使用isset()来查看是否设置了$ _POST变量。我在下面的示例中使用了$_POST,建议您为submitbutton指定一个名称(例如example)并使用isset($_POST['example'])

if( isset($_POST) ){
    $sql = "INSERT INTO lbs_trace_etrack (lbs_msisdn, lbs_req_by, lbs_date_req, lbs_reason, lbs_station, lbs_cas, lbs_traced_by)
            VALUES(
                '".$_POST['lbs_msisdn']."',
                '".$_POST['lbs_req_by']."',
                '".$_POST['lbs_date_req']."',
                '".$_POST['lbs_reason']."',
                '".$_POST['lbs_station']."',
                '".$_POST['lbs_cas']."',
                '".$_POST['lbs_traced_by']."'
            )";
  echo $sql; // echo it to see if it has any values
  // print_r($_POST); // in case the query is still empty, uncomment this. It will show you the values in the POST array
}