controllare valore in tabella mysql

davidediiana

Nuovo Utente
30 Mar 2021
2
0
1
Buongiorno

in questo sito c'è il "portale ferie" che significa che ogni utente può richiedere un giorno di ferie

Ho la tabella users che tramite le sessioni l'utente accede e la tabella ferie che contiene username, spettanti, godute, rimanenti.

Nella pagina ferie.php vorrei inserire una tabella con il riepilogo e poi c'è un pulsante nuova richiesta dove c'è il form modale che porta a registrazione-ferie.php che dovrebbe cambiare il valore dei 2 campi godute e rimanti con -1 e +1 ma prima controllare che il campo rimanenti sia maggiore di 0 altrimenti mostra messaggio.

ferie.php
PHP:
<?php
session_start();
require_once('database.php');

if (isset($_SESSION['session_id']))
{     $session_user = htmlspecialchars($_SESSION['session_user'], ENT_QUOTES, 'UTF-8');
    $session_id = htmlspecialchars($_SESSION['session_id'], ENT_QUOTES, 'UTF-8');
    $session_nome = htmlspecialchars($_SESSION['session_nome'], ENT_QUOTES, 'UTF-8');   
    $session_email = htmlspecialchars($_SESSION['session_email'], ENT_QUOTES, 'UTF-8');
    $session_codice_dip = htmlspecialchars($_SESSION['session_codice_dip'], ENT_QUOTES, 'UTF-8');
    $session_titolo = htmlspecialchars($_SESSION['session_titolo'], ENT_QUOTES, 'UTF-8');
    $session_direzione = htmlspecialchars($_SESSION['session_direzione'], ENT_QUOTES, 'UTF-8');
    $session_area = htmlspecialchars($_SESSION['session_area'], ENT_QUOTES, 'UTF-8');
    $session_unita = htmlspecialchars($_SESSION['session_unita'], ENT_QUOTES, 'UTF-8');
    $session_ufficio = htmlspecialchars($_SESSION['session_ufficio'], ENT_QUOTES, 'UTF-8');
    $session_ruolo = htmlspecialchars($_SESSION['session_ruolo'], ENT_QUOTES, 'UTF-8');
    $session_posizione = htmlspecialchars($_SESSION['session_posizione'], ENT_QUOTES, 'UTF-8');
    $session_id_ufficio = htmlspecialchars($_SESSION['session_id_ufficio'], ENT_QUOTES, 'UTF-8');
    $session_tipo_utente = htmlspecialchars($_SESSION['session_tipo_utente'], ENT_QUOTES, 'UTF-8');
    
     $ip = $_SERVER['REMOTE_ADDR'];
    $today = date("H:i:s d/m/Y");
    $operazione = "Apertura Portale Ferie";



$query = "
                INSERT INTO operazioni
                VALUES (0, :username, :today, :ip, :operazione)
            ";
          
            $check = $pdo->prepare($query);
            $check->bindParam(':username', $session_user, PDO::PARAM_STR);
            $check->bindParam(':today', $today, PDO::PARAM_STR);
            $check->bindParam(':ip', $ip, PDO::PARAM_STR);
            $check->bindParam(':operazione', $operazione, PDO::PARAM_STR);
            $check->execute();
 
 
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" type="text/css" href="../css/style1.css">
<title> Portale Ferie <?=$session_nome?>  </title>
<style type="text/css">
    ul#menu li { float:left; list-style: none; padding: 0 8px; }
        </style>
        
  <div style="float: left; text-align: left;"> <h1> Arrigo Web</h1></div>   
 
  <section align='right'>
  <div style="float: right; text-align: right;">     
        
    <?= $session_nome ?>
  <br>
  <?= $session_direzione ?>
  <br>
    <a href="logout.php">Esci</a>
  </div>
 <br>
 <br>
 </section>
 <br>
 <br>
    <nav>
    <ul id="menu">
        <li> <a href="dashboard.php"> Home </a></li> 
        <? switch ($session_tipo_utente) {case '3':{  ?>
        <li><a href="redazione.php">Portale Redazione </a></li>   
        <?;}} ?>
        <? switch ($session_tipo_utente) {case '1':{  ?>
        <li><a href="ferie.php"><strong>Portale Ferie</strong> </a></li>   
        <?;}} ?>
       <li><a href="#">Voce 2 </a></li>   
        <li><a href="#">Voce 1 </a></li>   
        <li><a href="profilo.php">Profilo</a> </li>
    </ul>
    <br>

    </nav>
    <br>
    

    
 
 <br>
 <br>
 
<?




echo "<br>";
 
printf("Di seguito troverai il riepilogo delle tue Ferie.");
echo "<br>";
echo "<br>";
echo "<br>";
echo "<br>";
echo "<br>";
echo "<br>";
?>
<style>


///qua c'era un lungo codice di css che rimuovo per massimo caratteri


}
</style>
</head>
    <body>
    
    <br>
    <button onclick="document.getElementById('id01').style.display='block'" data-aos="fade-left" data-aos-delay="400" style="width:auto;">Nuova Richiesta</button>
    
    <div id="id01" class="modal">
      
        <form method="post" action="registrazione-ferie.php" class="modal-content animate">
    <center>
        <div class="imgcontainer">
            <span onclick="document.getElementById('id01').style.display='none'" class="close" title="Close Modal">&times;</span>
            <h2> Nuova Richiesta - Ferie</h2>
          </div>
        
        
        <div class="container">
            <input type="date" id="username" name="username" required>
        </div>
        <div class="container" >
            <button type="submit" name="login">Invia</button>
            
        </div>
        <div class="container1" >
          
        </div>
        
          </center>
    </form>
            
    </div>
    
    <script>
    // Get the modal
    var modal = document.getElementById('id01');
    
    // When the user clicks anywhere outside of the modal, close it
    window.onclick = function(event) {
        if (event.target == modal) {
            modal.style.display = "none";
        }
    }
    </script>


