0

ユーザーログインページを作成しました。ログインしているユーザーを確認できる場所。しかし、データベースからユーザーを削除できません。データベース接続に PDO を使用しています。ユーザーを削除するための私の方法は次のとおりです。

 public function delete($user_name)
    {
        $sql = $this->connection()->prepare("delete from online where user_name =     :user_name");
        $sql->bindValue(':user_name', $user_name, PDO::PARAM_STR);
        $sql->execute();
        return $sql;
    }

ここに私のHTMLコードがあります:

if(isset($_POST['submit'])){
$user_name = isset($_POST['user_name']);
    print_r($user_name);
    //call delete method to delete the user from database
$database->delete($user_name);
}

<form action="" method="post">
    <?php

    foreach($rows as $row){
        $time = $row['time_out'];
        echo "<input type='text' value='$row[user_name]' name='user_name'>
        <input type='text' value=' $row[course]' >
        <input type='text' value=' $time '>
        <input type='hidden' value='$row[user_name]' name='user_name'>
        <input type='submit' value='delete' name='submit'><br>";
    }
    ?>
</form>
4

2 に答える 2

2

$user_nameの結果に設定しているため、ブール値ですisset()

おそらく、あなたは次のようなことをするつもりでした:

if(isset($_POST['submit'])){
  $user_name = isset($_POST['user_name']) ? $_POST['user_name'] : false;
  if($user_name) {
    print_r($user_name);
    //call delete method to delete the user from database
    $database->delete($user_name);
  } else {
    echo "No user name found!";
  }
}
于 2013-06-27T14:44:33.397 に答える
0

これを使ってみてください -

if (isset($_POST['user_name'])) {
    $user_name = $_POST['user_name'];
    $database->delete($user_name);
}

そして isset() の使い方を勉強するべきです - http://php.net/manual/en/function.isset.php

于 2013-06-27T15:11:11.220 に答える