Ik word gek van datum

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ventilatiesysteem Productontwikkelaar HBO WO Verwa

Samengevat: Zij bieden flexibele ventilatiematerialen, geluidsdempers, rookgasafvoer producten en industrieslangen. Ben jij een technisch productontwikkelaar? Heb jij ervaring met het ontwikkelen van nieuwe producten? Vaste baan: Technisch Productontwikkelaar HBO WO €3.000 - €4.000 Zij bieden een variëteit aan flexibele ventilatiematerialen, geluiddempers, rookgasafvoer producten, industrieslangen en ventilatieslangen voor de scheepsbouw. Met slimme en innovatieve materialen zorgen wij voor een gezonde en frisse leefomgeving. Deze werkgever is een organisatie die volop in ontwikkeling is met hardwerkende collega's. Dit geeft goede ontwikkelingsmogelijkheden. De branche van dit bedrijf is Techniek en Engineering. Functie: Voor de vacature als Technisch Productontwikkelaar Ede Gld HBO WO ga

Bekijk vacature »

Sander Z

Sander Z

03/04/2007 22:00:00
Quote Anchor link
Hello!
Ik heb een DB waarin allerlei waardes staan waaronder ook een datum.
In de database staat voor het veld waarin ik de datum opgeef ook als datum. Dus dat kan sowieso het probleem niet zijn. Als ik nu iets wil toevoegen aan mijn db moet ik het als zo opgeven "2007-04-29". Irritant maar daar kan ik nog goed mee leven. Alleen als ik nu een selectie maak uit de db en ik laat van een gekozen "row" ook de datum weergeven dan komt ie natuurlijk als "2007-04-29" te staan. En dat wil ik dus niet!
Nu heb ik al de arrays gebouwd met dagnamen en maandnamen maar ik weet niet hoe ik met mijn datum moet werken. Alles wat ik heb geprobeerd werkte namlijk niet!
Hoe kan ik nu van mijn datum uit de db bv de dag vd week "trekken". Als dat lukt kan ik zelf wel weer de juiste benaming uit de array "trekken".
Ik zie door de bomen het bos niet meer...
Wie kan mij een handje helpen?
Gewijzigd op 01/01/1970 01:00:00 door Sander Z
 
PHP hulp

PHP hulp

20/11/2024 18:25:30
 
Stefan van Iwaarden

Stefan van Iwaarden

03/04/2007 22:02:00
Quote Anchor link
probeer eens de functie DAYOFWEEK(datum), deze functie geeft je de dag van de week automatisch al terug, heb je dus niks geen array meer nodig.
Gewijzigd op 01/01/1970 01:00:00 door Stefan van Iwaarden
 
Frank -

Frank -

03/04/2007 22:08:00
Quote Anchor link
Wat is er zo irritant aan om de database juiste datums op te geven? De database gebruikt een ISO-formaat, dat is wel zo duidelijk. Wanneer ik jou de datum 03-04-2007 opgeef, waar heb ik het dan over? 3 april of 4 maart? In Nederland wordt daar 3 april mee bedoelt, maar in de VS (en daar heb ik dagelijk mee te maken) is dat toch echt 4 maart. Kortom, gebruik een standaard, bv. ISO.

Vrijwel iedere database heeft een ruime collectie functies om wat met delen van de datum te doen, de boel op te maken voor presentatie, mee te rekenen, etc. etc.

Maar ga s.v.p. niet huilen dat jij niet snapt wat een standaard is, daar heb je niets aan.

Ps. Schrijf gewoon even een functie die het formaat dd-mm-yyyy als input accepteert en yyyy-mm-dd als output oplevert. Dat kun je dan zonder enig probleem in de database stoppen. In PostgreSQL kun je dat gewoon in PL/pgSQL doen, hoef jij je daar in PHP helemaal niet meer mee bezig te houden.
 
Baarr

Baarr

03/04/2007 22:12:00
Quote Anchor link
Precies, de meeste mensen weten niet hoe uitgebreid de mogelijkheden van datums/data in databases zijn. Veelal veel geavanceerder dan de programmeer taal. Het kan uiteraard ook met de programmeertaal, als dat je voorkeur is. Maar dan moet je het wel zo doen (ja frank, ik weet het, direct uit de db is beter).

SELECT UNIX_TIMESTAMP(datum) blalalalbal

echo strtime('%a', $row['datum'];

of

echo strtime('%A', $row['datum'];

etc etc

Edit: frank was me alweer voor :P
Gewijzigd op 01/01/1970 01:00:00 door Baarr
 
Robert Deiman

Robert Deiman

03/04/2007 22:17:00
Quote Anchor link
Waarom dan niet de date format gebriuken van MySQL. :) Werkt op zich ook prima, maar Dayofweek is gemakkelijk te gebruiken icm een array waarin je de namen van de dagen van de week hebt staan.
 
Baarr

Baarr

03/04/2007 22:20:00
 
Robert Deiman

Robert Deiman

03/04/2007 22:22:00
Quote Anchor link
Baarr schreef op 03.04.2007 22:20:


Niet helemaal, op die pagina staan meerdere mogelijkheden om hetzelfde te bereiken :P Maar je hebt gelijk,het meeste (zo niet alles) aan mogelijkheden met een date veld zijn hier wel omschreven.
 
Baarr

Baarr

03/04/2007 22:25:00
Quote Anchor link
Er moet meer ge RTFM'd worden :P
 
Frank -

Frank -

03/04/2007 22:26:00
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
15
16
SELECT
    CONCAT(
        ELT(DAYOFWEEK(datum),
            'zondag', 'maandag', 'dindsag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'
        ),
        ' ',
        DAYOFMONTH(datum),
        ' ',
        ELT(MONTH(datum),
               'januari', 'februari', 'maart', 'april', 'mei', 'juni', 'juli', 'augustus', 'september', 'oktober', 'november', 'december'
        ),
        ' ',
        YEAR(datum)
    ) AS newDate
FROM
    tabelnaam

Voorbeeldje in SQL met ELT().

Ik moet overigens wel eerlijk bekennen dat ik hier weer van ben afgestapt en PHP de boel weer laat oplossen... Ik gebruik setlocale() en gebruik de instellingen van de browser als input om de taal e.d. te bepalen. Default is uiteraard ook ingesteld.

Voortschrijdend inzicht zal ik maar zeggen. (werk met multi-language-sites)
 
Sander Z

Sander Z

03/04/2007 22:28:00
Quote Anchor link
Misschien zie ik het verkeerd maar het gaat mij dus absoluut niet om hoe ik de datum ingeef in de db.

Ik maak een bepaalde selectie uit mijn database waarbij bv het veld "bedrag" gelijk is aan "50". Hieruit komen dan meerdere items rollen.
Deze ga ik dan weergeven met de while functie en hierbij laat ik dus ook gelijk andere waardes uit de betreffende row zien.
Ook de datum dus. Alleen zie ik deze als "2007-04-16". En ik wil deze weergeven als bv. "Vrijdag 16 april 2007".

Mijn vraag is hoe kan ik nu bv de dag van de week uit deze datum "trekken"?
Dat zou dus iets moeten zijn met $row['datum'] etc...

Hier kom ik niet uit...
 
Frank -

Frank -

03/04/2007 22:30:00
Quote Anchor link
Quote:
En ik wil deze weergeven als bv. "Vrijdag 16 april 2007".
Zie mijn reactie van 22:26, een kant-en-klare query die al het werk voor je doet, inclusief de dag van de week.
 
Sander Z

Sander Z

03/04/2007 23:08:00
Quote Anchor link
Ok ik maak nu dus eerst een selectie uit de db. Dan maak ik in de while weer een selectie (op de manier van frank aangegeven op 22:26) uit de db waar id gelijk is aan $row['id'].
Met als resultaat inderdaad de datum op de juiste manier zoals ik wil weergegeven!

Weet niet of het op een betere, slimmere of wat voor manier dan ook kan maar het werkt in ieder geval!

Allen dank!!!
 



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.