簡體   English   中英

PHP更新查詢不起作用

[英]PHP update query not working

作為一項任務,我的老師讓我(高中10年級)使用html和php創建登錄表單,因為我們剛剛開始學習PHP,我已經取得了進步,這是我的第一次嘗試。 稍后我將介紹更安全的選項。

<?PHP

//Create the connection…
//("where the database is", 'Database login' , 'database password' , "Database name")
$con=mysqli_connect("", 'root', 'root', "Social");

//Check our connection…
if (mysqli_connect_errno($con))
{
    echo " Sorry Mate";
}
$username = $_POST[username];
$password = $_POST[pawd];

$result = mysqli_query($con, "SELECT * FROM User_info");
$row = mysqli_fetch_array($result);
$value = $row['username'];
if($value == "$username")
{
    $result = mysqli_query($con, "SELECT * FROM User_info");
    $row = mysqli_fetch_array($result);
    $value = $row['password'];
    if($value == "$password")
        {
        $sql=("UPDATE user_check SET user = '1' ");
        $sql=("UPDATE user_check SET name = '$username' ");
        header( 'Location: feed.php' ) ;
        }
        else
        {
        header( 'Location: social.php' ) ;
        }
}
else
{
header( 'Location: social.php' ) ;
}

if (!mysqli_query($con,$sql))
  {
  die('Error: ' . mysqli_error($con));
  }
mysqli_close($con);
?>

它說的地方

        $sql=("UPDATE user_check SET user = '1' ");
    $sql=("UPDATE user_check SET name = '$username' ");

第一個將工作並將數據庫更新為1,但是第二個我沒有檢查該列的名稱是否更改了變量$ sql和$ username的名稱,但是它仍然無法正常工作,有什么建議嗎? 預先謝謝你:D

您首先將$_POST['username']與結果中的username列進行比較,然后嘗試更新數據庫中的name列。 我的猜測是:

$sql = ("UPDATE user_check SET name = '$username' ");

應該:

$sql = ("UPDATE user_check SET username = '$username' ");

這看起來很奇怪:

    $sql=("UPDATE user_check SET user = '1' ");
    $sql=("UPDATE user_check SET name = '$username' ");

第二行將覆蓋前一個存儲的值。

試着去死($ sql)

在調用SQL的行之前,查看您所運行的是否是您所運行的。

暫無
暫無

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

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