Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2019
    Messaggi
    34

    Sistema dinamico di prenotazioni appuntamenti orari

    Salve a tutti, per le necessità della vaccinazione nel mio comune mi sto impegnando nel realizzare un piccolo sistema di prenotazioni. Attualmente ho realizzato, un pò modificando mie cose un pò modificando script scaricabili, un sistema che in quattro passaggi parte da un form in cui inserire dati anagrafici (alcuni obbligatori e non ripetibili se già registrati), un pagina in cui prendere appuntamento per giorno fascia oraria e ora, una pagina di riepilogo e una di elaborazione dati e scrittura nel database.<br>Il sistema funziona però vorrei che, in fase di prenotazione appuntamento, l'utente possa scegliere fra, ad esempio, 100 posti per ogni ora e che questi vadano via via diminuendo ad ogni prenotazione, fino ad arrivare fino a 0 e che quindi per quell'ora non ci sia più disponibilità (credo qualcosa del genere di un articolo da magazzino che quando termina come scorta non è più ordinabile). Attualmente la scelta dell'appuntamento avviene tramite un script tipo regione-provincia-comune che preleva dati da un apposito database. Un sistema di invio email personalizzato rilascerà ricevuta dell'avvenuta prenotazione con successo (ma ancora non sono riuscito in ciò).<br>Qualcuno sa dirmi se è possibile realizzare la mia idea e soprattutto, in tal caso, darmi utili consigli o link a qualcosa del genere da modificare ?


    Questo è il mio sito: http://prenotazionevaccinocovidmonre....com/index.asp


    Questa è la pagina "rec_dati.asp" che elabora i dati del form e invia al dabatase:

    codice:
    <% 
    
    Set objConn = Server.CreateObject("ADODB.Connection")
    objConn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("../database/pren_vacc.mdb")
     
    DIM ncf
    DIM cf
    
    
    cognome=request.form("cognome")
    nome=request.form("nome")
    data_nascita=request.form("data_nascita")
    indirizzo_residenza=request.form("indirizzo_residenza")
    citta=request.form("citta")
    recapito_telefonico=request.form("recapito_telefonico")
    email=request.form("email")
    data_primo_vacc=request.form("data_primo_vacc")
    luogo_primo_vacc=request.form("luogo_primo_vacc")
    tipo_vacc=request.form("tipo_vacc")
    nuovo_vacc=request.form("nuovo_vacc")
    patologia=request.form("patologia")
    
    
    fondo=request.form("fondo")
    sezione=request.form("sezione")
    serie=request.form("serie")
    
         ncf = request.form("cf")
    
          Dim objRec
          Set objRec = Server.CreateObject("ADODB.Recordset")
          
          sql="select * from pren_vacc where cf = '"&ncf&"'"
    
          objRec.Open sql, objConn, 3, 3
          
          if not objRec.eof then
          
    response.write("<div align='center'> Questo codice fiscale è già registrato. Registrazione fallita. <a href='http://prenotazionevaccinocovidmonreale.somee.com/index.asp'> <br>Clicca qui per effettuare una nuova registrazione</a></div><br>")
            
            objRec.Close
            Set objRec = Nothing
            
            objConn.Close
            Set objConn = Nothing
                    
            else
            
    Set RS = Server.CreateObject("ADODB.Recordset")
    
    RS.Open "pren_vacc", objConn, 3,3
            
    RS.AddNew
    rs("cognome")=cognome
    rs("nome")= nome
    rs("data_nascita")=data_nascita
    rs("indirizzo_residenza")=indirizzo_residenza
    rs("citta")=citta
    rs("recapito_telefonico")=recapito_telefonico
    rs("email")=email
    rs("data_primo_vacc")=data_primo_vacc
    rs("luogo_primo_vacc")=luogo_primo_vacc
    rs("tipo_vacc")=tipo_vacc
    rs("nuovo_vacc")=nuovo_vacc
    rs("patologia")=patologia
    rs("cf")=ncf
    rs("fondo")=fondo
    rs("sezione")=sezione
    rs("serie")=serie
    
    response.write("Registrazione avvenuta con successo. <a href='http://prenotazionevaccinocovidmonreale.somee.com/index.asp'> <br>Clicca qui per effettuare una nuova registrazione</a></div><br>")
    
    rs.update
    rs.Close
    objConn.Close
    end if
     
    %>

  2. #2
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,089
    la domanda è: ANCORA non esiste un sistema di prenotazione?

    ti hanno commissionato il lavoro? in che rapporti sei col comune e/o ausl?

    puoi creare un "magazzino" di 100 posti disponibili per fascia oraria e li sottrai ad ogni prenotazione avvenuta.
    devi fare attenzione agli utenti concorrenti: bisogna evitare che si vada in deficit di posti.
    quindi confermi la prenotazione DOPO aver verificato che il posto sia ancora disponibile.
    in caso contrario avvisi l'utente e gli fai scegliere un altro orario.

    non ho capito cosa c'entra il DB regioni-province-comuni visto che lavori con una sola città...

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2019
    Messaggi
    34
    Mi spiego meglio scusa: lavoro in un ufficio comunale che prenota per conto dell'usl provinciale che organizza spesso una 3 giorni di vaccini nel mio comune. Lo script regione-provincia-comune l'ho modificato per dare la scelta del giorno, fascia oraria, ora.
    Purtroppo la "cosa" del magazzino non la saprei fare. Conosci un link da indicarmi per modificare uno script esistente o qualcosa che mi possa aiutare nel merito ? Grazie.

  4. #4
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,089
    semplice

    crei una tabella nel db con questi campi:
    data, orario, quantita, disponibili (dove quantita sta per il totale dei posti assegnabili, disponibili sta per il numero dei posti impegnabili. entrambi hanno il valore iniziale di "100")
    ad ogni registrazione controlli che "disponibili" sia superiore a 0
    quindi sottrai 1 e completi la registrazione.

    è molto rudimentale ma funzionale
    come vedi ti rimane in memoria il numero totale dei posti originale e di quelli ancora disponibili.

    tutto chiaro o ti serve una query di esempio?

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2019
    Messaggi
    34
    Quote Originariamente inviata da Vincent.Zeno Visualizza il messaggio
    semplice

    crei una tabella nel db con questi campi:
    data, orario, quantita, disponibili (dove quantita sta per il totale dei posti assegnabili, disponibili sta per il numero dei posti impegnabili. entrambi hanno il valore iniziale di "100")
    ad ogni registrazione controlli che "disponibili" sia superiore a 0
    quindi sottrai 1 e completi la registrazione.

    è molto rudimentale ma funzionale
    come vedi ti rimane in memoria il numero totale dei posti originale e di quelli ancora disponibili.

    tutto chiaro o ti serve una query di esempio?
    Te ne sei grato perchè ho dato fondo alle mie poche conoscenze di asp e arrivo a fare la tabella ma un query di controllo del genere non saprei proprio come farla ...

  6. #6
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,089
    codice:
    select disponibili from tabella where data="&data&" and orario="&orario&"
    ma scritta così non è sufficiente, bisogna sapere che forma hanno i dati nel db
    scriverti tutto qui diventa complicato
    ti contatto in pvt per un chiarimento

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