【问题标题】:Data not inserted in database after validation in PHP在 PHP 中验证后数据未插入数据库
【发布时间】:2013-11-21 07:18:29
【问题描述】:

Html 和 PHP 验证码:“postresume.php”

<?php
$firstName = $lastName = $emailId = $phoneNo = $qualification = $dob = $totex = $address="";
$firstNameErr = $lastNameErr = $emailIdErr = $phoneNoErr = $qualificationErr = $dobErr = $totexErr = $addressErr = "";

if ($_SERVER['REQUEST_METHOD']== "POST") {
    $valid = true; 

    if (empty($_POST["firstName"])) {
        $firstNameErr = "*First name is required";
        $valid = false; //false
    }
    else {
        $firstName = test_input($_POST["firstName"]);
    }

    //LastName Error
    if (empty($_POST["lastName"])) {
        $lastNameErr = "*Last name is required";
        $valid = false;
    }
    else {
        $lastName = test_input($_POST["lastName"]);
    }

    // validation for,email,phoneno,qualification,dob,totex,address will be same as the above

    if($valid){
        echo '<META HTTP-EQUIV="Refresh" Content="0; URL=datasubmitted.php">';    
        exit;
    }
}

function test_input($data) {
    $data = trim($data);
    $data = stripslashes($data);
    $data = htmlspecialchars($data);
    return $data;
}
?>

这是我在“postresume.php”中的表单:

<form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']);?>" method="post">
    <div class="label">*First Name:
        <div class="txtbox">
            <input name="firstName" type="text" id="txt" placeholder="Enter Your First Name." value="<?php echo $firstName; ?>"/>
            <span class="error"><p></p><?php echo  $firstNameErr; ?></span>
        </div>
    </div>
    <div class="label">Last Name:
        <div class="txtbox">
            <input name="lastName" type="text" id="txt" placeholder="Enter Your Last Name." value="<?php echo $lastName; ?>"/>
            <span class="error"><p></p><?php echo $lastNameErr; ?>
        </div>
    </div>
    // email,phoneno,qualification,dob,totex,address will be same as the above

将数据插入数据库mysql的PHP代码:“datasubmitted.php”

<?php
$con=mysqli_connect("localhost","root","geetha@99","test");
// Check connection
if (mysqli_connect_errno())
{
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

$sql="INSERT INTO register (fname, lname, emailid, phoneno, qualification, dob,   totalex, address)
    VALUES   ('$_POST[firstname]','$_POST[lastname]','$_POST[email]','$_POST[phoneno]','$_POST[qualifi]','$_POST[dob]','$_POST[totex]','$_POST[address]')";

if (!mysqli_query($con,$sql))
{
    die('Error: ' . mysqli_error($con));
}
echo "1 record added";

mysqli_close($con);
?> 

请帮助我,告诉我我的代码有什么问题。

【问题讨论】:

  • 有错误吗?用 PHP 还是 MYSQL?
  • 在 php 中在数据库中插入空白数据
  • 你的语法是错误的......当你像这样使用变量时,你需要用括号括起来。 values ( '{$_POST['variable']}', ..
  • 嗨朋友在使用括号后也给出了这个错误注意:未定义的索引:第 124 行 C:\xampp\htdocs\jobbulls123\datasubmitted.php 中的名字注意:未定义的索引:C:\ 中的 totex xampp\htdocs\jobbulls123\datasubmitted.php 在第 125 行 注意:未定义索引:地址在 C:\xampp\htdocs\jobbulls123\datasubmitted.php 在第 125 行插入注册(fname、lname、emailid、phoneno、qualification、dob、 totalex, address) VALUES ('','','','','','','','') 添加 1 条记录
  • 这意味着您的$_POST 是空的,并且它没有从其他页面获取值。我很难从你把它放在你的问题中的方式来理解你的代码的布局。您的表单由于某种原因未正确提交。

标签: php html mysql css


【解决方案1】:

你能改变下面这段代码吗

   if($valid){ 
         echo '<META HTTP-EQUIV="Refresh" Content="0; URL=datasubmitted.php">'; 
         exit; 
     }

进入

  if($valid){ 
       include  'datasubmitted.php';
       echo '<META HTTP-EQUIV="Refresh" Content="0; URL=successpage.php">'; 
       exit;       
  } 

【讨论】:

  • 欢迎您,很高兴为您提供帮助!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-26
相关资源
最近更新 更多