este es mi código de html:
Código HTML:
Ver original
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> </head> <body> <img id="mesa1" src="../img/seats_blue.png" alt="mesa" onclick="reservar_mesa($(this),$(this).attr('id'))"> <script> function reservar_mesa(img,id){ // recibe dos variables el objeto en si y el atributo id que sera el que enviemos por post var datos = "id_mesa="+id; var url = "../reservar_mesa.php"; $.post(url, datos, function(estado){ if(estado === "ocupada"){ // si devuelve ocupada cambiamos la imagen a roja img.attr('src', '../img/seats_red.png'); } else{ //si devuelve disponible cambiamos la imagen a azul img.attr('src', '../img/seats_blue.png'); } }); } </script> </html>
Y este es mi código de php:
Código PHP:
Ver original
<?php require_once "inc/config.inc.php"; if($_REQUEST['id_mesa']){ //recibo la variable a traves de request $id_mesa = $_REQUEST['id_mesa']; $mysqli = new mysqli($config['DB_HOST'], $config['DB_USER'], $config['DB_PASS'], $config['DB']); // me conecto a la base de datos } $sql = "SELECT estado FROM mesas WHERE id_mesa = '$id_mesa'"; // selecciono el estado de la mesa clickeada if ($resultado = $mysqli -> query($sql)) { // condicion para comprobar que la consulta se este dando $fila = $resultado -> fetch_assoc(); // guardo en unarray los resultados $estado = $fila['estado']; // guardo el estado de la mesa if($estado){ // si el estado es true o 1 lo cambio a 0 y devuelvo el estado final $consulta = $mysqli -> query ("UPDATE mesas SET estado = '0' WHERE id_mesa = '$id_mesa'"); $estado_final = "ocupada"; } else { // si el estado es false o 0 lo cambio a 1 y devuelvo el estado final $consulta = $mysqli -> query ("UPDATE mesas SET estado = '1' WHERE id_mesa = '$id_mesa'"); $estado_final = "disponible"; } echo $estado_final; // devuelvo el estado final } else{ echo "Fallo en la primera consulta"; } } else{ echo "No has seleccionado mesa"; } ?>
Cualquier ayuda sera bien recibida.