Applicazione PHP/MySQL per prenotazioni: limitare il numero massimo di posti prenotabili

  • Creatore Discussione Creatore Discussione Fra_23
  • Data di inizio Data di inizio
Ti invio gli altri script..... ho modificato nel form la riga
PHP:
echo '<input type="text" name="nrposti" value="'.$nrprenot.'" size="5"><br><br>';
con
PHP:
echo '<input type="number" name="nrposti" min="1" max="'.$postidisp.'" value="1" size="5"><br><br>';
questo richiama controlla.php
PHP:
<?php
session_start();
$postievento = $_SESSION['posti_evento'];
$postidisp = $_SESSION['posti_disp'];
$nominat = $_SESSION['nominat'];

$nrposti=$_GET['nrposti'];
$nominat=$_GET['nominat'];
if ($nrposti>$postidisp) {
    $_SESSION['messaggio']='ATTENZIONE!! Il numero immesso eccede il numero di posti disponibili';
}else{
    $_SESSION['messaggio']='Ok, procedo con la registrazione';
    $_SESSION['posti_prenotati']=$nrposti;
    $_SESSION['nominat'] = $nominat;
}

include('FORM2.php');
?>
che rimanda al form, per la lettura del messaggio e quindi, se è tutto ok, richiama aggiorna.php
PHP:
<?php
session_start();
$id = $_SESSION['ID'];
$postievento = $_SESSION['posti_evento'];
$postidisp = $_SESSION['posti_disp'];
$nrprenot = $_SESSION['posti_prenotati'];
$nominat = $_SESSION['nominat'];

$diff=$postidisp-$nrprenot;
echo 'REPIOLOGO: <br><br>posti evento: '.$postievento.'<br>posti disponibili: '.$postidisp;
echo '<br>Posti prenotati: '.$nrprenot.'<br>posti ancora disponibili: '.$diff;
echo '<br>nominativo: '.$nominat.'<br>Ultimo ID inserito: '.$id.'<br>';


//************aggiorno il nr dei posti disponibili nel DB*************

include('conn.php');
$connessione = new mysqli($host, $user, $password, $db);

// verifica su eventuali errori di connessione
if ($connessione->connect_errno) {
    echo "Connessione fallita: ". $connessione->connect_error . ".";
    exit();
}

// esecuzione della query per l'inserimento dei record
if (!$connessione->query("UPDATE PRENOTA SET NOMINATIVO = '$nominat', POSTI_PREN = '$nrprenot' WHERE ID = '$id'")) {
    echo "Errore della query: " . $connessione->error . ".";
}else{
    echo "PERFETTO!! Il racord è stato correttamente aggiornato";
}

// esecuzione della query per l'inserimento dei record
if (!$connessione->query("INSERT INTO PRENOTA (POSTI_EVENTO,POSTI_DISP,NOMINATIVO,POSTI_PREN)
    VALUES ($postievento,$diff,'',0)")) {
    echo "Errore della query: " . $connessione->error . ".";
}
// chiusura della connessione
$connessione->close();
?>
che si occuperà,, appunto, di aggiornare il record. Quando crei la tabella ricordati di inserire un record nel quale inserirai il numero dei posti per l'evento e i posti disponibili
 

Discussioni simili