<?

echo "<br>";
echo "<br>";


echo "<br>";
echo "<br>";
echo "<br>";

} else {
    printf("Effettua il %s per accedere all'area riservata", '<a href="../login.html">login</a>');

}

?>



registrazione-ferie.php (che è il file da completare)
PHP:
<?php
session_start();
include('database.php');

if (isset($_SESSION['session_id']))
{     $session_user = htmlspecialchars($_SESSION['session_user'], ENT_QUOTES, 'UTF-8');
    $session_id = htmlspecialchars($_SESSION['session_id'], ENT_QUOTES, 'UTF-8');
    $session_nome = htmlspecialchars($_SESSION['session_nome'], ENT_QUOTES, 'UTF-8');   
    $session_email = htmlspecialchars($_SESSION['session_email'], ENT_QUOTES, 'UTF-8');
    $session_codice_dip = htmlspecialchars($_SESSION['session_codice_dip'], ENT_QUOTES, 'UTF-8');
    $session_direzione = htmlspecialchars($_SESSION['session_direzione'], ENT_QUOTES, 'UTF-8');
    $session_area = htmlspecialchars($_SESSION['session_area'], ENT_QUOTES, 'UTF-8');
    $session_unita = htmlspecialchars($_SESSION['session_unita'], ENT_QUOTES, 'UTF-8');
    $session_ufficio = htmlspecialchars($_SESSION['session_ufficio'], ENT_QUOTES, 'UTF-8');
    $session_ruolo = htmlspecialchars($_SESSION['session_ruolo'], ENT_QUOTES, 'UTF-8');
    $session_tipo_utente = htmlspecialchars($_SESSION['session_tipo_utente'], ENT_QUOTES, 'UTF-8');
    $giorni = "1";
    $ip = $_SERVER['REMOTE_ADDR'];
    $today = date("H:i:s d/m/Y");
    $operazione = "Richiesta Ferie per il giorno $data";







if (isset($_POST['ferie'])) {
    $data = $_POST['data'] ?? '';

    
    if (empty($data) ) {
        $msg = 'Compila il campo data %s';
    
    } else {
            $query1 = "
                INSERT INTO richiesta_ferie
                VALUES (0, :nome, :username, :data, :giorni, :today)
            ";
          
            $check = $pdo->prepare($query1);
            $check->bindParam(':nome', $session_nome, PDO::PARAM_STR);
            $check->bindParam(':username', $session_username, PDO::PARAM_STR);
            $check->bindParam(':data', $data, PDO::PARAM_STR);
            $check->bindParam(':giorni', $giorni, PDO::PARAM_STR);
            $check->bindParam(':today', $today, PDO::PARAM_STR);
            $check->execute();
        
        $richiesta = $check->fetchAll(PDO::FETCH_ASSOC);
        
    //è qui che ho bisogno di aiuto   
      
    

            
        }
    }
    
    printf("error");
}
} else {
    printf("Effettua il %s per accedere all'area riservata", '<a href="../login.html">login</a>');
}


Vi ringrazio in anticipo per l'aiuto
 
Discussioni simili
Autore Titolo Forum Risposte Data
G Controllare valori in 2 tabelle PHP 5
seranto [ASP] Controllare il testo inserito in Textarea Classic ASP 6
N [PHP] Controllare condizione ciclo While PHP 9
K [PHP] Controllare dati database tra due valori PHP 18
L [PHP] if con array per controllare l'ip locale PHP 1
Fede72 Controllare le checkbox con PHP PHP 6
max_400 Come si fa a controllare se un sito è sicuro? Sicurezza e Virus 2
B [MySQL] CONTROLLARE I PRIMI CARATTERI DI UN CAMPO VARCHAR MySQL 8
T [ASP] controllare popup Classic ASP 3
Jonn [PHP] Controllare l'inizio di una stringa PHP 5
M Controllare se il prezzo inserito è espresso in centesimi e non in millesimi PHP 0
J Php ajax sql controllare se l'id esiste in una tabella db PHP 2
matteoraggi Controllare le vendite con Analytics e condividerne uan parte con altri Google Analytics 0
L Controllare il numero dei campi segnati Javascript 0
A Controllare l'animazione di una skills bar realizzata con i keyframes css3 Javascript 1
I controllare email Javascript 3
Sevenjeak Controllare dipendenze del programma Java 1
P Controllare che il form sia composto da soli numeri e non sia vuoto? Javascript 11
A Controllare affidabilità di un sito PHP 0
D Complicamento scrittura INPUT ( più input da controllare ) Javascript 1
L funzione si e funzione no controllare se e stata richiamata o no Javascript 1
B Controllare se un codice è in un DB Javascript 1
F Controllare peso di un file in un imput Javascript 3
P Controllare se un utente ha gia votato!! PHP 4
M Controllare se una stringa è contenute in un'altra Javascript 2
E come faccio a controllare la lunghezza e la composizione di alcune variabili? PHP 2
E come controllare che in una stringa non ci siano altre lettere tranne alcune definite? PHP 1
L Controllare datetime PHP 6
M controllare email da android Sviluppo app per Android 0
C Esercizio: Inserire elenco numeri e controllare che siano di tupi numerico Javascript 2
C Controllare l'esistenza di un record in una tabella. MySQL 2
I Controllare DIV tramite passaggio mouse su link in altro DIV HTML e CSS 5
M PHP controllare sia attiva una sola istanza del codice PHP 0
valient13 Controllare da database se è on o off PHP 5
U Controllare all'interno di un file incluso se un altro file è stato incluso... PHP 7
I controllare player quicktime da pulsante Javascript 1
M Controllare Presenza di un link Classic ASP 4
M controllare se un utente è ancora collegato. PHP 3
V Controllare due chechbox e un campo mail Javascript 5
T controllare gli errori nel log di php PHP 1
M controllare responseText Ajax 1
T controllare il volume Flash 2
M Ho bisogno di TUTTI VOI! Si può controllare dalla sezione "admin" un template ?? Flash 0
Linchiamoci Script per controllare i banner. PHP 5
K Controllare il click su un link Classic ASP 1
S Controllare se è installato flash flayer Javascript 0
lupin3m [help] problema nel controllare il filmato con i simboli Flash 7
N Webcast Microsoft su un prodotto per gestire e controllare l'infrastruttura IT Altri Annunci 1
I Login da controllare Flash 0
O controllare se esiste già un utente nel database PHP 4

Discussioni simili