0

PHPの学習を始めたばかりなので、教師が私(高校10年生)に与えたタスクとして、htmlと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 に更新しますが、2 番目のものは列の名前を確認していないため、変数 $sql と $username の名前が変更されましたが、それでも機能しません。何か提案はありますか? よろしくお願いします:D

4

2 に答える 2

0

これは奇妙に見えます:

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

2 行目は、前の最初の行に格納された値を上書きします。

サイコロを置いてみる($sql)

SQL を呼び出す行の前に、実行していると思われるものが実際に実行されているかどうかを確認します。

于 2013-08-11T06:11:52.917 に答える