Eliminar productes: diferència entre les revisions
Cap resum de modificació |
|||
| Línia 25: | Línia 25: | ||
</pre> | </pre> | ||
== Codi | == Codi complet == | ||
<pre> | <pre> | ||
case 'eliminar': | case 'eliminar': | ||
Revisió del 18:01, 31 des 2025
Eliminar un producte del cistell
L'objectiu d'aquesta operació és eliminar el producte indicat del cistell
Aquesta petició arriba per part del codi del cistell i la seva acció és "eliminar". Aquesta operació únicament ens fa arribar un paràmetre: la ID del producte a eliminar
Primerament, haurem de verificar que la ID que ha arribat és vàlida i un nombre
case 'eliminar':
// Validar ID
if (!isset($_POST['id']) || !is_numeric($_POST['id'])) { // Verifiquem que el producte té una ID i que és numèrica
$_SESSION['missatge_error'] =
"ID de producte no vàlid";
header("Location: cistell.php");
exit;
}
$id = (int)$_POST['id']; // Assignem la ID del producte a una variable verificant que és INT
Seguidament recuperarem el nom del producte a partir de la sessió per poder mostrar-lo al missatge d'èxit
$nom_prod = $_SESSION['cistell'][$id]['nom']; // Obtenim el nom del producte (pel missatge de confirmació)
A continuació, a partir de la ID proporcionada, eliminarem l'objecte que identifica la ID de la sessió, és a dir, eliminarem el producte del cistell
unset($_SESSION['cistell'][$id]); // S'elimina el producte del cistell
Per últim, definirem el missatge d'èxit dins de la sessió i redirigirem a l'usuari al cistell
$_SESSION['missatge_ok'] = "S'ha eliminat el producte $nom_prod del cistell."; // S'envia el missatge header("Location: cistell.php"); exit;
Codi complet
case 'eliminar':
// Validar ID
if (!isset($_POST['id']) || !is_numeric($_POST['id'])) { // Verifiquem que el producte té una ID i que és numèrica
$_SESSION['missatge_error'] =
"ID de producte no vàlid";
header("Location: cistell.php");
exit;
}
$id = (int)$_POST['id']; // Assignem la ID del producte a una variable verificant que és INT
$nom_prod = $_SESSION['cistell'][$id]['nom']; // Obtenim el nom del producte (pel missatge de confirmació)
unset($_SESSION['cistell'][$id]); // S'elimina el producte del cistell
$_SESSION['missatge_ok'] = "S'ha eliminat el producte $nom_prod del cistell."; // S'envia el missatge
header("Location: cistell.php");
exit;