Gracias Rodrigo, he modificado el código de la siguiente manera:
Código PHP:
<?
session_start();
if (session_id()!= "SesionCurso")
session_id ("SesionCurso");
if (!isset($_SESSION["usuario"]))
$_SESSION["usuario"]="veronica";
if (!isset($_SESSION["reservas"])){
$_SESSION["reservas"]=0;
}
require("entradas.php");
$datosPelicula= new entradas;
?>
<html>
<head>
Más abajo, en la misma página principal tengo el siguiente código.
Código PHP:
<?php
if (isset($_GET["posicion"])){
$posicion= $_GET["posicion"];
$resul= $_GET["resul"];
switch ($resul) {
case 0:
$lSvar=$datosPelicula->BuscarCasilla($posicion,$resul,false);
if ($lSvar== true){
echo "<p> <h4 align=center> <FONT color=red> Gracias por comprar en este cine.</FONT> </h4>";
}
else{
echo "<p> <h4 align=center> <FONT color=red> Sólo se permite comprar un máximo de cinco entradas.</FONT> </h4>";
}
break;
case 1:
echo "<p> <h4 align=center> <FONT color=red> Este asiento ya está reservado por otro cliente.</FONT> </h4>";
break;
case 2:
$lvar2= $datosPelicula->BuscarCasilla($posicion, $resul,true);
if ($lvar2== true){
echo "<p> <h4 align=center> <FONT color=red> Gracias por devolver la entrada de este cine.</FONT> </h4>";
}
break;
}
}
?>
Y la función BuscarCasilla que está en una clase, es la que supuestamente debe incrementar o decrementar la variable. Pero no funciona bien, ya que siempre tiene el valor 1.
Código PHP:
function BuscarCasilla($posicion, $valor, $devolvemos){
//Si devolvemos =false, es porque estamos comprando.
$datos= explode("-",$posicion);
$fila = (int)$datos[0];
$columna=(int) $datos[1];
if ($devolvemos== false){ // Es porque nos llega un cero y estamos reservando poniendo un 2 (naranja)
if($_SESSION["reservas"] < 5 && $_SESSION["usuario"]=="veronica"){
$_SESSION["reservas"]+=1;
$this->registros[$fila][$columna]=2;
array_values($this->registros);
$this->GrabarEnFich();
return true;
}
else
return false;
}
else{
// Es porque nos llega un 1 y estamos devolviendo y ponemos un 0 (libre)
if($_SESSION["reservas"] >0 && $_SESSION["usuario"]=="veronica"){
$this->registros[$fila][$columna]=0;
array_values($this->registros);
$this->GrabarEnFich();
$_SESSION["reservas"]-=1;
return true;}
}
}