簡體   English   中英

使用PHP表單從MySQL更新字段

[英]Update fields from MySQL using php form

我一直在寫一個腳本,使用php從MySQL表單更新MySQL字段。

我有一個問題,當我嘗試使用mysqli從php開始更新字段時,我的數據庫沒有任何更改。 這是代碼,我用2頁。 Search.phpUpdate.php

此代碼顯示了我的搜索結果,並且效果很好。

Search.php

$searchValue=$_GET["txtSearch"]; 

    $connection=mysqli_connect($db_host, $db_user, $db_password, $db_name);
    $query="select UserID, LastName, FirstName, UserName, Phone from User where UserID='$searchValue'";
    $recordset=mysqli_query($connection, $query);


    while($row=mysqli_fetch_array($recordset, MYSQLI_ASSOC)) 
    {       
    $UserID=$row['UserID'];
    $LastName = $row['LastName'];
    $FirstName = $row['FirstName'];
    $UserName = $row['UserName'];
    $Phone=$row['Phone'];

    echo "<form action='Update.php' method='get'>";

    echo "<input type='text' name='txtUserID' value='$UserID' disabled> <br/> <br/>";
    echo "<input type='text' name='txtLastName' value='$LastName'> <br/> <br/>";
    echo "<input type='text' name='txtFirstName' value='$FirstName'> <br/> <br/>";
    echo "<input type='text' name='txtUserName' value='$UserName'> <br/> <br/>";
    echo "<input type='text' name='txtPhone' value='$Phone'> <br/> <br/>";

    echo "<input type='submit' name='btnUpdate' value='Update Values' />";

    echo "</form>";     

        }

問題在這里,當我執行查詢時,數據庫上沒有任何更改。 我不知道原因 查詢是否錯誤? 還是在WHERE條件下使用INT字段作為參數從php更新字段的另一種方法? 先感謝您。

這是Update.php

$userID=$_GET["txtUserID"];
$lastName=$_GET["txtLastName"];
$firstName=$_GET["txtFirstName"];
$userName=$_GET["txtUserName"];
$phone=$_GET["txtPhone"];

$connection=mysqli_connect($db_host, $db_user, $db_password, $db_name);

$query="UPDATE User SET LastName='$lastName', FirstName='$firstName', UserName='$userName', Phone=$phone
                    WHERE UserID=$userID";

$recordset=mysqli_query($connection, $query);

        echo "<h1> Succesfull Operation.  </h1>";

嘗試使用這些:

    $mysqli = new mysqli($db_host, $db_user, $db_password, $db_name);
    $results = $mysqli->query("Select UserID, LastName, FirstName, UserName, Phone from User where UserID=".$searchValue." ") or mysqli0;
  if(!$results){
    echo '<script>alert("not working"); </script>';
  }"

我認為mysqli的執行存在問題,這就是我使用mysqli的方式。

您可以通過將最后一段代碼更改為來打印mysql錯誤

 if (!($recordset=mysqli_query($connection, $query))) {
        echo "<pre>Error:".mysqli_error($link)."</pre>";
    }

並更好地了解問題所在。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM