Example #1
0
 /**
  * Rende persistenti le modifiche all'anagrafica di un docente sul db
  * @param Docente $d il docente considerato
  * @param mysqli_stmt $stmt un prepared statement
  * @return int il numero di righe modificate
  */
 private function salvaDocente(Docente $d, mysqli_stmt $stmt)
 {
     $query = " update docenti set \n                    password = ?,\n                    nome = ?,\n                    cognome = ?,\n                    email = ?,\n                    citta = ?,\n                    provincia = ?,\n                    cap = ?,\n                    via = ?,\n                    ricevimento = ?,\n                    numero_civico = ?,\n                    dipartimento_id = ?\n                    where docenti.id = ?\n                    ";
     $stmt->prepare($query);
     if (!$stmt) {
         error_log("[salvaStudente] impossibile" . " inizializzare il prepared statement");
         return 0;
     }
     if (!$stmt->bind_param('sssssssssiii', $d->getPassword(), $d->getNome(), $d->getCognome(), $d->getEmail(), $d->getCitta(), $d->getProvincia(), $d->getCap(), $d->getVia(), $d->getRicevimento(), $d->getNumeroCivico(), $d->getDipartimento()->getId(), $d->getId())) {
         error_log("[salvaStudente] impossibile" . " effettuare il binding in input");
         return 0;
     }
     if (!$stmt->execute()) {
         error_log("[caricaIscritti] impossibile" . " eseguire lo statement");
         return 0;
     }
     return $stmt->affected_rows;
 }
 public function setDocente(Docente $v = null)
 {
     if ($v === null) {
         $this->setFkDocenteId(0);
     } else {
         $this->setFkDocenteId($v->getId());
     }
     $this->aDocente = $v;
     if ($v !== null) {
         $v->addRelDivisionActividadDocente($this);
     }
     return $this;
 }
 public function setDocente(Docente $v = null)
 {
     if ($v === null) {
         $this->setFkDocenteId(0);
     } else {
         $this->setFkDocenteId($v->getId());
     }
     $this->aDocente = $v;
     if ($v !== null) {
         $v->addRelDocenteEstablecimiento($this);
     }
     return $this;
 }
Example #4
0
 public function setDocente(Docente $v = null)
 {
     if ($v === null) {
         $this->setFkDocenteId(NULL);
     } else {
         $this->setFkDocenteId($v->getId());
     }
     $this->aDocente = $v;
     if ($v !== null) {
         $v->addDocenteHorario($this);
     }
     return $this;
 }
 /**
  * Restituisce tutti gli appelli inseriti da un dato Docente
  * @param Docente $docente il docente per la ricerca
  * @return array una lista di appelli (riferimento)
  */
 public function &getAppelliPerDocente(Docente $docente)
 {
     $appelli = array();
     $query = "select \n               appelli.id appelli_id,\n               appelli.data appelli_data,\n               appelli.capienza appelli_capienza,\n               insegnamenti.id insegnamenti_id,\n               insegnamenti.titolo insegnamenti_titolo,\n               insegnamenti.cfu insegnamenti_cfu,\n               insegnamenti.codice insegnamenti_codice,\n\n               docenti.id docenti_id,\n               docenti.nome docenti_nome,\n               docenti.cognome docenti_cognome,\n               docenti.email docenti_email,\n               docenti.citta docenti_citta,\n               docenti.cap docenti_cap,\n               docenti.via docenti_via,\n               docenti.provincia docenti_provincia,\n               docenti.numero_civico docenti_numero_civico,\n               docenti.ricevimento docenti_ricevimento,\n               docenti.username docenti_username,\n               docenti.password docenti_password,\n               dipartimenti.id dipartimenti_id,\n               dipartimenti.nome dipartimenti_nome,\n               CdL.id CdL_id,\n               CdL.nome CdL_nome,\n               CdL.codice CdL_codice\n               \n               from appelli\n               join insegnamenti on appelli.insegnamento_id = insegnamenti.id\n               join docenti on insegnamenti.docente_id = docenti.id \n               join dipartimenti on docenti.dipartimento_id = dipartimenti.id \n               join CdL on insegnamenti.cdl_id = CdL.id\n               where docenti.id = ?";
     $mysqli = Db::getInstance()->connectDb();
     if (!isset($mysqli)) {
         error_log("[getAppelliPerDocente] impossibile inizializzare il database");
         $mysqli->close();
         return $appelli;
     }
     $stmt = $mysqli->stmt_init();
     $stmt->prepare($query);
     if (!$stmt) {
         error_log("[getAppelliPerDocente] impossibile" . " inizializzare il prepared statement");
         $mysqli->close();
         return null;
     }
     if (!$stmt->bind_param('i', $docente->getId())) {
         error_log("[getAppelliPerDocente] impossibile" . " effettuare il binding in input");
         $mysqli->close();
         return null;
     }
     $appelli = self::caricaAppelliDaStmt($stmt);
     foreach ($appelli as $appello) {
         self::caricaIscritti($appello);
     }
     $mysqli->close();
     return $appelli;
 }
