Overide reguliere tijden

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

.NET developer die ERP software maakt

Organisatie Deze organisatie is al ruim 25 jaar een grote speler als het gaat om ERP oplossingen voor onder meer de bouw- en installatiebranche. Deze organisatie telt meer dan 100 werknemers en is gevestigd in de omgeving van Breda. De klantgerichtheid van deze organisatie maakt het een unieke organisatie. Ze doen er alles aan om een langdurige relatie op de bouwen met de klant. Dit kan alleen als je ook echt in contact bent met de klant. Vergelijkbare bedrijven plaatsen een demo op de website over hoe de software werkt. Deze organisatie doet hier niet aan mee! Ze gaan langs

Bekijk vacature »

Medior PHP Developer

Organisatie Deze jonge club uit Eindhoven is momenteel hard op zoek naar development talent op het gebied van PHP Software Development. Je komt terecht in een organisatie dat meerdere grote klanten bediend op het gebied van Software Development door hen te ondersteunen in verschillende projecten. Zo zijn zij continu bezig met het ontwikkelen van (web)applicaties, complexe backend systemen en websites, zeer gevarieerd dus! Je komt terecht in een ontwikkelclub met echte vakidioten, het niveau in het team varieert ook van zeer getalenteerde developers tot doorgewinterde senior developers waar je mee kunt sparren en/of jezelf aan op kunt trekken. Functie Jouw

Bekijk vacature »

Frontend Midlance Developer

Jij hebt al een aantal jaren werkervaring in de Frontend wereld en twijfelt over de stap naar freelancer… Want hoe lekker is het als je in overleg met de eindgebruiker je tijden kan bepalen, je veel vrijheid hebt, bij alleen toonaangevende organisaties terecht komt en ook nog eens DIK betaald krijgt? Voor veel ontwikkelaars is dit toch net een stap te ver. Zij willen gewoon lekker code kloppen en zich niet bezig houden met het regelen van opdrachten, administratieve zaken of andere randzaken. Klinkt dit bekend? Wij bieden de middenweg! Wie zijn wij? Wij zijn niet het stereotype organisatie waar

Bekijk vacature »

.NET C# web developer gezocht met focus op gebruik

Ben je op zoek naar een baan binnen een klein softwarebedrijf? Een bedrijf met een informele, persoonlijke en familiaire sfeer? Waar je je als developer zowel richt op de back- als frontend? Wellicht dat deze vacature dan iets voor jou is. Voor een softwarebedrijf, gevestigd in het centrum van Rotterdam, zijn we momenteel op zoek naar .NET C# web developer. Dit mag iemand zijn die net van school komt, maar ook iemand die al behoorlijk wat ervaring heeft. Het bedrijf bestaat inmiddels ruim 10 jaar en en door de aanhoudende groei zijn ze opzoek naar versterking van 1 a 2

Bekijk vacature »

PHP Ontwikkelaar gezocht centrum Eindhoven!

Bij deze opdrachtgever krijg jij de kans om direct mee te gaan werken aan een gaaf, groot project op high tech gebied en te werken met grote hoeveelheden data. Ben jij een PHP ontwikkelaar die toe is aan het echte werk? Dan is deze organisatie wat voor jou! Deze organisatie is nu zo’n 5 jaar bezig maar het werk dat ze doen begint sinds een aantal maanden pas echt in een stroomversnelling te komen wegens investeerders. Hierdoor verwachten ze een grote groei te gaan realiseren in het komende jaar. Dat is echter afhankelijk van de programmeurs! Omdat ze nu veel

Bekijk vacature »

senior digitaal specialist

Wat ga je doen? Je gaat je bezighouden met het analyseren, adviseren, concretiseren, implementeren, monitoren en evalueren van het digitale werkveld in ruime zin. Je monitort alle (osporings)onderzoeken en initieert en implementeert nieuwe methodes, technieken en werkprocessen. Daarnaast ben je adviseur binnen Eenheid Oost-Nederland. In detail betekent dit dat je: coördineert en bijdraagt aan het verzamelen, combineren en analyseren van gegevens uit inbeslaggenomen apparatuur, open bronnen, observaties en internettaps; deelneemt aan landelijke vakgroepen met betrekking tot innovatie, jurisprudentie en opsporingsmethodieken; de kwaliteit, uniformiteit en het werkproces bewaakt over de verschillende platforms; intermediair bent tussen de dieptespecialisten en de verschillende platforms/teams

