Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 18 su 18
  1. #11
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    84

    funzioni.php

    <?php
    function trovaidrep($reparto)
    {
    $risultato = crea_recordset("select id_rep from reparti where descrizione = '" . $reparto . "'");

    //Memorizzo il record
    $linea = fetch_array($risultato);

    if ($linea != false)
    {
    $ritorna = $linea["id_rep"];
    }
    else
    {
    $ritorna = 0;
    }

    chiudi_recordset($risultato);

    return $ritorna;
    }
    function trovaidman($mansione)
    {
    $risultato = crea_recordset("select id_man from mansioni where descrizione = '" . $mansione . "'");

    //Memorizzo il record
    $linea = fetch_array($risultato);

    if ($linea != false)
    {
    $ritorna = $linea["id_man"];
    }
    else
    {
    $ritorna = 0;
    }

    chiudi_recordset($risultato);

    return $ritorna;
    }
    function trovaidqual($qualifica)
    {
    $risultato = crea_recordset("select id_qual from qualifiche where descrizione = '" . $qualifica . "'");

    //Memorizzo il record
    $linea = fetch_array($risultato);

    if ($linea != false)
    {
    $ritorna = $linea["id_qual"];
    }
    else
    {
    $ritorna = 0;
    }

    chiudi_recordset($risultato);

    return $ritorna;
    }
    function trovaiddip($id_dip)
    {
    $risultato = crea_recordset("select id_dip from dipendenti where id_dip = '" . $id_dip . "'");

    //Memorizzo il record
    $linea = fetch_array($risultato(), MYSQL_ASSOC);

    if ($linea != false)
    {
    $ritorna = $linea["id_dip"];
    }
    else
    {
    $ritorna = 0;
    }

    chiudi_recordset($risultato);

    return $ritorna;
    }
    function trovaidtiporap($tiporap)
    {
    $risultato = crea_recordset("select id_tiporap from tipo_rapporto where descrizione = '" . $tiporap . "'");

    //Memorizzo il record
    $linea = fetch_array($risultato);

    if ($linea != false)
    {
    $ritorna = $linea["id_tiporap"];
    }
    else
    {
    $ritorna = 0;
    }

    chiudi_recordset($risultato);

    return $ritorna;
    }

    /*function dip_status($id_dip, $gg, $mm, $aaaa)
    {
    global $lista_presenze_colore,$colore_assenza_defaul;

    $str = "select stato_presenza from presenze ";
    $str = $str . "where (id_dip=" . $id_dip . ") and ";
    $str = $str . "(giorno=" . $gg . ") and ";
    $str = $str . "(mese=" . $mm . ") and ";
    $str = $str . "(anno=" . $aaaa . ")";

    $risultato = crea_recordset($str);

    $linea = fetch_array($risultato);

    if ($linea != false)
    {
    if(isset($lista_presenze_colore[$linea['stato_presenza']]))
    $ritorna = $lista_presenze_colore[$linea['stato_presenza']];
    else
    $ritorna = $colore_assenza_defaul;
    }
    else
    {
    $ritorna = $lista_presenze_colore['NOT_SET'];
    }

    chiudi_recordset($risultato);

    return $ritorna;
    }
    */
    function dip_status_dato($stato)
    {
    global $lista_presenze_colore,$colore_assenza_defaul;

    if(isset($lista_presenze_colore[$stato]))
    $ritorna = $lista_presenze_colore[$stato];
    else
    $ritorna = $colore_assenza_defaul;

    return $ritorna;
    }

    function dip_status_stampa_dato($stato,$ore_presenza,$ore_a ssenza)
    {
    global $lista_presenze;

    $ritorna = "<table class='corpo_mastrino' cellpadding='0' cellspacing='0' border='0'>";
    $ritorna = $ritorna . "<tr><td>$ore_presenza</td></tr>";
    $ritorna = $ritorna . "<tr><td>$ore_assenza";

    if(($stato!= 'NOT_SET') &&($stato!= 'PRESENTE'))
    $ritorna = $ritorna . $lista_presenze[$stato];

    $ritorna = $ritorna . "</td></tr></table>";
    return $ritorna;
    }

    function count_dip_status($id_dip, $mm, $aaaa)
    {
    $str = "SELECT `stato_presenza` , sum( `ore_assenza` ) as tot_ass,";
    $str = $str . " sum( `ore_presenza` ) as tot_pres";
    $str = $str . " FROM `presenze`";
    $str = $str . " where (id_dip=" . $id_dip . ") and ";
    $str = $str . " (mese=" . $mm . ") and ";
    $str = $str . " (anno=" . $aaaa . ")";
    $str = $str . " GROUP BY `stato_presenza`";

    $ritorno = array();
    $ritorno['PRESENTE'] = 0;

    //Loop sui record
    $risultato = crea_recordset($str);

    while ($linea = fetch_array($risultato))
    {
    $tipo = $linea['stato_presenza'];
    if ($tipo!='NOT_SET')
    {
    if($tipo!='PRESENTE')
    $ritorno[$tipo] = $linea['tot_ass'];

    $ritorno['PRESENTE'] = $ritorno['PRESENTE'] + $linea['tot_pres'];
    }
    }

    chiudi_recordset($risultato);

    return $ritorno;
    }
    function dip_status_let($id_dip, $gg, $mm, $aaaa)
    {
    //Array dei colori da visualizzare
    $str = "select stato_presenza from presenze ";
    $str = $str . "where (id_dip=" . $id_dip . ") and ";
    $str = $str . "(giorno=" . $gg . ") and ";
    $str = $str . "(mese=" . $mm . ") and ";
    $str = $str . "(anno=" . $aaaa . ")";

    $risultato = crea_recordset($str);

    $linea = fetch_array($risultato);

    if ($linea != false)
    {
    if($linea['stato_presenza']=='')
    $ritorna = 'NOT_SET';
    else
    $ritorna = $linea['stato_presenza'];
    }
    else
    {
    $ritorna = 'NOT_SET';
    }

    chiudi_recordset($risultato);

    return $ritorna;
    }
    /*function dip_status_print($id_dip, $gg, $mm, $aaaa)
    {
    //Array dei colori da visualizzare
    $status['PRESENTE'] = "Pre";
    $status['STRAORDINARIO'] = "Stra";
    $status['ASSENTE'] = "Ass";
    $status['MALATTIA'] = "Mal";
    $status['NFORTUNIO'] = "Inf";
    $status['PERMESSO'] = "Per";
    $status['FERIE'] = "Fer";
    $status['NOT_SET'] = "";

    $str = "select stato_presenza from presenze ";
    $str = $str . "where (id_dip=" . $id_dip . ") and ";
    $str = $str . "(giorno=" . $gg . ") and ";
    $str = $str . "(mese=" . $mm . ") and ";
    $str = $str . "(anno=" . $aaaa . ")";

    $risultato = crea_recordset($str);

    $linea = fetch_array($risultato);

    if ($linea != false)
    {
    $ritorna = $status[$linea['stato_presenza']];
    }
    else
    {
    $ritorna = $status['NOT_SET'];
    }

    chiudi_recordset($risultato);

    return $ritorna;
    }*/
    //Calcolo ferie residue
    function ferie_residue($id_dip)
    {
    $ore_fer = 0;
    $ferie_maturate = 0;


    //*********Calcolo il numero di ore di ferie
    $str = "select SUM(ore_assenza) from presenze ";
    $str = $str . "where (id_dip=" . $id_dip . ") and ";
    $str = $str . "(stato_presenza='FERIE')";

    $risultato = crea_recordset($str);
    $linea = fetch_array($risultato);

    if ($linea != false)
    {
    $ore_fer = $linea['SUM(ore_assenza)'];
    }

    chiudi_recordset($risultato);
    //*********Calcolo il numero di ore di ferie

    //*********Calcolo il numero di ore di ferie maturate
    $str = "select SUM(ore_maturate) from ferie_maturate ";
    $str = $str . "where (id_dip=" . $id_dip . ")";

    $risultato = crea_recordset($str);
    $linea = fetch_array($risultato);

    if ($linea != false)
    {
    $ferie_maturate = $linea['SUM(ore_maturate)'];
    }

    chiudi_recordset($risultato);
    //*********Calcolo il numero di ore di ferie maturate

    $res = $ferie_maturate - $ore_fer;

    return $res;
    }

    //Calcolo permessi residui
    function permessi_residui($id_dip)
    {
    $ore_per = 0;
    $ferie_maturate = 0;

    //*********Calcolo il numero di ore di permessi
    $str = "select SUM(ore_assenza) from presenze ";
    $str = $str . "where (id_dip=" . $id_dip . ") and ";
    $str = $str . "(stato_presenza='PERMESSO')";

    $risultato = crea_recordset($str);
    $linea = fetch_array($risultato);

    if ($linea != false)
    {
    $ore_per = $linea['SUM(ore_assenza)'];
    }

    chiudi_recordset($risultato);
    //*********Calcolo il numero di ore di permessi

    //*********Calcolo il numero di ore di PERMESSI maturati
    $str = "select SUM(ore_permessi_mat) from ferie_maturate ";
    $str = $str . "where (id_dip=" . $id_dip . ")";

    $risultato = crea_recordset($str);
    $linea = fetch_array($risultato);

    if ($linea != false)
    {
    $ferie_maturate = $linea['SUM(ore_permessi_mat)'];
    }

    chiudi_recordset($risultato);
    //*********Calcolo il numero di ore di ferie maturate

    $res = $ferie_maturate - $ore_per;

    return $res;
    }
    function ore_ass_dip($ore_ass)
    {
    if (isset($ore_ass))
    return $ore_ass;
    else
    return '0';
    }

    function ore_pres_dip($stato,$ore,$ore_ordinarie)
    {
    if (isset($ore))
    $ritorna = $ore;
    else
    {
    $ritorna = valore_default_pres($stato,$ore_ordinarie);
    }
    return $ritorna;
    }
    function setup($campo)
    {
    //Mi cerca il valore de campo specificato
    $risultato = crea_recordset("select $campo from setup");

    //Memorizzo il record
    $linea = fetch_array($risultato);

    if ($linea != false)
    {
    $ritorna = $linea[$campo];
    }
    else
    {
    $ritorna = "";
    }

    chiudi_recordset($risultato);

    return $ritorna;
    }
    function stampa_valore($valore)
    {
    if($valore=='')
    return "";
    else
    return $valore;
    }
    function valore_default_pres($stato,$ore_ordinarie)
    {
    if (($stato == 'PRESENTE')||($stato == 'STRAORDINARIO')) return $ore_ordinarie;
    else return 0;
    }
    ?>

  2. #12
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    84

    il problema č...

    ... che questo codice l'ha scritto un collega andato via, e (ho postato l'originale)
    mi č stato chiesto di fare una vista dipendenti e non amministratore, allora ho modificato il codice pensando di far vedere a ogni utente solo il proprio dato (pensando che ci vuole filtro per ID e il gioco č fatto!),
    l'originale funziona ma fa vedere e modificare tutti gli utenti e ovviamente invece ognuno deve vedere solo il suo dato...

    ecco il mio modificato, non mi pare di aver fatto casini... ma sicuramente da qualche parte ho toppato...

    <?php
    include('functions/funzioni.php');
    if (isset($_SESSION['id_dip']));
    $id_dip=$_SESSION['id_dip'];
    $conn = apri_connessione();
    $query = "SELECT dipendenti.id_dip, dipendenti.id_liv, dipendenti.matricola, dipendenti.cognome, dipendenti.nome,
    dipendenti.ore_ordinarie, presenze.stato_presenza, presenze.ore_assenza, presenze.ore_presenza,presenze.con_ticket
    FROM dipendenti LEFT JOIN presenze ON (dipendenti.id_dip = presenze.id_dip
    AND presenze.giorno = $giorno
    AND presenze.mese = $mese
    AND presenze.anno = $anno)";
    $query = $query . " WHERE dipendenti.id_dip = $id_dip AND ((UNIX_TIMESTAMP('$anno-$mese-$giorno') - ";
    $query = $query . " UNIX_TIMESTAMP( dipendenti.`data_fine_rapp` )) <=0)";
    $query = $query . " OR (UNIX_TIMESTAMP( dipendenti.`data_fine_rapp`) =0)";
    //$query = $query . " order by dipendenti.matricola";

    //Aggiungo il pulsante per il default....
    $arg = $HTTP_SERVER_VARS['REQUEST_URI'];
    $str = "";

    //Spaziatura

    $str = $str . " <tr>\n </tr>\n";
    $str = $str . " <tr>\n </tr>\n";
    $str = $str . " <tr>\n </tr>\n";

    //Apertura della riga nella quale č contenuta
    //la tabella per il form d'inserimento
    $str = $str . " <tr>\n";

    //Apertura del form per l'inserimento delle presenze
    $str = $str . " <form name='inserisci_presenze' method='post' action='ins_pres_exec.php'>\n";

    //Apre la tabella
    $str = $str . " <table border='0' bgcolor='#ffffff' width='630px'>\n";

    //Intestazione della tabella
    $str = $str . " <tr>\n";
    $str = $str . " <td width='10px' bgcolor='#ffffff' class='testa'>Maticola</td>\n";
    $str = $str . " <td class='testa'>Cognome</td>\n";
    $str = $str . " <td class='testa'>Nome</td>\n";
    $str = $str . " <td width='10px' class='testa'>Ore Ordinarie</td>\n";
    $str = $str . " <td width='10px' class='testa'>Stato</td>\n";
    $str = $str . " <td width='40px' class='testa'>Ore di presenza</td>\n";
    $str = $str . " <td width='40px' class='testa'>Ore di Assenza o Straordinario</td>\n";
    $str = $str . " <td width='40px' class='testa'>Con Ticket</td>\n";
    $str = $str . " </tr>\n";
    //Dati della tabella (lista dei dipendenti)
    //echo $query;
    while ($linea = fetch_array($risultato, MYSQL_ASSOC))
    {
    //Riga dei dati
    $id_dip = $linea["id_dip"];

    $stato_presenza = $linea['stato_presenza'];
    if($stato_presenza=='')
    $stato_presenza = 'NOT_SET';
    $stato_presenza_reale = $linea['stato_presenza'];
    if($stato_presenza_reale=='')
    $stato_presenza_reale = 'NOT_SET';

    if($stato_presenza=='NOT_SET')
    $str = $str . " <tr class='corpo_non_set'>\n";
    else
    $str = $str . " <tr class='corpo'>\n";

    //scorro l'array $linea per salvare il valore del campo
    $str = $str . " <td>" . $linea['matricola'] . "</td>\n";
    $str = $str . " <td>" . $linea['cognome'] . "</td>\n";
    $str = $str . " <td>" . $linea['nome'] . "</td>\n";
    $str = $str . " <td>" . $linea['ore_ordinarie'] . "</td>\n";

    if(($_GET['stato_default']!='') && ($stato_presenza=='NOT_SET'))
    $stato_presenza = $_GET['stato_default'];

    //Disegno l'input box per lo stato e per le ore di assenza
    $str = $str . "<td>".html_optionbox_presenze('stato',$id_dip ,
    $stato_presenza,$linea['ore_ordinarie'])."</td>";
    //Campo ore presenza
    $str = $str . " <td>\n";
    $str = $str . " <input type='text' name='presenza" . $id_dip . "' id='testo" . $id_dip . "' ";
    $str = $str . "value='" . ore_pres_dip($stato_presenza,$linea['ore_presenza'],$linea['ore_ordinarie']) . "' size='10'></input>\n";
    $str = $str . " </td>\n";

    //Campo ore assenza
    $disabilitato = "";
    if($stato_presenza=='PRESENTE')
    $disabilitato = 'disabled';

    $str = $str . " <td>\n";
    $str = $str . " <input $disabilitato type='text' name='assenza" . $id_dip . "' id='aaaa" . $id_dip . "' ";
    $str = $str . "value='" . ore_ass_dip($linea['ore_assenza']) . "' size='10'></input>\n";
    $str = $str . " </td>\n";

    //Fine riga dei dati
    //Campo verifica ticket
    if($stato_presenza_reale=='NOT_SET')
    $con_ticket = 'checked';
    else
    {
    if($linea['con_ticket']=='1') $con_ticket = 'checked';
    else $con_ticket = '';
    }

    $str = $str . " <td>\n";
    $str = $str . " <input type='checkbox' name='conticket" . $id_dip . "' id='conticket" . $id_dip . "' ";
    $str = $str . "value='1' $con_ticket/>\n";
    $str = $str . " </td>\n";
    $str = $str . " </tr>\n";
    }

    //Spaziatura
    $str = $str . " <tr>\n </tr>\n";
    $str = $str . " <tr>\n </tr>\n";
    $str = $str . " <tr>\n </tr>\n";

    //Bottone submit
    $str = $str . " <tr>\n";
    $str = $str . " <td><input type='submit' name='Esegui' value='Applica'></td>\n";
    $str = $str . " </tr>\n";

    //Chiusura della tabella
    $str = $str . " </table>\n";

    //Passo come parametro anche la data
    $str = $str . "<input type='hidden' name='gg' value='" . $giorno . "'>";
    $str = $str . "<input type='hidden' name='mm' value='" . $mese . "'>";
    $str = $str . "<input type='hidden' name='aaaa' value='" . $anno . "'>";
    //Chiusura del form
    $str = $str . " </form>\n";

    //Chiusura della riga nella quale č contenuta
    //la tabella per il form d'inserimento
    $str = $str . " </tr>\n";
    $str = $str . " </table>\n";
    $str = $str . "</tr>\n";
    $str = $str . "</table>";
    //echo "Ciao " . $_SESSION['id_dip'] ;
    chiudi_recordset($risultato);
    chiudi_connessione($conn);

    echo $str;
    echo $query
    ?>

  3. #13
    Scusa ma la funzione

    codice:
    $conn = apri_connessione();
    dov'č? Non č che ti sei dimenticato di includerla nel file?

    PS.
    Quando posti del codice in un forum utilizza i tag appositi...

  4. #14
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    84

    ops!

    sorry

    Codice PHP:
    include('functions/funzioni.php');

    //Query
    //$query = "Select id_dip, matricola,cognome, nome,ore_ordinarie from dipendenti order by matricola";
    $query "SELECT dipendenti.id_dip, dipendenti.matricola, dipendenti.cognome, dipendenti.nome, 
    dipendenti.ore_ordinarie, presenze.stato_presenza, presenze.ore_assenza, presenze.ore_presenza,presenze.con_ticket
    FROM dipendenti LEFT JOIN presenze ON ( dipendenti.id_dip = presenze.id_dip
    AND presenze.giorno = 
    $giorno
    AND presenze.mese = 
    $mese
    AND presenze.anno = 
    $anno)";
    $query $query " WHERE ((UNIX_TIMESTAMP('$anno-$mese-$giorno') - ";
    $query $query " UNIX_TIMESTAMP( dipendenti.`data_fine_rapp` )) <=0)";
    $query $query " OR (UNIX_TIMESTAMP( dipendenti.`data_fine_rapp` ) =0)";
    $query $query " order by dipendenti.matricola";


    //Aggiungo il pulsante per il default....
    $arg $HTTP_SERVER_VARS['REQUEST_URI'];
    $str "";

    //Spaziatura
    $str $str " <tr>\n </tr>\n";
    $str $str " <tr>\n </tr>\n";
    $str $str " <tr>\n </tr>\n";

    //Apertura della riga nella quale č contenuta 
    //la tabella per il form d'inserimento
    $str $str " <tr>\n";

    //Apertura del form per l'inserimento delle presenze
    $str $str " <form name='inserisci_presenze' method='post' action='ins_pres_exec.php'>\n";

    //Apre la tabella
    $str $str " <table border='0' width='630px'>\n";

    //Intestazione della tabella
    $str $str " <tr>\n";
    $str $str " <td width='10px' class='testa'>Maticola</td>\n";
    $str $str " <td class='testa'>Cognome</td>\n";
    $str $str " <td class='testa'>Nome</td>\n";
    $str $str " <td width='10px' class='testa'>Ore Ordinarie</td>\n";
    $str $str " <td width='10px' class='testa'>Stato</td>\n";
    $str $str " <td width='40px' class='testa'>Ore di presenza</td>\n";
    $str $str " <td width='40px' class='testa'>Ore di Assenza o Straordinario</td>\n";
    $str $str " <td width='40px' class='testa'>Con Ticket</td>\n";
    $str $str " </tr>\n";

    //Dati della tabella (lista dei dipendenti)
    $conn apri_connessione();
    $risultato crea_recordset($query);

    while (
    $linea mysql_fetch_array($risultatoMYSQL_ASSOC)) 
    qui sopra nell'originale, ma non cambia nulla se lo posizioni in alto prima della query

  5. #15
    No, forse non mi sono ben spiegato...

    tu chiami una funzione chiamata "apri_connessione()" che, io suppongo, dovrebbe aprire la connessione al DB (e quindi mi aspetterei di trovare un "mysql_connect(.....)" da qualche parte)
    Invece non la vedo nč nel file funzioni.php ne in quello di base .... non č che l'hai zottata e non te ne sei accorto??

  6. #16
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    84

    no, no

    eccola č nel file db_functions.php

    e funziona perchč se sulla pagina della query metto

    include('functions/db_functions.php')

    mi dā un bell'error "redeclare function"


    Codice PHP:
    <?php
    /* Liberazione delle risorse del risultato */
    function apri_connessione()
    {
      global 
    $db_host;
      global 
    $db_user;
      global 
    $db_password;
      global 
    $db_name;
        
      
    /* Connessione e selezione del database */
      
    $connessione mysql_connect($db_host,$db_user,$db_password)
              or die(
    "Connessione non riuscita "$db_host.$db_user.$db_password);
              
      
    mysql_select_db($db_name
              or die(
    "Selezione del database non riuscita "$db_name);
        
      return 
    $connessione;
    }

    /* Chiusura della connessione */
    function chiudi_connessione($connessione)
    {
      return 
    mysql_close($connessione);
    }

    function 
    lista_tabelle($connessione,$database)
    {
      return 
    mysql_list_tables($database);
    }

    function 
    fetch_array($risultato)
    {
      return 
    mysql_fetch_array($risultato);
    }

    function 
    num_fields($risultato)
    {
      return 
    mysql_num_fields($risultato);
    }

    function 
    field_name ($risultato$i)
    {
      return 
    mysql_field_name ($risultato$i);
    }

    function 
    field_type($risultato$i)
    {
      return 
    mysql_field_type($risultato$i);
    }

    function 
    crea_recordset($query)
    {
      
    /* Esecuzione di una query SQL */
      
    $risultato mysql_query($query
                 or die(
    "Query fallita ".$query);

      return 
    $risultato;
    }

    /* Liberazione delle risorse del risultato */
    function chiudi_recordset($risultato)
    {
      
    mysql_free_result($risultato);
    }

    function 
    sql_esegui($sql)
    {
      
    mysql_query($sql)
                or die(
    "Query fallita ".$sql);
    }

    ?>

  7. #17
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    84

    up

    altri suggerimenti?

    Thanks!

  8. #18
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    84

    ho provato a fare

    echo $risultato;

    Resource id #4

    quindi lo riconosce l'id ma mancano tutti gli altri campi

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.