Viendo bien ahora tu código y haciendo una prueba esto
Código PHP:
Ver originalfunction cambiar(img)
{
var datos = "id_mesa="+img.attr('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', 'imagen/Grafico.png');
} else{ //si devuelve disponible cambiamos la imagen a azul
img.attr('src', 'imagen/foto1.png');
}
});
}
me funciono correctamente, y si te fijas es tu mismo código que lo coloque en una función que ya tenía hecha, ahora si depuras con firebug te da algún error?? porque me parece mas error en la petición al servidor ya que el javascript funciona