Gestion Plage horaire en PHP / SQL : tant de personnes par /5min

Uxon-Studio 11 Messages postés mardi 12 septembre 2017Date d'inscription 29 novembre 2017 Dernière intervention - 28 nov. 2017 à 23:31 - Dernière réponse : jordane45 19209 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 12 décembre 2017 Dernière intervention
- 29 nov. 2017 à 22:29
Olà (Deuxièmes fois aujourd'hui) , J'ai fini mon projet de commande en ligne pour le food truck etc etc , il me manque une toute toute toute dernière étape (Enfin)!

Question:

Comment puis-je faire pour qu'à la fin du formulaire, une fois l'article choisi, la sauce, l'options etc, le client puisse choisir l'heure de sa commande? MAIS! Le tout évidement est de contrôlé que dans la tranche horaire "12h00-12h05" il reste de la place (exemple 3 places)!

1) Je dois créer mes plages horaires globale disponible midi/soir de tel heure à tel heure.

2) J'affiche c'est horaires sur la page shop.php du client, là ou Mr, Mme clic.

3) Quand Mr, Mme clic pour 12h05 , je rentre dans la BDD +1 à l'horraire 12h00-12h05 ?

4) Si la tranche horaire 12h00-12h05 est pleine (3 places donc), je n'affiche plus cette tranche horaire sur la page shop.php des autres clients...

Est-ce que je peut tout faire en php/sql ? Sachant qu'il y vraiment bcp de monde le midi au food truck, si 5 personne commande en même temps sur le site pour 12h00-12h05 ça vas merdé?

Merci à tout ceux qui mon rep depuis mes 3 ou 4 questions ici, et merci à ceux qui répondront ici aussi, salut bye! Alex.

Afficher la suite 
11Messages postés mardi 12 septembre 2017Date d'inscription 29 novembre 2017 Dernière intervention

5 réponses

Répondre au sujet
jordane45 19209 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 12 décembre 2017 Dernière intervention - 29 nov. 2017 à 21:22
0
Utile
4
Bonjour,

Que penses tu de cette requête :
SELECT P.id
		,P.heure_deb
		,P.heure_fin
		,count(C.id_commande) as NB_CMD
FROM plage P
LEFT JOIN cmd C ON C.id_plage = P.id
GROUP BY ((P.heure_deb) DIV 5 )




De là ... facile de trouver comment faire ....


NB : Tu constateras que je n'ai jamais stocké le NOMBRE de commande en BDD ... je le calcul directement.

Uxon-Studio 11 Messages postés mardi 12 septembre 2017Date d'inscription 29 novembre 2017 Dernière intervention - 29 nov. 2017 à 21:38
Ola, merci merci, juste pour te dire que j'ai bien vue ta réponse! Maintenant j’essaye de tout comprendre avant de revenir vers toi! a++

EDIT

Ok je viens de comprendre le système! Super, vraiment! Merci, Jordane45, toi derrière ton écrans, qui m'aura bien aidé pour plusieurs questions... Bye mec!
jordane45 19209 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 12 décembre 2017 Dernière intervention - 29 nov. 2017 à 21:42
Je me suis enflammé...
Tu peux simplement compter par rapport à ton nombre de plages
SELECT P.id
		,P.heure_deb
		,P.heure_fin
		,count(C.id_commande) as NB_CMD
FROM plage P
LEFT JOIN cmd C ON C.id_plage = P.id
GROUP BY (P.id )


Et si tu n'a pas défini de plages horaires (comme tu parlais de le faire dans un précédent message....) mais que tu veux te baser directement sur une colonne "heure" dans ta table commande, tu pourrais faire un truc du genre
SELECT DATE_FORMAT(from_unixtime(UNIX_TIMESTAMP(C.heure)),'%H:%i')  as PH
		,COUNT(C.id_commande) as NB
FROM  cmd C 
GROUP BY UNIX_TIMESTAMP(C.heure) DIV 300
Uxon-Studio 11 Messages postés mardi 12 septembre 2017Date d'inscription 29 novembre 2017 Dernière intervention - 29 nov. 2017 à 22:03
Ouais je vais faire des tests et voir en tout cas, le truc c'est juste que je dois définir des horaires. Un client dois clic sur une horaire proposé (donc affiché dynamiquement, donc où il reste de la place) et bim, tel client a tel horaire. Basta .. Je me demande comment font les autres petit commerce de ce genre
jordane45 19209 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 12 décembre 2017 Dernière intervention > Uxon-Studio 11 Messages postés mardi 12 septembre 2017Date d'inscription 29 novembre 2017 Dernière intervention - 29 nov. 2017 à 22:29

Le truc c'est juste que je dois définir des horaires

Oui c'est le point de départ.


Un client dois clic sur une horaire proposé (donc affiché dynamiquement, donc où il reste de la place)

Facile... avec la requête que je t'ai donné... tu ne prend que les plages qui n'ont pas encore atteins le maximum


Je me demande comment font les autres petit commerce de ce genre

Comme toi....ils codent... ou payent quelqu'un pour le faire.
Commenter la réponse de jordane45

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.