Jeg er ved at lave julekalender man skal jo være klar til det sker :-)
men så er problemet kan ikke lige se hvordan jeg skal lave en kode der går ind i min mysql og tjekker dato i jul_kalender og hvis der står den 01-12-2006 og det er den 01-12-2006 skal man så kunne komme ind på siden ellers skulle man ikke kunne trykke på den. og hvis det er den 03-12-2006 skulle man os kunne komme ind på 01-12-2006 :-)
Ok, hvis det skal forstås sådan at du har en tabel med 24 rækker ... en for hver dag i julekalenderen. Hver række har et datofelt som angiver hvilken dag løgen kan åbnes, og et felt med "indholdet" af lågen (et link?).
Så kan man nemt udtrække den åbne ler med denne SQL:
$sql = "SELECT laage FROM julekalender WHERE laageDato <= Now()"
$sql = "SELECT laage FROM julekalender WHERE laageDato <= Now()";
- eller:
$sql = "SELECT laage FROM julekalender WHERE laageDato <= curdate()";
- får du præcist de åbne låger, og intet andet, fra din kalender-tabel. Jeg synes da ikke at det kan være meget simplere end det.
Og så foregår det på serveren, hvilket gør at brugerene ikke kan smugkigge i lågerne.
Du kan godt holde fast på din JS-løsning, men så vil jeg foreslå at du ikke laver den som JavaScript, men som PHP-kode i stedet for. En sådan løsning vil også beskytte imod smugkiggeri.
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /customers/mr-xmas.dk/mr-xmas.dk/httpd.www/2006/dag.php on line 13 den skriver fejl det er while linien :)
altså jeg skal have lavet så at den ikke kan ånne siden hvis vi ikk har haft den dato endnu.. håber du forstår :) og så skal det være så man kan skrive dag.php?laage=1 og det = den 1 december :D
Du skal være opmærksom på at engelsk dato-format er på formen MM-DD-YYYY, så hvis dit felt er et datetime-felt, så kan det godt være at den fortolker "01122006" som "12 januar 2006" i stedet for "1 december 2006". Det ville i hvert fald forklare hvorfor at du får udtrukket denne låge.
Jeg fortrækker at bruge dette site som hjælp til selvhjælp. Hvis du ikke selv eksperimentere lidt, lære du jo trods alt ikke noget...
Well, here goes. Hvis du skal trække en bestemt låge ud af din tabel
I 14/11-2006 23:09:39 beskriver du dit link som:
dag.php?laage=1
Hvis man klikker på dette skal låge nr 1 åbnes, dvs. den for 1 december. Dette ville notmalt se nogenlunde sådan her ud:
<? $dag = $_GET["laage"]; if (!is_int($dag)) $dag=1; // Sikring imod SQL-injection.
$sql = "SELECT laage FROM jul_kalender WHERE day(laageDato)=$dag AND month(laageDato)=12 AND year(laageDato)=2006"; $result = mysql_query($sql) or die(mysql_error());
Hvordan ser din kode ud? Får du fejl? Får du noget andet end hvad du forventede? Andre oplysninger du kna give mig, sådan at jeg har en chance for at assistere?
$sql = "SELECT laage FROM jul_kalender WHERE laageDato <= curdate()"; $result = mysql_query($sql) or die(mysql_error()); while ($row = mysql_fetch_assoc($result)) { echo $row["laage"]; } ?>
Skriver You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '(laageDato)=1 AND month(laageDato)=12 AND year(laageDato)=2006'
Tja, det er da heller ikke der fejlbeskeden kommer fra. Men den kommer altså bare ikke fra det kode du har postet i 23/11-2006 23:00:03 - det kan den simpelthen ikke.
Men, du skulle jo alligevel heller ikke bruge din kode fra 23/11-2006 23:00:03 til noget. Slet den, og erstat den med det jeg postede i 21/11-2006 21:35:14. Og lav så den rettelse som jeg foreslår i samme post.
Hvis den skal nå at komme i luften inden 1. december, så haster det da vist lidt...
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.