Buenas tardes a tod@s.
El problema que tengo es el siguiente e interviene php y mysql en el proceso.
Cuando entro a la página todo carga bien, hasta el error de que el campo está vacío funciona perfecto, muestra el error, pero cuando completo todo y le doy en guardar, se desaparece el contenido y la operación de UPDATE no se actualiza, alguien me podría decir en qué estoy mal o cómo hacer más dinámico este código:
Código PHP:
Ver originalif($_POST['giverank']){
$check = $db->query("SELECT * FROM users WHERE username = '{$user->filtertext($_POST['name'])}' LIMIT 1");
$row = $check->fetch_array();
if(empty($_POST['pin']) || empty($_POST['name']) || empty($_POST['role'])){ $_SESSION['HK_ERROR_RETURN'] = "Has dejado campos vacíos";
header("LOCATION: ". HK
."/ranks.php?error"); }else{
if($check->num_rows > 0){
$db->query("UPDATE users SET work = '{$user->filtertext($_POST['role'])}', rank = '{$user->filtertext($_POST['rankid'])}', pin = '{$user->filtertext($_POST['pin'])}', staffocult = '{$user->filtertext($_POST['ocult'])}' WHERE username = '{$_POST['name']}' LIMIT 1");
$db->query("INSERT INTO stafflogs (username, action, message, rank, userid, timestamp) VALUES ('". $_SESSION['username'] ."','Dar Rango', 'Le ha dado rango ".$_POST['rankid']." a ".$_POST['name']."', '". $user['rank'] ."', '". $user['id'] ."', '".date("Y-m-d ")."')"); $_SESSION['HK_GOOD_RETURN'] = "Rango entregado correctamente";
header("LOCATION: ". HK
."/ranks.php?echo=true"); }else {
$_SESSION['HK_ERROR_RETURN'] = "El usuario no exíste";
header("LOCATION: ". HK
."/ranks.php?error"); }
}
}
Ojo, la función filtertext es una que cumple con pasar y revisar los datos introducidos para que no se pueda editar la db.
Gracias de antemano y un saludo.