Det vil være ret smart at bruge databasens indbyggede dato-format, og ikke 01012013. Du bruger PHP, og derfor er det måske MySql - der vil det sådan ud 2013-01-01, og det format kan man søge på.
Der synes at være flere forskellige spørgsmål 'rullet op' i dette spørgsmål.
Et spørgsmål synes at være, hvordan man fra et php program i en databasetabel søger efter indhold mellem to datoer. Jeg fortsætter erikjacobsens tankegang og antager, at databasen er mysql og at datoen i tabellen har datotype date. Så ser tabellen måske således ud:
mytable id dato pris 1 2013-01-01 3000 2 2013-05-01 4000 3 2013-09-01 5000
Hvis du i mysql vil have prisen i mytable mellem datoen 1 januar 2013 og 31 marts 2013 kan du bruge denne query:
SELECT pris FROM mytable WHERE dato BETWEEN '2013-01-01' AND '2013-04-30'
Fra PHP definerer du to variabler, for eksempel $start = '2013-01-01' og $slut = '2013-03-31', og dit databasekald kan så være, for eksempel:
$sql = "SELECT pris FROM mytable WHERE dato BETWEEN '$start' AND '$slut'";
Men hvis du nummererer sæsonerne og du har en pris for hver sæson, så skal du ikke lade kunderne søge efter prisen mellem to datoer. Hvad hvis en kunde søger efter prisen mellem 1 februar og 1 oktober? Så går der rav i den. Det ville være bedre at lade kunden søge efter prisen for en sæson, for eksempel sæson 1. Du kan så i databasen lave en tabel `sæson` således:
Så giver du kunden muligheden for at vælge en sæson, for eksempel i en rulleliste, og du indfanger det valgte sæsonnummer i en variabel $sæson, og din query bliver:
$sql = "SELECT pris FROM sæson WHERE id = $sæsoN";
Meningen var, at #11 skulle have været et svar, men her kommer det.
Synes godt om
Ny brugerNybegynder
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.