Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2013
    Messaggi
    3

    creazione sistema formazione on-line problema

    ciao a tutti, ho una cosa un po complessa da creare, almeno per me che programmo in php non da molto!

    In sintesi ho 3 tabelle sintetizzo i campi che mi servono

    lezione -> id, titolo, posizione
    esercizi -> id, id_lezione (=lezione.id),titolo
    esercizisvolti -> id, cod_esercizio (=esercizi.id), stato_avanzamento (valori C=chiuso , A=in attesa)

    In pratica quando l'utente accede all'area riservata si trova la lista delle lezioni che deve eseguire, con titolo della lezione con link che rimanda ad una pagina con gli esercizi compilabili, fin qui tutto semplice... il mio problema ora è fare in modo che finchè l'utente non ha compilato e superato gli esercizi relativi alla lezione (il numero di esercizi per lezione è variabile) non può passare alla lezione successiva. Quindi quando tutti gli esercizi hanno lo stato_avanzamento=C

    Visivamente ho una lista con tutte le lezioni devo fare in modo che le precedenti che ho eseguito siano cliccabili e anche quella nuova che devo eseguire sia cliccabile mentre le successive si veda solo il titolo ma non siano cliccabili.. spero di essermi spiegato

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Oltre all'id dovresti dare anche un numero d'ordine agli esercizi, così ti risulterebbe più semplice.

    Avendo il numero d'ordine potresti fare
    codice:
    - prendi tutti gli esercizi della lezione ordinati in base al numero d'ordine e li tieni in un array
    
    - prendi tutti gli esercizi svolti della lezione con stato C ed ordinati in base al numero d'ordine e li tieni in un altro array
    
    - ciclo foreach sul primo array, per ogni elemento verifichi se questo è presente nel secondo e tieni traccia del numero d'ordine aggiornandolo alla fine di ogni ciclo
    
    --- se è presente lo rendi clickabile
    
    --- altrimenti
    
    ------ se il suo numero d'ordine è il prossimo rispetto a quello che hai salvato nel ciclo precedente (se lo indichi con dei numeri ti basta vedere se "$numero_ordine_esercizio_corrente == $numero_salvato + 1") allora lo rendi clickabile
    
    ------ altrimenti lo stampi come semplice testo

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2013
    Messaggi
    3
    intanto grazie per la risposta.. in realtà io un numero ordinamento ce l'ho ma nella tab lezione è il campo 'posizione', è su quella tabella che mi interessa agire, anche perchè gli esercizi sono da 1 a 3 più o meno .... ma se non chiedo troppo riusciresti a postarmi un po di codice per capire meglio?

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2013
    Messaggi
    3
    alla fine ho risolto, grazie cmq

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 © 2025 vBulletin Solutions, Inc. All rights reserved.