Problem mit JavaScript Funktion (Parse, Date)
lima-city → Forum → Die eigene Homepage → HTML, CSS & Javascript
anfang
anzahl
bestimmter code
code
date
datei
datum
ende
file
folgenden code
funktion
http
leute
mache
millisekunde
moment
morgigen zeitpunkt
url
vergessen
versuchen
-
Hi Leute, ich versuche im Moment zu erreichen, dass ein bestimmter Code auf meiner Seite erst morgen um 13:00 benutzbar wird.
Bisher habe ich folgenden Code
var chaosmas_singletrack="http://www.downloadcounter.de/counter.pl?file=http://download.lima-city.de/infinitysounds/chaosmas%20Singletrack.zip&user=infinitysounds"; var chaosmas_multitrack="http://www.downloadcounter.de/counter.pl?file=http://download.lima-city.de/infinitysounds/Chaosmas%20Multitrack.zip&user=infinitysounds"; //Variablen enthalten die Links zu den Seiten var date1 = "Fri, 23 Dec 2011 13:00:00 GMT"; //enthält morgigen Zeitpunkt 13:00 var date2 = "Sun, 1 Jan 2010 00:00:00 GMT";//Kontrolldatum weit vor morgen var now = newDate(); var year = now.getFullYear(); var month = now.getMonth(); var day = now.getDate(); var hour = now.getHours(); var minutes = now.getMinutes(); var date_string = now.toGMTString(); var now_milli = now.getTime(); //verschiedene Datumsfunktionen, die letzte und erste ist relevant function show_link(link, datum) //es werden der aufzurufene Link und das Datum, zu welchem er nutzbar sein soll, übergeben { var convert_date = Date.parse(datum); //variable convert_date wird mit der anzahl der Millisekunden seit 1.1.1970 bis zum angegebenen datum assigned if(now_milli<date) //wenn die anzahl der millisekunden bis jetzt kleiner sind als die des datums { alert("Es ist noch nicht so weit"); //gib dies aus } if(now_milli>=date) location.href = link; //wenn die anzahl der millisekunden bis jetzt größer oder gleich denen des datums sind, öffne den Link else alert("ERROR"); // wenn beides nicht stimmt, gib error aus }
Und hier ist der code, wenn die Funktion aufgerufen wird
<a href="javascript:show_link(chaosmas_singletrack, date1)">Download Singletrackversion</a> <br> <br> <a href="javascript:show_link(chaosmas_multitrack, date2)">Download Multitrackversion</a>
Bei beiden öffnet sich ein alert mit ERROR
Was mache ich falsch? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Einmal ganz grundsätzlich: so etwas würde ich nicht mit JavaScript sondern mit PHP lösen, da sonst die Möglichkeit besteht das irgendjemand schon vorher die Datei herunterlädt.
-
hackyourlife schrieb:
Einmal ganz grundsätzlich: so etwas würde ich nicht mit JavaScript sondern mit PHP lösen, da sonst die Möglichkeit besteht das irgendjemand schon vorher die Datei herunterlädt.
Das ist nicht so schlimm ;)
Aber wenn es mal wichtig ist, mache ich es natürlich mit PHP
Nene, ich würde gerne ne Lösung haben... -
infinitysounds schrieb:
Hab ich natürlich auch:
Nene, ich würde gerne ne Lösung haben...<script type="text/javascript"><!-- //Variablen enthalten die Links zu den Seiten var chaosmas_singletrack="http://www.downloadcounter.de/counter.pl?file=http://download.lima-city.de/infinitysounds/chaosmas%20Singletrack.zip&user=infinitysounds"; var chaosmas_multitrack="http://www.downloadcounter.de/counter.pl?file=http://download.lima-city.de/infinitysounds/Chaosmas%20Multitrack.zip&user=infinitysounds"; var date1 = "Fri, 23 Dec 2011 13:00:00 GMT"; //enthält morgigen Zeitpunkt 13:00 var date2 = "Sun, 1 Jan 2010 00:00:00 GMT";//Kontrolldatum weit vor morgen var now = new Date(); var year = now.getFullYear(); var month = now.getMonth(); var day = now.getDate(); var hour = now.getHours(); var minutes = now.getMinutes(); var date_string = now.toGMTString(); var now_milli = now.getTime(); //verschiedene Datumsfunktionen, die letzte und erste ist relevant function show_link(link, datum) { //es werden der aufzurufene Link und das Datum, zu welchem er nutzbar sein soll, übergeben //variable convert_date wird mit der anzahl der Millisekunden seit 1.1.1970 bis zum angegebenen datum assigned var convert_date = Date.parse(datum); if(now_milli < convert_date) //wenn die anzahl der millisekunden bis jetzt kleiner sind als die des datums alert("Es ist noch nicht so weit"); //gib dies aus else if(now_milli >= convert_date) location.href = link; //wenn die anzahl der millisekunden bis jetzt größer oder gleich denen des datums sind, öffne den Link else alert("ERROR"); // wenn beides nicht stimmt, gib error aus } // --></script>
Du hast am Anfang newDate() geschrieben, da gehört ein Leerzeichen dazwischen. Dann hast du die Variable convert_date ganannt aber eine Variable mit dem Namen date geprüft. Und am Ende hast du noch vergessen dass da ein "if ... else if ... else" hingehört hätte. -
hackyourlife schrieb:
infinitysounds schrieb:
Hab ich natürlich auch:
Nene, ich würde gerne ne Lösung haben...<script type="text/javascript"><!-- //Variablen enthalten die Links zu den Seiten var chaosmas_singletrack="http://www.downloadcounter.de/counter.pl?file=http://download.lima-city.de/infinitysounds/chaosmas%20Singletrack.zip&user=infinitysounds"; var chaosmas_multitrack="http://www.downloadcounter.de/counter.pl?file=http://download.lima-city.de/infinitysounds/Chaosmas%20Multitrack.zip&user=infinitysounds"; var date1 = "Fri, 23 Dec 2011 13:00:00 GMT"; //enthält morgigen Zeitpunkt 13:00 var date2 = "Sun, 1 Jan 2010 00:00:00 GMT";//Kontrolldatum weit vor morgen var now = new Date(); var year = now.getFullYear(); var month = now.getMonth(); var day = now.getDate(); var hour = now.getHours(); var minutes = now.getMinutes(); var date_string = now.toGMTString(); var now_milli = now.getTime(); //verschiedene Datumsfunktionen, die letzte und erste ist relevant function show_link(link, datum) { //es werden der aufzurufene Link und das Datum, zu welchem er nutzbar sein soll, übergeben //variable convert_date wird mit der anzahl der Millisekunden seit 1.1.1970 bis zum angegebenen datum assigned var convert_date = Date.parse(datum); if(now_milli < convert_date) //wenn die anzahl der millisekunden bis jetzt kleiner sind als die des datums alert("Es ist noch nicht so weit"); //gib dies aus else if(now_milli >= convert_date) location.href = link; //wenn die anzahl der millisekunden bis jetzt größer oder gleich denen des datums sind, öffne den Link else alert("ERROR"); // wenn beides nicht stimmt, gib error aus } // --></script>
Du hast am Anfang newDate() geschrieben, da gehört ein Leerzeichen dazwischen. Dann hast du die Variable convert_date ganannt aber eine Variable mit dem Namen date geprüft. Und am Ende hast du noch vergessen dass da ein "if ... else if ... else" hingehört hätte.
Vielen Dank!
Das new Date() wars, das mit dem date und convert_date ist nur on the fly passiert, in der Datei wars schon richtig ;)
Jetzt funzts
~closed -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage