Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    problema database mysql e php

    salve a tutti.

    sono alle prime armi con php e ho un problema con delle tabelle in un database di phpmyadmin per un video noleggio.

    Io ho strutturato tre tabelle cliente,noleggio,video in questo modo

    Cliente (Id_cliente,Nome,cognome)

    Noleggio (Id_video,Id_cliente,Data_noleggio,Data_restituzione)

    Video (Id_video,Titolo,Disponibilità)


    Devo creare una pagina php che dopo aver inserito i dati relativi al noleggio con un form e tramite insert nella tabella, mi visualizzi la tabella noleggio dopo aver premuto il tasto invia del form e diminuisca la disponibilità di un video e viceversa (restituzione video,aumento della disponibilità). E devo mantenere uno storico dei noleggi effettuati.

    Per quanto riguarda l'inserimento dei dati e la visualizzazione della tabella sono riuscito a farlo ma non riesco a capire come faccio a creare un vincolo sulla disponibilità cioè che se inserisco i dati del noleggio dopo aver cliccato invia mi dica che il video non è disponibile .

    Poi ad esempio se inserisco il numero del video nella tabella noleggio quel video non può essere noleggiato da un altro cliente anche se questo viene restituito perchè id_video è chiave primaria.

    Quindi quello che ho provato a fare è eliminare il record dopo la restituzione ma così non posso definire uno storico...

    Ho provato anche a creare una tabella "noleggi correnti" in cui inserire i noleggi correnti salvarli in altra tabella ed eliminarli quando vengono restituiti ma quando li elimino vengono eliminati anche sull'altra essendoci un vincolo di integrità referenziale.

    Come posso fare? vorrei solo dei piccoli chiarimenti su come procedere

    Grazie mille.

  2. #2
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,655
    Secondo me ti converrebbe aggiungere nella tabella video un contatore per ogni volta che viene noleggiato. In questo modo hai un totale storico di noleggi.
    Per la disponibilità di noleggio singolo video, nella stessa tabella video un campo col totale di noleggi possibili.
    Ogni volta che qualcuno noleggia, decrementi di 1 e incrementi di 1 quando restituisce.
    Se il valore è pari a zero non c'è più disponibilità di noleggio.

  3. #3
    Utente di HTML.it L'avatar di MySQL
    Registrato dal
    May 2015
    Messaggi
    729
    Iniziamo a dire che usare un campo autoincrementante FK idvideo addirittura PK in noleggio non lo farei.
    Ovvero metti una PK in noleggio, e idvideo diventa una FK

    Per la domanda invece la risposta precedente mi sembra la più semplice ed anche efficace

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.