Bekijk vacature »

Medior PHP Developer Laravel

Organisatie In 2015 hebben twee gedreven jonge ondernemers de handen ineen gestoken om de meest ideale IT werkplek te creëren. Dat is gelukt! Bijna 3 jaar later werken er 20 mensen waarvan 10 gedreven backenders. De sfeer binnen dit bedrijf is meer dan top. Zo kan je bestellen wat je wilt als je honger hebt. Wordt er gezamenlijk geluncht. Gaan ze jaarlijks naar conferenties als Laracon en kan je werken waar en wanneer je wilt. Wil je een keer in de avond werken? Geen probleem. Wil je een maand aan de andere kant van de wereld aan het zwembad liggen

Bekijk vacature »

Senior Rapid Custom Software Developers

Jouw rol Voor deze ‘leading edge’ technology practice zijn we op zoek naar Senior Rapid Custom Software Developers. Echte IT-freaks die de ontwikkelingen in het vakgebied nauwkeurig volgen en weten wat er speelt. Die kunnen werken op de grens van het onmogelijke en zo onze nationale en internationale klanten een beslissende voorsprong geven in hun markt. Je adviseert over innovatie en werkt mee aan de agile ontwikkeling en implementatie van state-of-the-art oplossingen, gebaseerd op .Net, Java en/of Mendix. Het gaat vaak om nieuwe technieken, veel eindgebruikers en complexe omgevingen, waarin de lat hoog ligt. Snelheid en topkwaliteit zijn bij deze

Bekijk vacature »

Senior PHP, Symfony Developer

Waar kom je terecht? In deze gezellige Delftse organisatie slaan zij de brug tussen makelend Nederland en online marketing. Je komt binnen in een grote open ruimte dat er uit ziet als een soort glazen bunker (hoe vet is dat)! Samen met diverse jonge en informele collega’s zorgen zij er dagelijks voor dat elke dag, weer een gezellige dag wordt waarin zowel hard gewerkt als veel gelachen wordt. Met ruim 10 jaar ervaring in het ontwikkelen van online marketing producten voor de makelaardij, laten ze zien dat ze het makelaarsvak begrijpen, zowel een kopers- als een verkopersmarkt. Omdat de online

Bekijk vacature »

Senior Architect

Wil jij een sleutelrol spelen in het optimaliseren van de samenhang tussen infrastructuur en applicaties zodat onze klanten op een betrouwbare manier hun dienstverlening kunnen aanbieden? Ben jij een doortastende verbinder die het verschil weet te maken voor onze klanten binnen de logistieke sector? CGI heeft een vacature voor de functie van Senior Architect Fulltime Wat ga je doen als Architect? Als Senior Architect ontwerp en creëer je creatieve, klantgerichte, technische oplossingen op basis van de klantvraag. Je bekijkt de probleemstelling steeds vanuit een organisatie brede optiek. Daarnaast wend je jouw invloed aan om de opdrachtgever te overtuigen van de

Bekijk vacature »

Junior / Medior PHP developer Leiden

Organisatie Je komt binnen in een prachtig pand op steenworp afstand van het station in Leiden. Dit full service internetbedrijf bestaat sinds 1989 en bouwt vanaf dag 1 al innovatieve oplossingen van hoge kwaliteit op het gebied van ICT. Samen met een team van felxibele en oplossingsgerichte professionals spannen zij zich dagelijks in voor hun klanten. Er wordt hier gebouwd aan krachtige websites, innovatieve apps, CMS systemen, communities, e-commerce, e-mail marketing en software voor zowel grote en kleinere organisaties. Ze beschikken over hun eigen hostingomgeving, zodat de klant zijn website of software altijd online beschikbaar is! Zij zijn een kleine

Bekijk vacature »

Junior PHP Developer

Organisatie Het bedrijf zelf is nu 12 jaar geleden ontstaan met als doel alles wat de ondernemer kan bedenken op technisch vlak te kunnen maken. Dat is gelukt en nog veel meer! Inmiddels zijn ze gegroeid tot een team van 40 mensen die elke dag hard werken maar zeker ook plezier hebben met elkaar. De klanten die dit bedrijf heeft varieert sterk. Zo kan de gemiddelde MKB’er klant worden maar hebben ze bijvoorbeeld ook maatwerkapplicatie’s gebouwd voor bekendere multinationals. Dit bedrijf is zowel nationaal als internationaal actief! Functie Je komt te werken op de IT afdeling die is verdeeld in

Bekijk vacature »

Junior PHP Developer

Organisatie Dit bedrijf is sinds 2014 actief om alles voor studenten makkelijker te maken. Ze zijn inmiddels uitgegroeid tot een bedrijf waar 50 mensen er dagelijks alles aan doen om er voor te zorgen dat deze applicatie een succes wordt. Dat lukt ook nog eens! Op dit moment zijn ze zelfs aan het uitbreiden naar Groot-Brittannië en Scandinavië. Binnen het bedrijf hangt een informele, speelse sfeer. Maar er moet ook hard gewerkt worden en dat gebeurt zeker. Zonder al het harde werken was het succes wat ze op dit moment hebben niet behaald en ze willen alleen maar verder gaan.

Bekijk vacature »

Senior back-end ASP.NET C# developer

Organisatie Voor een van mijn businesspartners uit de omgeving van Wageningen ben ik op zoek naar een senior back-end ASP.NET C# developer. Deze organisatie is marktleider op het gebied van software voor de automotive industrie. Zij maken software ter bevordering van de rittenregistratie en wagenparkadministratie voor leasemaatschappijen. Het bedrijf is circa 60 man groot waarvan 9 software developers. Naast de development afdeling heb je een creative-afdeling, een salesafdeling en een supportafdeling. De organisatie bestaat bijna 20 jaar en is nog altijd groeiende. De medewerkers zijn er loyaal en staan allen achter de ambitie die het bedrijf heeft. De sfeer is

Bekijk vacature »

Medior/Senior PHP Developer

Organisatie Dit bedrijf bestaat nu sinds 2013 en is sindsdien uitgegroeid tot een van de grootste tools voor webshops om hun bestellingen mee te verzenden. Op dit moment zijn er twaalf werknemers actief verdeeld over development, sales/marketing en administratie. Waar ze voorheen de groei lieten verwezenlijken door de salesafdeling hebben ze het nu compleet omgegooid. In plaats van sales te leiden is het nu de IT die bepaalt welke koers het bedrijf gaat varen. Binnen het bedrijf hangt een informele sfeer waar iedereen goed samenwerkt aan een gezamenlijk doel namelijk: “Verzenden makkelijker maken, voor iedereen!” Functie Je komt te werken

Bekijk vacature »
Jop B

Jop B

12/04/2019 00:08:14
Quote Anchor link
Ik heb mijn database als volgt ingedeeld:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
ID-DAY-STARTTIME-ENDTIME-DATE-TYPE

1-maandag-gesloten-NULL-NULL-regular
2-dinsdag-10:00-18:30-NULL-regular
3-woensdag-10:00-18:30-NULL-regular
4-donderdag-10:00-18:30-NULL-regular
5-vrijdag-10:00-18:30-NULL-regular
6-zaterdag-10:00-18:00-NULL-regular
7-zondag-gesloten-NULL-NULL-regular

8-vrijdag-11:00-14:00-2019/04/12-exception
9-zondag-12:00-18:00-2019/04/14-exception
etc

Als ik nu een query maak laad hij alles onder elkaar. Maar als ik voor deze week een uitzondering heb zoals de zondag, hoe kan deze dan overschrijven?

Output nu:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
maandag gesloten
dinsdag 10:00 - 18:30
woensdag 10:00 - 18:30
donderdag 10:00 - 18:30
vrijdag 10:00 - 18:30
zaterdag 10:00 - 18:00
zondag gesloten
vrijdag 11:00 - 14:00
zondag 12:00 - 18:00


Output zoals het zou moeten:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
maandag gesloten
dinsdag 10:00 - 18:30
woensdag 10:00 - 18:30
donderdag 10:00 - 18:30
vrijdag 11:00 - 14:00
zaterdag 10:00 - 18:00
zondag 12:00 - 18:00


Hoe kan ik dit het makkelijkste aanpakken?
 
PHP hulp

PHP hulp

22/04/2019 23:09:25
Honeypot
 
Rob Doemaarwat

Rob Doemaarwat

12/04/2019 10:49:06
Quote Anchor link
Wat is "deze week"? Is dat de huidige week van maandag t/m zondag; vanaf vandaag en dan 7 dagen verder; of wil je die als parameter op kunnen geven ("week 20").

Sowieso zou ik voor TYPE een int of een char(1) nemen (0/null/"r" = regular, 1/"x" = exception).

Waarom je STARTTIME en ENDTIME nog als twee aparte waarden opslaan als het toch geen echte tijden zijn (maar platte tekst). Kun je er net zo goed een enkele string van maken (zoals bij "gesloten" toch al gebeurt).

Moet het perse allemaal in een query, of mag het ook met een stukje PHP (het is hier tenslotten *PHPhulp* hè). Dat laatste is wel het makkelijkst: eerst de regular tijden ophalen (en sorteren op ID, alhoewel een aparte kolom voor de volgorde netter zou zijn), en dan voor "de week" kijken of er uitzonderingen zijn.
 
Adoptive Solution

Adoptive Solution

12/04/2019 13:18:10
Quote Anchor link
Hier een oplossing.
Aanpassen naar smaak.
veldnaam type is tinyint(1 of 0) en de tijdvelden zijn time.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
SELECT *, if( starttime > 0, if(type = 0 ,'Afwijkende openingstijden', 'Open'), 'Gesloten' ) as 'opm'
FROM shophours
WHERE
    ( starttime > 0 AND type = 1 ) OR
    ( starttime = 0 AND type = 1 AND `day` IN( 'Maandag','Zondag' ) )
ORDER BY FIELD( `day`, 'Maandag', 'Dinsdag', 'Woensdag', 'Donderdag', 'Vrijdag', 'Zaterdag', 'Zondag' )
LIMIT 50;

SELECT *, if( starttime > 0, if(type = 0 ,'Afwijkende openingstijden', 'Open'), 'gesloten') as 'opm'
FROM shophours
WHERE
    ( starttime > 0 AND type = 1 ) OR
    ( starttime = 0 AND type = 1 AND `day` = 'Maandag' ) OR
    ( `date` = '2019-04-14' )
ORDER BY FIELD( `day`, 'Maandag', 'Dinsdag', 'Woensdag', 'Donderdag', 'Vrijdag', 'Zaterdag', 'Zondag' )
LIMIT 50;

SELECT *, if( starttime > 0, if(type = 0 ,'Afwijkende openingstijden', 'Open'), 'Gesloten' ) as 'opm'
FROM shophours
WHERE
    ( starttime > 0 AND type = 1 AND `date` = 0 AND `day` <> 'Vrijdag' ) OR
    ( starttime = 0 AND type = 1 AND `day` IN( 'Maandag', 'Zondag' ) ) OR
    ( starttime = 0 AND type = 1 AND `day` = 'Maandag' ) OR
    ( `date` = '2019-04-12' )
ORDER BY FIELD( `day`, 'Maandag', 'Dinsdag', 'Woensdag', 'Donderdag', 'Vrijdag', 'Zaterdag', 'Zondag' )
LIMIT 50;
 
Jop B

Jop B

12/04/2019 13:26:41
Quote Anchor link
Hallo Rob,

De velden start en end time Kan door de gebruiker worden ingevuld in het administratie dashboard. De vaste dagen staan al vast in de tabel dat zijn de ID's 1 t/m 7.

Daarnaast kan de gebruiker ook een datum invullen met de tijden die dan gelden. En deze moeten dan overschreven worden voor die week waarin de datum valt.
De week mag inclusief vandaag 7 dagen hebben zoals in mijn eerste post aangegeven.

Als dit met php makkelijk is of beter is dan mag dit natuurlijk in PHP zijn :)
 
Adoptive Solution

Adoptive Solution

12/04/2019 14:40:33
Quote Anchor link
Je aanvullende info is irrelevant.
Het gaat niet om wie wat invult, maar om wat er in de database zit en hoe je dat eruit haalt.
Ik heb 3 voorbeelden gegeven op basis van je gegegevens.
 
Rob Doemaarwat

Rob Doemaarwat

12/04/2019 15:17:08
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
function get_all_records($sql){
  global $conn;

  $query = $conn->query($sql);
  $result = [];
  while($row = $result->fetch_assoc()) $result[array_shift($row)] = $row;
  return $result;
}

$sql = "select SH.DAY,SH.STARTTIME,SH.ENDTIME from SHOPHOURS SH where SH.TYPE = ";
$shop_hours = array_merge(
  get_all_records($sql . "0 order by SH.ID"),
  get_all_records($sql . "1 and YEARWEEK(`DATE`) = '201915'")
);

Levert een array $shop_hours met als key de DAY van de week (in de juiste volgorde), en in de value een array met START- en ENDTIME.
 
Jop B

Jop B

12/04/2019 22:53:21
Quote Anchor link
@Adoptive Solution @Rob,

Thanks ik ga hier mee aan de slag :)

@Rob
"als het toch geen echte tijden zijn (maar platte tekst)" hoe zou jij de tijden dan opslaan met strtotime?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$endtime
= date('H:i:s', strtotime('16:30'));
?>

Ik heb de start en de eindtijd apart zodat je nog eventueel een functie kan maken met bijvoorbeeld sluit over 15 minuten.
Gewijzigd op 12/04/2019 22:56:52 door Jop B
 
Rob Doemaarwat

Rob Doemaarwat

12/04/2019 23:02:03
Quote Anchor link
Als een TIME of gewoon als een INT (seconden na middernacht). Dan kun je d'r inderdaad echt mee rekenen.
 
Jop B

Jop B

13/04/2019 00:19:32
Quote Anchor link
Heb het nu als volgt

INDELING TABEL
id [int(11) ai]
day [varchar(255)]
starttime [time]
endtime[time]
date [date]
type [int(1)] (0 = regulier) (1 = afwijkend)

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
$conn
= new mysqli($dbhost, $dbusername, $dbpassword, $dbname);

if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

echo "Connected successfully";

function
get_all_records($sql){
  global $conn;

  $result = $conn->query($sql);
  $result = [];
  while($row = $result->fetch_assoc()) $result[array_shift($row)] = $row;
  return $result;
}


$sql = "SELECT day, starttime, endtime FROM schedule WHERE type = ";
$shop_hours = array_merge(
  get_all_records($sql . "0 ORDER BY id"),
  get_all_records($sql . "1 and YEARWEEK('DATE') = '201915'")
);

echo $shop_hours;
?>


Het enigste wat ik nu terug krijg is de connection succesfully
Gewijzigd op 13/04/2019 00:19:45 door Jop B
 
Rob Doemaarwat

Rob Doemaarwat

13/04/2019 09:00:13
Quote Anchor link
$shop_hours is een array, die zul je dus met var_dump($shop_hours) of print_r($shop_hours) moeten tonen.
 
Thomas van den Heuvel

Thomas van den Heuvel

13/04/2019 15:14:59
Quote Anchor link
De vraag is ook, hoe vaak treden er uitzonderingen op, en hoeveel moeite wil je qua (programmeer- en) invulwerk doen.

Als je dit vraagstuk van een afstandje bekijkt dan heb je in principe een soort van roostersjabloon (zij het abstract) dat meestal wel klopt. Vervolgens vertaal je dit naar een (concreet) weekrooster. Wat je dus ook zou kunnen doen is voor dit laatste een (wederom concrete) tabel introduceren. Het sjabloon zou je dan als aardappelstempel kunnen gebruiken voor het invullen van een weekrooster waarbij je een weeknummer of iets dergelijks toevoegt.

Bijkomend voordeel (als dit interessant is of kan zijn voor statistiek) is dat je een history opbouwt van wanneer het filiaal concreet open was. En over filiaal gesproken, dit kun je dus nog verder uitbreiden naar een variant waarbij verschillende filialen (ten opzichte van elkaar) afwijkende openingstijden hebben.

Op deze manier heb je een redelijk generiek stuk software wat ook vaker inzetbaar zou kunnen zijn.

Vaak is men op deze site (vrijwel alleen) met specifieke implementaties bezig. Daar is in principe niks mis mee en die zijn vaak ook prima voor wat er moet gebeuren en wellicht nog belangrijker, de aanpak wordt ook onderbouwd, maar dit zou je er niet van moeten weerhouden om gewoon eens wat op een blaadje te kliederen of wat te mijmeren over wat er nu concreet zou moeten gebeuren. Dat is nog altijd minder werk dan code kloppen en wellicht levert dat nieuwe ideeën en/of perspectieven op.
 
Jop B

Jop B

13/04/2019 19:38:51
Quote Anchor link
@rob,

Ik heb regel 6 aangepast
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
while($row = $query->fetch_assoc()) $result[array_shift($row)] = $row;


Nu krijg ik de array terug

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
Array (
    [maandag]     => Array ( [starttime] => 10:00:00 [endtime] => 18:30:00 )
    [dinsdag]     => Array ( [starttime] => 10:00:00 [endtime] => 18:00:00 )
    [woensdag]    => Array ( [starttime] => 10:00:00 [endtime] => 18:30:00 )
    [donderdag]   => Array ( [starttime] => 10:00:00 [endtime] => 18:30:00 )
    [vrijdag]     => Array ( [starttime] => 10:00:00 [endtime] => 22:00:00 )
    [zaterdag]    => Array ( [starttime] => 10:00:00 [endtime] => 18:00:00 )
    [zondag]      => Array ( [starttime] => 12:00:00 [endtime] => 18:00:00 )
)
Gewijzigd op 13/04/2019 19:40:12 door Jop B
 
Rob Doemaarwat

Rob Doemaarwat

13/04/2019 20:00:26
Quote Anchor link
** garantie tot de deur **
 
Bryan De Baar

Bryan De Baar

14/04/2019 22:58:58
Quote Anchor link
Kun je bijvoorbeeld ook sorteren op
[zondag] = vandaag
[maandag]
[dinsdag]
[woensdag]
[donderdag]
[vrijdag]
[zaterdag]


[maandag] = vandaag
[dinsdag]
[woensdag]
[donderdag]
[vrijdag]
[zaterdag]
[zondag]

[dinsdag] = vandaag
[woensdag]
[donderdag]
[vrijdag]
[zaterdag]
[zondag]
[maandag]

Dat het steeds een dag opschuift? Of kun je dan met PHP een een switch day maken en dan per dag een output geven?
 
Rob Doemaarwat

Rob Doemaarwat

15/04/2019 07:13:16
Quote Anchor link
Ipv "order by ID" doe je dan "order by mod(ID + 7 - " . date('N') . ",7)" (mod() = modulo functie). Voor de woensdag bijvoorbeeld (ID = 3, date('N') = 3) wordt het dan:
maandag: mod(1+7-3,7) = 5
dinsdag: mod(2+7-3,7) = 6
woensdag: mod(3+7-3,7) = 0
donderdag: mod(4+7-3,7) = 1
vrijdag: mod(5+7-3,7) = 2
zaterdag: mod(6+7-3,7) = 3
zondag: mod(7+7-3,7) = 4
Als je dus op deze waarde sorteer komt het netjes in de volgorde woensdag ("vandaag") t/m dinsdag.
 
Thomas van den Heuvel

Thomas van den Heuvel

15/04/2019 16:21:27
Quote Anchor link
Dit zou je in de database kunnen doen, maar zou je ook in PHP op eenzelfde wijze op kunnen oplossen. Je hoeft niet per se alles in de query te regelen.

In eerste instantie is het zaak dat de query alle benodigde gegevens ophaalt, liefst in een zo kant-en-klaar mogelijk formaat. Stel dat je later de indelingsweergave van het rooster weer wilt veranderen, als je alle logica in je query stopt zul je dan je SQL-code moeten veranderen. Ik denk dat het aanpassen van PHP-code om data wat anders weer te geven makkelijker is dan een complete query omschrijven.

Begrijp mij niet verkeerd, de ene aanpak is niet beter of slechter dan de ander, maar ik zou gaan voor een strategie waarbij alles zo simpel mogelijk blijft en ik denk dat een soort van gespreide aanpak je hiermee kan helpen.
 
Bryan De Baar

Bryan De Baar

18/04/2019 19:51:03
Quote Anchor link
Wat @Rob schreef werkt prima :)
@thomas,

Wat jij bedoeld is alle data wat in de tabel zit laden in een array en vervolgens mij PHP het gaan sorteren hoe en welke data je wilt laten zien?
Natuurlijk zijn openingstijden klein qua data maar als je nu een hoop data moet laden en dan nog met PHPmoet gaan sorteren is het dan niet sneller om dit al gelijk in de SQL query te doen?
 
Rob Doemaarwat

Rob Doemaarwat

18/04/2019 20:20:07
Quote Anchor link
Mwa ... als er geen index op zit (op de kolom/manier waarop je gaat sorteren, zoals hier ivm gebruik van een functie) gaat MySQL vaak meteen met een tijdelijke tabel aan de slag (= gedoe op disk), ook bij kleine hoeveelheden data. Sorteren in PHP gaat in memory, dus vele malen efficiënter (voor kleine hoeveelheden data!). Maar desalniettemin ga je het verschil nauwelijks merken (wederom: bij kleine hoeveelheden data).

Zelf zou ik hier gewoon voor het gemak gaan dat je alles in 1x kant-en-klaar hebt. Daarnaast kun je dit soort dingen natuurlijk prima cachen.
Gewijzigd op 18/04/2019 20:21:15 door Rob Doemaarwat
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.