2017-07-16 137 views
1

我有一个基于查询显示用户数据的表单。该表格旨在允许用户更新其用户帐户信息。即,姓,名,电子邮件地址等PHP表单没有正确提交

account.php - 形式

<form class="form-horizontal" role="form" method="post" action=""> 
       <div class="form-group"> 
        <label class="col-lg-3 control-label">First name:</label> 
        <div class="col-lg-8"> 
         <input class="form-control" name="fName" type="text" placeholder="<?php echo $fName ?>"> 
        </div> 
       </div> 
       <div class="form-group"> 
        <label class="col-lg-3 control-label">Last name:</label> 
        <div class="col-lg-8"> 
         <input class="form-control" name="lName" type="text" placeholder="<?php echo $lName ?>"> 
        </div> 
       </div> 
       <div class="form-group"> 
        <label class="col-lg-3 control-label">Email:</label> 
        <div class="col-lg-8"> 
         <input class="form-control" name="emailAddress" type="text" placeholder="<?php echo $emailAddress ?>"> 
        </div> 
       </div> 
       <div class="form-group"> 
        <label class="col-md-3 control-label">Username:</label> 
        <div class="col-md-8"> 
         <input class="form-control" name="username" type="text" placeholder="<?php echo $username ?>"> 
        </div> 
       </div> 
       <div class="form-group"> 
        <label class="col-md-3 control-label">Password:</label> 
        <div class="col-md-8"> 
         <input class="form-control" name="password" type="password"> 
        </div> 
       </div> 
       <div class="form-group"> 
        <label class="col-md-3 control-label">Confirm password:</label> 
        <div class="col-md-8"> 
         <input class="form-control" name="confirmPassword" type="password"> 
        </div> 
       </div> 
       <div class="form-group"> 
        <label class="col-md-3 control-label"></label> 
        <div class="col-md-8"> 
         <input class="btn btn-primary" value="Update" name="updateaccount" type="button"> 
         <span></span> 
         <input class="btn btn-default" value="Cancel" type="reset"> 
        </div> 
       </div> 
      </form> 

updateaccount.php

<?php 

$msg = ""; 
if(isset($_POST["updateaccount"])) 
{ 
    $fName = $_POST["fName"]; 
    $lName = $_POST["lName"]; 
    $username = $_POST["username"]; 
    $emailAddress = $_POST["emailAddress"]; 
    $password = $_POST["password"]; 

    $fName = mysqli_real_escape_string($db, $fName); 
    $lName = mysqli_real_escape_string($db, $lName); 
    $username = mysqli_real_escape_string($db, $username); 
    $emailAddress = mysqli_real_escape_string($db, $emailAddress); 
    $password = mysqli_real_escape_string($db, $password); 
    $password = md5($password); 


    $sql="SELECT emailAddress FROM users WHERE emailAddress='$emailAddress'"; 
    $result=mysqli_query($db,$sql); 
    $row=mysqli_fetch_array($result,MYSQLI_ASSOC); 
    if(mysqli_num_rows($result) == 1) 
    { 
     $msg = "Sorry...This email already exists"; 
    } 
    else 
    { 
     $query = mysqli_query($db, "INSERT INTO users (fName, lName, username, emailAddress, password)VALUES ('$fName', '$lName', '$username', '$emailAddress, '$password')"); 
     if($query) 
     { 
      $msg = "Your account has been updated"; 
     } 
    } 
} 
?> 

上面的代码被称为上account.php网页:

include ("getuseraccount.php"); 

我错过了什么吗?

回答

0

您正在使用的输入型按钮而不是提交更新按钮,使用“提交”类型,而不是“按钮”类型。 <input class="btn btn-primary" value="Update" name="updateaccount" type="button">

尝试

<input class="btn btn-primary" value="Update" name="updateaccount" type="submit"> 
+0

呃我没有想到这一点。谢谢 –

0

除非你使用Ajax提交表单(你没有提到的,您需要添加您所提交的表单信息的文件。

<form class="form-horizontal" role="form" method="post" action="updateaccount.php"> 
+0

我还需要,如果我包括文件?附注...磨片n我将updateaccount.php引用添加到尚未提交的操作方法中。 –

+0

不知道useraccount.php文件中有什么,我无法确定它在哪里。 它可能不会提交,但这可能只是另一个发现的错误。 updateaccount.php是否与表单位于同一个目录中?如果没有,你必须调整行动路径= 有任何其他的事情可能是错误的。 – Difster