Chciałbym usunąć wiersz z tabeli moich użytkowników, gdy użytkownik kliknie przycisk, użytkownik musi się zalogować, aby usunąć własne konto.Usuwanie wiersza z tabeli użytkowników PHP MYSQL
Mam echo'd dolarów user_id który pokazuje „4”, który jest poprawny identyfikator zalogowanego użytkownika, więc user_id = $ user_id
Jest to strona, która mam który posiada przycisk, który Chcę usunąć wiersz użytkowników w bazie
<?php
include_once 'dbconfig.php';
if(!$user->is_loggedin())
{
$user->redirect('index.php');
}
$user_id = $_SESSION['user_session'];
if(isset($_POST['leave'])){
$stmt = $DB_con->prepare("DELETE FROM users WHERE user_id = $user_id ");
$stmt->execute();
}
$stmt = $DB_con->prepare("SELECT * FROM users WHERE user_id=:user_id");
$stmt->execute(array(":user_id"=>$user_id));
$userRow=$stmt->fetch(PDO::FETCH_ASSOC);
?>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css" type="text/css" />
<link rel="stylesheet" href="style.css" type="text/css" />
<title>Welcome - <?php print($userRow['user_email']); ?></title>
</head>
<body>
<div class="header">
<div class="right">
<label><a href="logout.php?logout=true"><i class="glyphicon glyphicon-log-out"></i> logout</a></label>
</div>
</div>
<div class="content">
Welcome <?php print($userRow['user_name']); ?> <br>
<?php print($userRow['team_name']);?><br>
Rank <?php print($userRow['user_rank']); ?> <br>
<a href="players.php">Players</a>
<a href="teams.php">Teams</a>
<form action='teams.php' method='post'>
<input type='submit' name='leave' value='Delete Profile'/> </form>
<?php echo $user_id?>
</div>
</body>
</html>
Dlaczego nie parametryzacji bardziej niebezpieczne zapytania; 'USUŃ OD użytkowników WHERE identyfikator_użytkownika = $ identyfikator_użytkownika? – chris85
Nie wydajesz się ustawić $ _SESSION ['user_session'] w dowolnym miejscu, chyba że czegoś mi brakuje. Ponadto nie jest to bezpieczne w przypadku produkcji. – markdwhite
Mam user_session ustawiony na innej stronie, a tak jest to trochę w każdym miejscu, bardzo nowe dla php. – Dannad