2017-07-16 132 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