Avatar billede c.h. Nybegynder
26. juli 2000 - 02:00 Der er 9 kommentarer og
2 løsninger

Dato i database?

Jeg skal lave et felt i en PostgreSQL database til at gemme dags dato i. Når jeg dernæst trækker det ud og skriver det i filen skal det være på den almindelige danske form, altså: 24-12-2000 og ikke 2000-12-24. Om der står 2000 eller 00 er ligemeget. Jeg har forsøgt at lave et felt af typen timestamp og gemme en variabel der er sat til time() i det - men får så en fejlmeddelelse om at det er ugyldigt. Hvordan gør jeg så?
Avatar billede sjensen Nybegynder
26. juli 2000 - 07:45 #1
Når du nævner timestamp og time() lyder det som om det er tidspunktet du taler om og ikke datoen. Har du prøvet med datestamp (hvis det findes) og med date() ?

Desuden skal du formentligt vende den dato der kommer ud af date() om til amerikansk format (yymmdd)

Men du kan måske bedre rette i databasen således at den accepterer danske dato formater. Normalt er database systemer opbygget således at de benytter det format der fremgår af datoindstillingerne (kontrolpanel, regionale) for det sprog/land der er valgt. Måske er det sat til english/US istedet for Dansk.

Prøv evt. at rette det og se om ikke formatet for datoerne i DB\'en bliver til normalt dansk, således at hhv. time() og date() virker korrekt.
Avatar billede c.h. Nybegynder
26. juli 2000 - 17:51 #2
For det første skal det lige med at min database ligger ude på nettet.
Dernæst at jeg har prøvet at ændre datoformatet til europæisk men jeg er ikke helt sikker på hvordan man gør - og det lykkedes da heller ikke.
Jeg har prøvet med date og date(), men resultatet fra databasen bliver på den forkerte måde - en mulighed er så at bytte rundt på tallene. Men jeg tror og håber at der findes en lettere måde og venter derfor med at afprøve denne mulighed.
Avatar billede Lasse Novice
26. juli 2000 - 20:20 #3
jeg har en PHP funktion der konverterer fra engelsk til dansk og vice versa... Noget af interesse?
Avatar billede c.h. Nybegynder
27. juli 2000 - 02:22 #4
gooky>> jeg valgte selv lige at prøve at se hvor svært det var at lave en funktion som konverterer, dog kun, fra engelsk til dansk. Det blev til nedenstående:

$tekst=\"2000-08-26\";
$udskriv = split(\"
  • \", $tekst);
$tekst = \"$udskriv[2]-$udskriv[1]-$udskriv[0]\";

Hvis du mener at din funktion er bedre - og det formoder jeg den er - så vel jeg da meget gerne se nærmere på den.
Avatar billede Lasse Novice
27. juli 2000 - 13:08 #5
ja, lidt bedre er den da, men det er noget af det samme.
function convertdate($dato) {
$dato=implode(\"-\",array_reverse(explode (\"-\", $dato)));
echo \"$dato\";}

Her, skriver den også datoen ud
Avatar billede razor Nybegynder
29. juli 2000 - 18:15 #6
Avatar billede c.h. Nybegynder
01. august 2000 - 15:11 #7

Avatar billede c.h. Nybegynder
01. august 2000 - 15:13 #8
Undskyld jeg har ligget lidt i sommerhi den sidste uges tid : )
gooky>> hvis du vil have 30 point så opret lige et svar, ellers får razor dem alle.
Avatar billede razor Nybegynder
01. august 2000 - 15:22 #9
du har nu 30 sekunder til at svare :o)
Avatar billede Lasse Novice
01. august 2000 - 21:27 #10
hej hej
Avatar billede c.h. Nybegynder
01. august 2000 - 23:57 #11
Selv hej hej - jeg vinder vist aldrig på hurtigheden : )
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester