Update ne fonctionne pas
Posté : 05 sept. 2021, 11:08
J'ai essayé de calquer ce script sur le dernier corrigé mais il n'effectue aucune action en table.
<?php
session_start();
require_once 'config.php';
// id du membre connecté en session
$idMembreSession = !empty($_SESSION['id']) ? $_SESSION['id'] : NULL;
// récupération en bdd du membre connecté en session
$pdostat = $bdd->prepare('SELECT * FROM membres WHERE id = :id');
$pdostat->bindvalue(':id', $idMembreSession, PDO::PARAM_INT);
$pdostat->execute();
$membreSession = $pdostat->fetch();
if (empty($membreSession)) {
// le membre n'est pas connecté ou n'existe plus, on redirige vers la page de connexion
header('Location: /connexion.php');
exit();
}
// identifiant du membre sélectionné dans l'url
$idMembreSelect = !empty($_GET['id']) ? $_GET['id'] : NULL;
// récupération en bdd du membre sélectionné dans l'url (si il est toujours à proximité du membre connecté en session et pas en vacances)
$pdostat = $bdd->prepare("SELECT * FROM membres WHERE id= :id AND (pos_x = :pos_x AND pos_y = :pos_y) AND vacance = 'OFF'");
$pdostat->bindvalue(':id', $idMembreSelect, PDO::PARAM_INT);
$pdostat->bindvalue(':pos_x', $membreSession['pos_x'], PDO::PARAM_INT);
$pdostat->bindvalue(':pos_y', $membreSession['pos_y'], PDO::PARAM_INT);
$pdostat->execute();
$membreSelect = $pdostat->fetch();
$pseudo = $membreSelect['pseudo'];
$avatar = $membreSelect['avatar'];
$id = $membreSelect['id'];
$boulot = $membreSelect['boulot'];
if (!empty($membreSelect)) {
$pdostat = $bdd->prepare("UPDATE membres SET boulot = 'CAPTIF' WHERE id=:id");
$pdostat->bindvalue(':id', $idMembreSelect, PDO::PARAM_INT);
$pdostat->execute();
$pdostat = $bdd->prepare("UPDATE membres SET captif= '$pseudo', nbre_captif=1, avatar_captif = '$avatar', id_captif= '$idMembreSelect' WHERE id=:id");
$pdostat->bindvalue(':id', $idMembreSession, PDO::PARAM_INT);
$pdostat->execute();
}
?>