PHP

Double table, ajouter "+1" en fonction d'un ID

Résolu

Bonjour j'aimerai avoir une petite aide de votre part 😀


J'ai dev un système qui supprimer une fiche via un bouton qui donc me redirige sur une page supprimer.php cette page contient.


<?php
  session_start();
  
  require_once('../fonctions.php');
  require_once('../database.php');
  
  
  if (isset($_GET['logout'])) {
    logout();
  }
  
  
  $user = getUserFromId($_SESSION['uid']);
  
  
  $db = database();
  
  function showFiche($db, $id){
    $stmt = $db->prepare('DELETE FROM fiches_attente WHERE id = :id');
    $stmt->execute([':id' => $id]);
  }
  
  if (isset($_GET['id'])) {
    $id  = (int)trim($_GET['id']);
    $data = showFiche($db, $id);
  }
  redirectUrl('admin.php');
  ?>


Dans ma table fiche_attente il y a aussi id_users qui permet de connaitre id dans la table users

Du coup j'en viens au fait que je voudrais ajouter +1 dans la valeur fiche_refuser en vérifier id du membre concerné. (dans la table users)


Voila à quoi ressemble mon paramètre localhost/admin/supprimer.php?id=7&iduser=1


Merci à toute les personnes qui m'aideront ! Bonne journée à tous aux autres qui passe leur route ici 😀


J'ai trouver un truc du style sur internet pour ajouter +1 mais mon problème c'est que je ne sais pas comment ajouter le +1 en fonction du paramètre iduser


$stmt = $db->prepare("UPDATE users SET nombre= nombre + 1");
511 vues
05 avril 2020 à 16:44 (Édité)
Cette pub permet au site de vivre ...

3 commentaires

J'ai réussi toute façon je laisse le code de ma page ici en cap si des personne ont besoin du code.


<?php
	session_start();

	require_once('../fonctions.php');
	require_once('../database.php');


	if (isset($_GET['logout'])) {
	  logout();
	}


	$user = getUserFromId($_SESSION['uid']);


	$db = database();

	function showFiche($db, $id)
	{
	  $stmt = $db->prepare('DELETE FROM fiches_attente WHERE id = :id');
	  $stmt->execute([':id' => $id]);
	}

	if (isset($_GET['id'])) {
	  $id  = (int)trim($_GET['id']);
	  $data = showFiche($db, $id);
	}

	$iduser = $_GET['iduser'];

	$stmt = $db->prepare("UPDATE users SET fiche_refuser = fiche_refuser + 1 WHERE id = :iduser");

	$stmt->execute([':iduser' => $iduser]);

	redirectUrl('admin.php');
?>

Hello @BobMarley


Et le ; tu l’as manger ? ^^ Regarde bien dans ton code il manque un ;

Je voudrais ajouter que j'ai trouvé ça avec mon cerveau mais j'ai une erreur si une personne peut m'aider à corrigé mon erreur


$iduser = $_GET['iduser']

$stmt = $db->prepare('UPDATE users SET id = $iduser WHERE fiche_refuser = fiche_refuser + 1');
Cette pub permet au site de vivre ...