Example #6
0
 public function &ricercaEsami(Docente $user, $insegnamento, $matricola, $nome, $cognome)
 {
     $esami = array();
     // costruisco la where "a pezzi" a seconda di quante
     // variabili sono definite
     $bind = "i";
     $where = " where docenti.id = ? ";
     $par = array();
     $par[] = $user->getId();
     if (isset($insegnamento)) {
         $where .= " and insegnamenti.id = ? ";
         $bind .= "i";
         $par[] = $insegnamento;
     }
     if (isset($matricola)) {
         $where .= " and studenti.matricola = ? ";
         $bind .= "s";
         $par[] = $matricola;
     }
     if (isset($nome)) {
         $where .= " and lower(studenti.nome) like lower(?) ";
         $bind .= "s";
         $par[] = "%" . $nome . "%";
     }
     if (isset($cognome)) {
         $where .= " and lower(studenti.cognome) like lower(?) ";
         $bind .= "s";
         $par[] = "%" . $cognome . "%";
     }
     $query = "select \n                  esami.id esami_id,\n                  esami.voto esami_voto,\n                  esami.data esami_data,\n                  insegnamenti.id insegnamenti_id,\n                  insegnamenti.titolo insegnamenti_titolo,\n                  insegnamenti.cfu insegnamenti_cfu,\n                  insegnamenti.codice insegnamenti_codice,\n                  studenti.id studenti_id,\n                  studenti.nome studenti_nome,\n                  studenti.cognome studenti_cognome,\n                  studenti.matricola studenti_matricola,\n                  studenti.email studenti_email,\n                  studenti.citta studenti_citta,\n                  studenti.via studenti_via,\n                  studenti.cap studenti_cap,\n                  studenti.provincia studenti_provincia, \n                  studenti.numero_civico studenti_numero_civico,\n                  studenti.username studenti_username,\n                  studenti.password studenti_password,\n                  CdL.id CdL_id,\n                  CdL.nome CdL_nome,\n                  CdL.codice CdL_codice,\n                  dipartimenti.id dipartimenti_id,\n                  dipartimenti.nome dipartimenti_nome,\n                  docenti.id docenti_id,\n                  docenti.nome docenti_nome,\n                  docenti.cognome docenti_cognome,\n                  docenti.email docenti_email,\n                  docenti.citta docenti_citta,\n                  docenti.cap docenti_cap,\n                  docenti.via docenti_via,\n                  docenti.provincia docenti_provincia,\n                  docenti.numero_civico docenti_numero_civico,\n                  docenti.ricevimento docenti_ricevimento,\n                  docenti.username docenti_username,\n                  docenti.password docenti_password\n                  \n\n\n                  from esami \n                  join studenti on esami.studente_id = studenti.id\n                  join insegnamenti on esami.insegnamento_id = insegnamenti.id\n                  join CdL on studenti.cdl_id = CdL.id\n                  join dipartimenti on CdL.dipartimento_id = dipartimenti.id\n                  join docenti on insegnamenti.docente_id = docenti.id\n                  " . $where;
     $mysqli = Db::getInstance()->connectDb();
     if (!isset($mysqli)) {
         error_log("[ricercaEsami] impossibile inizializzare il database");
         $mysqli->close();
         return $esami;
     }
     $stmt = $mysqli->stmt_init();
     $stmt->prepare($query);
     if (!$stmt) {
         error_log("[ricercaEsami] impossibile" . " inizializzare il prepared statement");
         $mysqli->close();
         return $esami;
     }
     switch (count($par)) {
         case 1:
             if (!$stmt->bind_param($bind, $par[0])) {
                 error_log("[ricercaEsami] impossibile" . " effettuare il binding in input");
                 $mysqli->close();
                 return $esami;
             }
             break;
         case 2:
             if (!$stmt->bind_param($bind, $par[0], $par[1])) {
                 error_log("[ricercaEsami] impossibile" . " effettuare il binding in input");
                 $mysqli->close();
                 return $esami;
             }
             break;
         case 3:
             if (!$stmt->bind_param($bind, $par[0], $par[1], $par[2])) {
                 error_log("[ricercaEsami] impossibile" . " effettuare il binding in input");
                 $mysqli->close();
                 return $esami;
             }
             break;
         case 4:
             if (!$stmt->bind_param($bind, $par[0], $par[1], $par[2], $par[3])) {
                 error_log("[ricercaEsami] impossibile" . " effettuare il binding in input");
                 $mysqli->close();
                 return $esami;
             }
             break;
         case 5:
             if (!$stmt->bind_param($bind, $par[0], $par[1], $par[2], $par[3], $par[4])) {
                 error_log("[ricercaEsami] impossibile" . " effettuare il binding in input");
                 $mysqli->close();
                 return $esami;
             }
             break;
     }
     $esami = self::caricaEsamiDaStmt($stmt);
     foreach ($esami as $esame) {
         $this->caricaCommissione($esame);
     }
     $mysqli->close();
     return $esami;
 }
Example #7
0
 public static function addInstanceToPool(Docente $obj, $key = null)
 {
     if (Propel::isInstancePoolingEnabled()) {
         if ($key === null) {
             $key = (string) $obj->getId();
         }
         self::$instances[$key] = $obj;
     }
 }