Mr. Hermonella Skrevet 13. desember 2020 Del Skrevet 13. desember 2020 Hei! Jeg holder på med ett web prosjekt, og har kommet til ett punk hvor jeg ikke helt vet hvordan jeg skal ta det videre. Jeg er relativ ny i web utvikling, og må google det meste, så beklager viss dette er lett 😇 For å ta det kort fortalt: Jeg har ett skjema hvor en opplaster kan sette en dato, denne datoen er enten en nøyaktig dato, en estimert dato (for eks. "1890'tallet"), eller en ukjent dato. Hvordan skal jeg gå frem med selve programmeringen av dette? Info som trengs for å hjelpe: (spør viss det trengs mer) Prosjektet er skrevet i html, javascript, php. Skjemaet blir lastet opp i en SQL database Opplasteren skriver inn dato i ett skjema (det er selvsagt flere ting i skjemaet, men det har jeg styring på) Datoen skal brukes til å filtrere data (det å kunne se ting fra dato 1981 til 2003 for eks.) Som sagt så må dato kunne være estimert, samtidig som den må kunne være nøyaktig, eller totalt ukjent. Tror denne posten ble forståelig. Si ifra viss noe ikke ble forstått, så utdyper jeg mer Lenke til kommentar
Håvard Skrevet 22. desember 2020 Del Skrevet 22. desember 2020 Jeg regner med at brukeren som legger inn datoen også legger inn om det er et estimat, ukjent eller nøyaktig dato. I såfall kan jo dette lagres i databasen i tillegg til datoen. Dette kan f.eks lagres som en int, 0 = kjent dato, 1 = estimat og 2 = ukjent dato. Når du skal vise dataene kan du jo se på denne, og presentere datoen avhengig av det. Gav det mening? Lenke til kommentar
Mr. Hermonella Skrevet 5. januar 2021 Forfatter Del Skrevet 5. januar 2021 Har funnet en løsning på dette. Den har ikke blitt aktivt brukt i sortering ennå, men det virker som den kan brukes. Det jeg endte med å gjøre var å lage 4 felt, som fylles ut av brukeren slik: Dette blir sent til ett Form, hvor alt ukjent til satt til "X". For eks. ett bilde tatt i februar 2012 blir til: Dato RAW: Hundre: 20 Tiår: 1 Årstall: 2 Måned: 02 Dag: (alt av "X" er er fjernet av saniteringen i PHP importeringen) Dette blir da satt sammen til ett tall, i dette eksempelet: 201202 Dette regner jeg med holder til fremtidig bruk, men vet aldri. Legger ved koden (som er laget av en n0ob), så dere er fri til å bruke denne: //Dato Formatering: $hundre = filter_var($_POST["year1"], FILTER_SANITIZE_NUMBER_FLOAT); $tiaar = filter_var($_POST["year2"], FILTER_SANITIZE_NUMBER_FLOAT); $aarstall = filter_var($_POST["year3"], FILTER_SANITIZE_NUMBER_FLOAT); $maaned = filter_var($_POST["month"], FILTER_SANITIZE_NUMBER_FLOAT); $dag = filter_var($_POST["day"], FILTER_SANITIZE_NUMBER_FLOAT); if ($aarstall <= 10){ $tiaar = substr($tiaar, 0, -1); } echo "</br> Dato RAW: </br>" . "Hundre: " . $hundre . "</br> Tiår: " . $tiaar . "</br> Årstall: " . $aarstall . "</br>Måned: " . $maaned . "</br> Dag: " . $dag . "</br>"; $formatertDato = $hundre . $tiaar . $aarstall . $maaned . $dag; echo "dato: " . $formatertDato; echo "</br> dato i dag: " . date("Ymd"); if ($formatertDato > date("Ymd")){ echo "</br> Morsom du, laster opp bilder fra fremtiden? </br>"; }else { $date = $formatertDato; } <section id="datoFelt"> <div class="tooltip">Velg dato så godt du kan<span class="tooltiptext">Velg datoen så presist som mulig.</br>Viss du ikke vet for eks. måned bildet er tatt velger du </br>kun Ukjent i dette feltet. </span></div> </div> <div id="datoSelect"> <section> <p>Århundre</p> <select id="year1" class="select-css" name="year1"> <option value="20">2000</option> <option value="19">1900</option> <option value="18">1800</option> <option value="17">1700</option> </select> </section> <hr class="dividerSolid"></hr> <section> <p>Tiår</p> <select id="year2" class="select-css" name="year2"> <option value="xx">Ukjent</option> <option value="00">00</option> <option value="10">10</option> <option value="20">20</option> <option value="30">30</option> <option value="40">40</option> <option value="50">50</option> <option value="60">60</option> <option value="70">70</option> <option value="80">80</option> <option value="90">90</option> </select> </section> <hr class="dividerSolid"></hr> <section> <p>Årstall</p> <select id="year3" class="select-css" name="year3"> <option value="x">Ukjent</option> <option value="0">0</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> <option value="7">7</option> <option value="8">8</option> <option value="9">9</option> </select> </section> <hr class="dividerSolid"></hr> <section> <p>Måned</p> <select id="month" class="select-css" name="month"> <option value="xx">Ukjent</option> <option value="01">Januar</option> <option value="02">Februar</option> <option value="03">Mars</option> <option value="04">April</option> <option value="05">Mai</option> <option value="06">Juni</option> <option value="07">Juli</option> <option value="08">August</option> <option value="09">September</option> <option value="10">Oktober</option> <option value="11">November</option> <option value="12">Desember</option> </select> </section> <hr class="dividerSolid"></hr> <section> <p>Dag</p> <select id="day" class="select-css" name="day"> </select> </div> </section> Lenke til kommentar
Ernie Skrevet 14. januar 2021 Del Skrevet 14. januar 2021 Uten å hverken ha satt meg så veldig inn i det her eller tenkt så alt for mye, så ville jeg forsøkt meg database-messig med en fra og til dato. Det vil gjøre ting utrolig enkelt å søke opp etterpå. Nøyaktig dato: Samme dato fra og til Det du kaller estimert dato: F.eks. 1890-tallet blir fra-dato=«første sekund i 1890» og til-dato=«siste sekund i 1890» Ukjent: Fra og til blir NULL Dette bør lagres som timestamp siden du da bare trenger å søkte med «SELECT * FROM table WHERE fra NOT NULL AND til NOT NULL AND fra >= dato AND til <= dato» Når du henter dataene ut igjen for redigering, så veit du det er Nøyaktig når fra==til Ukjent når fra og til er NULL ...og ellers er estimert dato Håper dette var til hjelp Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå