Progetto per maturità ?

di il
80 risposte

80 Risposte - Pagina 6

  • Re: Progetto per maturità ?

    scusami non ho capito, dici di visualizzare i questionari che lo studente può rispondere? Nel senso che possiede il codice per rispondere?
    Io invece pensavo di visualizzare tutti i questionari.. poi con un bottone tipo: "rispondi" linko in un'altra pagina dove inserisco il codice e rispondo
    che ne dici?
    Con la query che hai scritto tu lo studente può vedere tutti i questionari non solo rivolti a lui, ma anche ad altri studenti (ad esempio di altre classi). Di questi, lui avrebbe accesso solo ad una piccola parte, per cui mi pare inutile farglieli vedere tutti.
    L'idea del codice era scaturita dal fatto che nell'idea iniziale non prevedevo che il sistema richiedesse agli studenti di registrarsi, per cui gli veniva inviato via mail questo codice da usare a mo' di password usa e getta (rileggi i primi post). Ora che il sistema richiede un login tradizionale agli studenti, il codice potrebbe comunque servire per accedere direttamente al questionario dopo il login, invece di dover passare per la home page. Ma questo è un altro discorso che vedremo più avanti.
    Comunque, puoi dirmi quale va bene per il nostro db come vincolo di integrità referenziale sia in update e delete ? Perchè io ho messo cascade a tutto, sia in up che in delete ..
    Cascade va bene. Restrict serve ad esempio quando hai un archivio dove non puoi permetterti di perdere il contenuto di alcune tabelle a causa di modifiche incaute in altre tabelle verso cui hanno dei reference, ma non è il nostro caso. Al massimo, puoi mettere ON DELETE RESTRICT per la chiave esterna di Questionario che referenzia il professore, se vuoi che i questionari compilati non spariscano quando il professore che li ha creati viene cancellato (o meglio, non spariscano a meno che non si segua di proposito una procedura che cancelli prima i questionari e poi il prof.).
    creo un'altra pagina e la chiamo logout.php che viene chiamata dal bottone e distruggo li la sessione?
    Sì, quello è il modo tipico; in alternativa richiami la stessa pagina in cui c'è il bottone passando però un flag col metodo GET, in modo da entrare in un if dove distruggi la sessione.
  • Re: Progetto per maturità ?

    Per il logout ho fatto come dici tu penso ahah:
    <?php
    if(isset($_POST['esci'])){
    session_unset();
    session_destroy();
    
    header("Location: .\login.php");
    exit;
    }
    
    ?>
    
    <form action="#" method="post"  name="modulo">
    <input type="submit" name="esci" value="Logout">
    </form>
    richiamo la stessa pagina e mi funziona..
    mentre, il ragionamento sulla visualizzazione dei questionari va bene, ma come faccio a fare quello che dici tu?

    comunque sto per creare un file.txt che contiene tutte le classi della scuola.. perchè così uno studente, quando si registra, seleziona la classe e non la inserisce, che dici?
  • Re: Progetto per maturità ?

    Nella registrazione ho aggiunto questa cosa:
    <td>
    		<select name="classe">
    		<option value="null" selected="selected">Scegli Classe</option>
    		<?php
    			//lettura delle classi da un file di testo
    			$file=@fopen(".\classi.txt","r");
    			if($file){
    				$riga = rtrim(fgets($file));
    				while(!feof($file)){
    					$classe = $riga;
    					echo"<option value=\"$classe\">$classe</option>";
    					$riga = rtrim(fgets($file));
    				}
    			}
    			fclose($file);
    		?>
    		</select>
    		</td>
    per renderla un tantino più automatica senza che lo studente stia a scrivere la classe..
    comunque, forse sarebbe meglio se lo studente vedesse tutti i questionari.. tanto alla fine visualizza solo il nome del questionario, poi comunque per rispondere deve inserire il codice che riceverà via email ( che non ho visto come si fa ahah )
    Adessi in cosa posso cimentarmi?
    Dovremmo iniziare a vedere un po la pagina dove il professore crea il questionario.. e quindi inserisci il titolo, la data di scadenza e le domande e seleziona il tipo di risposta
  • Re: Progetto per maturità ?

    Si, prova a fare quello. Prova ad andare un po' avanti per conto tuo, poi quando hai una demo con almeno parte delle funzioni importanti implementate (tipo creazione e compilazione questionario) mi fai vedere.
  • Re: Progetto per maturità ?

    Okay allora, per la creazione del questionario, io direi di farla su un'altra pagina.. che la chiamerò "creaquest.php"
    prima, mi avevi consigliato di utilizzare un linguaggio lato client quindi javascript..
    io ho una idea: magari potremmo utilizzare delle textbox ( esistono ? ) e quindi una textbox per il titolo, poi subito dopo il titolo ci mettiamo la prima domanda e quindi un'altra textbox, poi per questa domanda ci mettiamo un radiobuttom : risposta chiusa/aperta e al click facciamo comparire per esempio per la risposta chiusa altre texbox dove il professore inserisce la risposta da selezionare.
    Tutto questo ripetuto ogni volta che il professore aggiunge una nuova domanda, quindi ci sarà tipo un bottone del tipo: "+ aggiungi domanda"
    alla fine ci sarà un bottone con scritto tipo: "prosegui" e poi la scelta degli studenti ecc
    che ne dici?
    sto cercando di trovare qualcosa su internet..
    ho trovato questo:
    <script>
    var f = document.createElement("form");
    f.setAttribute('method',"post");
    f.setAttribute('action',"submit.php");
    
    var i = document.createElement("input"); //input element, text
    i.setAttribute('type',"text");
    i.setAttribute('name',"username");
    
    var s = document.createElement("input"); //input element, Submit button
    s.setAttribute('type',"submit");
    s.setAttribute('value',"Submit");
    
    f.appendChild(i);
    f.appendChild(s);
    
    //and some more input elements here
    //and dont forget to add a submit button
    
    document.getElementsByTagName('body')[0].appendChild(f);
    
    </script>
    va diciamo modificato secondo le nostre esigenze.. ma non so se vada bene..
  • Re: Progetto per maturità ?

    Diciamo che questa è la pagina di partenza..
    <html>
    <head>
    <title>
    Creazione questionario
    </title>
    </head>
    <body>
    
    <div align="center">
    <form action="" method="post"  name="modulo" OnSubmit="">
    Titolo<input type="text" name="titolo" maxlength="20">
    Domanda<input type="text" name="domanda" maxlength="50">
    Modalità di risposta: <br>
    <input type="radio" name="risp_ap">Risposta aperta  <input type="radio" name="risp_chi">Risposta chiusa
    + aggiungi domanda
    
    <input type="submit" name="salva" value="prosegui">
    </form>
    
    </div>
    
    
    
    </body>
    </html>
    adesso con il javascript, dovremmo far comparire:
    -alla selezione dell radio button "risp_chi" dobbiamo far comparire un mini input type text dove il professore inserisce il primo tipo di risposta chiusa e, siccome le risposte possono essere più di una, dobbiamo far comparire tipo un bottone o un link con scritto sopra tipo: "aggiungi risposta" e quindi con la visualizzazione del secondo input type text.. ecc
    -poi al clicc su "+ aggiungi domanda " dobbiamo far comparire di nuovo sia l'input type text per la domanda sia i radio button per il tipo di risposta..
    complicato vero?
Devi accedere o registrarti per scrivere nel forum
80 risposte