créneaux horaires

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

26 avr. 2005, 11:29

Ca marchera pas Alba si la réservation commence avant 12 et fini après 14

Et si tu faisais une requete du genre

Code : Tout sélectionner

SELECT * FROM maTable WHERE CAST(12:00:00 AS DATE) NOT BETWEEN reserv_debut AND reserv_fin AND CAST(14:00:00 AS DATE) NOT BETWEEN reserv_debut AND reserv_fin
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Mammouth du PHP | 19672 Messages

26 avr. 2005, 11:33

Coolhead, si tu copiais correctement le code que t'a donné albat, tu n'aurais pas transformé un AND en OR et sa requête ne peut que fonctionner correctement.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 97 Messages

26 avr. 2005, 11:38

[quote="zeus"]Ca marchera pas [b]Alba[/b] si la réservation commence avant 12 et fini après 14

Et si tu faisais une requete du genre
[code]
SELECT * FROM maTable
WHERE CAST(12:00:00 AS DATE) NOT BETWEEN reserv_debut AND reserv_fin
AND CAST(14:00:00 AS DATE) NOT BETWEEN reserv_debut AND reserv_fin[/code][/quote]

Pourquoi NOT BETWEEN ??
Et puis là j'ai toujours 09:00:00 - 17:00:00 qui remonte dans les résultats

Eléphant du PHP | 97 Messages

26 avr. 2005, 11:41

Ca marchera pas Alba si la réservation commence avant 12 et fini après 14
si ça marche il remonte bien une réserv qui a lieu de 8h à 20h00 en mettant :

Code : Tout sélectionner

SELECT * FROM reserv_salles WHERE reserv_debut < '14:00:00' AND reserv_fin > '12:00:00'

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

26 avr. 2005, 11:42

C'est pas ce que tu voulais ?

Je croyais que si tu donnais l'intervalle 12h-14h, tu devais avoir toutes les reservations qui comprenait cet intervalle :?: :!:
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

26 avr. 2005, 11:44

ET dans le cas d'une réservation de 12 à 13 h, comment la requete doit réagir ?
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Mammouth du PHP | 19672 Messages

26 avr. 2005, 11:45

Alors complète la requête:
SELECT *
FROM   reserv_salles
WHERE  reserv_debut < '14:00:00'
   AND reserv_debut > '12:00:00'
   AND reserv_fin   > '12:00:00'
   AND reserv_fin < '14:00:00'
Bien formuler une question, c'est s'éviter des aller-retour nombreux et inutiles.
Modifié en dernier par Cyrano le 26 avr. 2005, 11:47, modifié 1 fois.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 97 Messages

26 avr. 2005, 11:46

C'est pas ce que tu voulais ?

Je croyais que si tu donnais l'intervalle 12h-14h, tu devais avoir toutes les reservations qui comprenait cet intervalle :?: :!:
ba oui c'est bien ça.
Je veux savoir quel sont les réserv dans la base qui sont dans le créneau horaire 12;14

et la version de Alba à l'aire d'être ok.
non ? tu vois un bugs ?

Eléphant du PHP | 97 Messages

26 avr. 2005, 11:47

Alors complète la requête:
SELECT *
FROM   reserv_salles
WHERE  reserv_debut < '14:00:00'
   AND reserv_debut > '12:00:00'
   AND reserv_fin   > '12:00:00'
   AND reserv_fin < '14:00:00'
Bien formuler une question, c'est s'éviter des aller-retour nombreux et inutiles.
=> c'est trop restreint !!!

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

26 avr. 2005, 11:49

Alors complète la requête:
SELECT *
FROM   reserv_salles
WHERE  reserv_debut < '14:00:00'
   AND reserv_debut > '12:00:00'
   AND reserv_fin   > '12:00:00'
   AND reserv_fin < '14:00:00'
Bien formuler une question, c'est s'éviter des aller-retour nombreux et inutiles.
Ca marchera pas vu qu'elle ne va retourner que les réservations dont le début ET la fin sont compris entre 12 et 14 !!!
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Eléphant du PHP | 97 Messages

26 avr. 2005, 11:54

Ca marchera pas vu qu'elle ne va retourner que les réservations dont le début ET la fin sont compris entre 12 et 14 !!!

ok, mais moi je veux les réserv. faisant partie de l'interval 12, 14. La réserv, peut commencer avant et/ou terminer après.

mais ok pour la cas précis du 12,14 ta requête semble être bonne

Mammouth du PHP | 19672 Messages

26 avr. 2005, 11:56

mouais, faut parcourir tout le post pour trouver, t'as raison Zeus
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

26 avr. 2005, 12:01

Je viens de relire la requete de alba et je pense qu'elle est blindée !!! :lol:

Celle avec reserv_debut > 12 et reserv_fin <14 !!!

Désolé d'avoir vu une erreur là ou iln'y en avait pas !!! :oops:
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

26 avr. 2005, 12:31

Je viens de relire la requete de alba et je pense qu'elle est blindée !!! :lol:
Encore ! Encore !
(j'adore les compliments.) :langue:
Désolé d'avoir vu une erreur là ou il n'y en avait pas !!! :oops:
Tu es tout pardonné ! ;)

Mais... pourquoi vous virez le T final de mon pseudo ??? :?: :?: :?:
Albat'

Mammouth du PHP | 859 Messages

26 avr. 2005, 12:34

Parce que c'est comme le H de Hawaï, ça sert à rien :lol:

Image