Exemplo n.º 1
0
 /**
  * Restituisce la lista di esami per un dato studente
  * @param Studente $user
  */
 public function &esamiPerStudente(Studente $user)
 {
     $esami = array();
     $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 esami.studente_id = ?\n                  ";
     $mysqli = Db::getInstance()->connectDb();
     if (!isset($mysqli)) {
         error_log("[esamiPerStudente] impossibile inizializzare il database");
         $mysqli->close();
         return $esami;
     }
     $stmt = $mysqli->stmt_init();
     $stmt->prepare($query);
     if (!$stmt) {
         error_log("[esamiPerStudente] impossibile" . " inizializzare il prepared statement");
         $mysqli->close();
         return $esami;
     }
     if (!$stmt->bind_param('i', $user->getId())) {
         error_log("[esamiPerStudente] impossibile" . " effettuare il binding in input");
         $mysqli->close();
         return $esami;
     }
     $esami = self::caricaEsamiDaStmt($stmt);
     foreach ($esami as $esame) {
         $this->caricaCommissione($esame);
     }
     $mysqli->close();
     return $esami;
 }
Exemplo n.º 2
0
 /**
  * Rende persistenti le modifiche all'anagrafica di uno studente sul db
  * @param Studente $s lo studente considerato
  * @param mysqli_stmt $stmt un prepared statement
  * @return int il numero di righe modificate
  */
 private function salvaStudente(Studente $s, mysqli_stmt $stmt)
 {
     $query = " update studenti set \n                    password = ?,\n                    nome = ?,\n                    cognome = ?,\n                    email = ?,\n                    numero_civico = ?,\n                    citta = ?,\n                    provincia = ?,\n                    matricola = ?,\n                    cap = ?,\n                    via = ?\n                    where studenti.id = ?\n                    ";
     $stmt->prepare($query);
     if (!$stmt) {
         error_log("[salvaStudente] impossibile" . " inizializzare il prepared statement");
         return 0;
     }
     if (!$stmt->bind_param('ssssississi', $s->getPassword(), $s->getNome(), $s->getCognome(), $s->getEmail(), $s->getNumeroCivico(), $s->getCitta(), $s->getProvincia(), $s->getMatricola(), $s->getCap(), $s->getVia(), $s->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;
 }
Exemplo n.º 3
0
 private function queryIscrizione(Studente $s, Appello $a, $query)
 {
     $mysqli = Db::getInstance()->connectDb();
     if (!isset($mysqli)) {
         error_log("[aggiungiIscrizione] impossibile inizializzare il database");
         $mysqli->close();
         return 0;
     }
     $stmt = $mysqli->stmt_init();
     $stmt->prepare($query);
     if (!$stmt) {
         error_log("[aggiungiIscrizione] impossibile" . " inizializzare il prepared statement");
         $mysqli->close();
         return 0;
     }
     if (!$stmt->bind_param("ii", $s->getId(), $a->getId())) {
         error_log("[aggiungiIscrizione] impossibile" . " effettuare il binding in input");
         $mysqli->close();
         return 0;
     }
     if (!$stmt->execute()) {
         error_log("[aggiungiIscrizione] impossibile" . " eseguire lo statement");
         $mysqli->close();
         return 0;
     }
     $mysqli->close();
     return $stmt->affected_rows;
 }