Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 02-10-2005, 12:06   #1 (permalink)
Rc-freak
 
Benutzerbild von Domsi
 
Registriert seit: Sep 2004
Ort: Steiermark (Ö)
Beiträge: 1.152
Dayfinder

Hi, wollte gerade einen Dayfinder bauen. Der Funktioniert fast!

Es wird mir der richtige Tag angezeigt, nur wie kann man das machen zb. 31.09.2005.

Der September hat ja nur 30 Tage, und dann kommt zb noch der Februrar dazu wo alle 4 Jahre der 29 existiert!

Diese Problem bekomm ich nicht so ganz geregelt!

Vielleicht weiß ja jemand wie man das Überprüfen kann obs den Tag überhaupt gibt, den zur Zeit zeigt er mir für den 31.09.2005 einen "Samstag" an! Obwohl das der 01.10.2005 wäre!

lg, Domsi
Angehängte Dateien
Dateityp: zip dayfinder.zip (5,0 KB, 5x aufgerufen)
__________________
Für Rechtschreibfehler haftet meine Tastatur.

Frühstücken tun alle (Nutella)

http://www.dominik-klein.at|Einfache Flashanfängertuts|Geburtstagsreminder

lg, Domsi

Geändert von Domsi (02-10-2005 um 13:01 Uhr)
Domsi ist offline   Mit Zitat antworten
Alt 02-10-2005, 13:32   #2 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.322
http://www.seibsprogrammladen.de/fra...gorithmen/Date

hier ist so ziemlich alles tagewerk dabei.

aus deinen eingaben ein date-objekt machen lassen und daraus die tage entnehmen - stimmt immer.
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de

Geändert von hgseib (02-10-2005 um 13:35 Uhr)
hgseib ist offline   Mit Zitat antworten
Alt 02-10-2005, 14:18   #3 (permalink)
Rc-freak
 
Benutzerbild von Domsi
 
Registriert seit: Sep 2004
Ort: Steiermark (Ö)
Beiträge: 1.152
So erstmal Feiern, juhuu 1000 Beiträge


Ok ich hab das Prinzip mal kapiert wie es funktioniert! Danke mal.

Nur ein Problem gibts, der gibt mir genau am 28.09.2005 auch ungültiges Datum aus, obwohls den ja gibt!

Ich hab da ne if-abfrage gemacht, hier ist der code vom button und von der funktion, vielleicht siehst du ja was ich da falsch gemacht habe!

PHP-Code:
feld = new Array("Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"
ok.onPress = function(){
    
jahr jahr_txt.text
    monat 
monat_txt.text
    tag 
tag_txt.text
    
if(tag_txt.text == "Tag - TT"||monat_txt.text == "Monat - MM"||jahr_txt.text == "Jahr - JJJJ"){
        
ausgabe.text "Alles Ausfüllen"
    
}else{
        for(var 
i=1;i<12;i++){
            
trace(ueberdatum(jahri))
            if(
ueberdatum(jahri) < tag){
                
ausgabe.text "Ungültiges Datum"
            
}else{
                
datum_txt = new Date(jahrmonat-1tag)
                
weekday feld[datum_txt.getDay()];
                
ausgabe.text weekday
            
}
        }
    }
}
function 
ueberdatum(jarmon){
      return (new 
Date(jahrmon0)).getDate();

Kannst mal schaun bitte? Danke

gruß Domsi
__________________
Für Rechtschreibfehler haftet meine Tastatur.

Frühstücken tun alle (Nutella)

http://www.dominik-klein.at|Einfache Flashanfängertuts|Geburtstagsreminder

lg, Domsi
Domsi ist offline   Mit Zitat antworten
Alt 02-10-2005, 15:37   #4 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.322
jetzt darfst du leider nichts mehr posten sonst sind die 1000 weg ;-)

du kannst sie aber auch einlösen: für 1000 punkte gibts einen handmixer und einen trockner. (kann ich mich noch drann erinnern. damals ist klein seib von seiner oma auf so eine kaffefahrt mitgenommen worden. handmixer war ein blastikbecher mit einem holzlöffel drinn: kann man per hand mixen - und der trockner war eine wäscheklammer!). das waren noch zeiten. appropo zeit:

nochmal: die eingabe in ein date-objekt und das wieder in ein datum. der user bekommt also seine eingabe korregiert.
falls du doch auf eine fehlermeldung und das ganze brimborium bestehst. so vielleicht:
ActionScript:
  1. jahr = 2005;
  2. monat = 13-1;
  3. tag = 3;
  4. //
  5. var _date = new Date(jahr, monat, tag);
  6. var ok = (tag == _date.getDate() && monat == _date.getMonth() && jahr == _date.getFullYear());
  7. trace(ok ? "ok" : "fac input");
dann musst du dem user aber auch sagen, was falsch ist. dann mach doch lieber gleich ein richtiges datum draus.
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de
hgseib ist offline   Mit Zitat antworten
Alt 02-10-2005, 15:46   #5 (permalink)
Rc-freak
 
Benutzerbild von Domsi
 
Registriert seit: Sep 2004
Ort: Steiermark (Ö)
Beiträge: 1.152
Hääää

nun kenn ich mich noch weniger wie vorher aus

Es ist ja nur das mir aufgefallen ist das er beim 30.02.2005 auch einen Wochentag anzeigt! Und so ein Datum gibt es nicht! Es muss zwar nicht umbedingt sein, aber sieht auch blöd wenn Flash nen Tag anzeigt den es nicht gibt!

Ich hab nämlich im letzten beitrag nicht so ganz kapiert was du mir da erklären versuchst
__________________
Für Rechtschreibfehler haftet meine Tastatur.

Frühstücken tun alle (Nutella)

http://www.dominik-klein.at|Einfache Flashanfängertuts|Geburtstagsreminder

lg, Domsi
Domsi ist offline   Mit Zitat antworten
Alt 02-10-2005, 15:51   #6 (permalink)
Rc-freak
 
Benutzerbild von Domsi
 
Registriert seit: Sep 2004
Ort: Steiermark (Ö)
Beiträge: 1.152
Achso, ups schon kapiert!

Danke für die Hilfe, habs irgendwie nicht so ganz kapiert vorher, war wegen den 1000 Beiträgen so beindruckt oder wie

Naja Danke nochmal

Edit: hier kann man sich das Ansehen: Dayfinder
__________________
Für Rechtschreibfehler haftet meine Tastatur.

Frühstücken tun alle (Nutella)

http://www.dominik-klein.at|Einfache Flashanfängertuts|Geburtstagsreminder

lg, Domsi

Geändert von Domsi (02-10-2005 um 16:36 Uhr)
Domsi ist offline   Mit Zitat antworten
Alt 02-10-2005, 16:51   #7 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.322
"..Und so ein Datum gibt es nicht!.."
ja, weil es für flash (und generell in der datumsprogrammierung) kein 'falsches datum' gibt. hättest du mal auf meiner seite gelesen, dann bräucht ich jetzt nicht so viel zu tippen :-(
;-)))

"..Jegliche Datumsangabe wird in Sekunden seit dem Stichdatum 1.1.1900 berechnet (manchmal auch 1.1.1904). Aus dieser Zahl wird das gültige Datum berechnet.."

das datum ist für flash nur eine einzige zahl:
+ soviel jahre ==> x sekunden
+ soviele monate ==> y sekunden
+ soviele tage ==> z sekunden
+ soviele stunden, minuten, sekunden ...
aus dieser zahl werden dann alle angaben berechnet.


Dayfinder
und? schon einen neuen tag gefunden? die domsi - liegt genau zwischen donnerstag und sieben.

P.S.
du musst dein programm ändern!!!
z.b. der 5.3.1200 ist KEIN sonntag.
weil (auch auf meiner seite zu lesen)
var cErr1 = "Der Gregorianische Kalender gilt erst ab dem 04.10.1582";
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de

Geändert von hgseib (02-10-2005 um 16:54 Uhr)
hgseib ist offline   Mit Zitat antworten
Alt 02-10-2005, 17:01   #8 (permalink)
Rc-freak
 
Benutzerbild von Domsi
 
Registriert seit: Sep 2004
Ort: Steiermark (Ö)
Beiträge: 1.152
Zitat:
Zitat von hgseib
Dayfinder
und? schon einen neuen tag gefunden? die domsi - liegt genau zwischen donnerstag und sieben.
Hätt ich jetzt lachen sollen ?
Zitat:
Zitat von hgseib
P.S.
du musst dein programm ändern!!!
z.b. der 5.3.1200 ist KEIN sonntag.
weil (auch auf meiner seite zu lesen)
var cErr1 = "Der Gregorianische Kalender gilt erst ab dem 04.10.1582";
Aha und wie soll ich das genau ändern Datei>Kalender>..... oda wie?
Ne jetzt im ernst was soll ich da ändern? Geht doch gar nicht zum ändern
__________________
Für Rechtschreibfehler haftet meine Tastatur.

Frühstücken tun alle (Nutella)

http://www.dominik-klein.at|Einfache Flashanfängertuts|Geburtstagsreminder

lg, Domsi
Domsi ist offline   Mit Zitat antworten
Alt 02-10-2005, 17:15   #9 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.322
"..Hätt ich jetzt lachen sollen.."
dein programm heisst doch dayfinder - dann muss es auch tage finden können ;-) da aber schon alle tage gefunden worden sind, wird's schwer ...

"..Aha und wie soll ich das genau ändern.."
heute ist aber nicht dein tag?
du testest, ob das eingabe-datum vor dem 04.10.1582 liegt und gibst gegebenenfalls eine fehlermeldung aus. (oder du berechnest nach der damals gültigen zeitrechnung.)
ActionScript:
  1. var cErr1 = "Keine Wochentagsberechnung möglich, der Gregorianische Kalender gilt erst ab dem 4.10.1582";
  2. min_date = new Date(1582, 10, 4);
  3. test_date = new Date(1005, 10, 5);
  4. trace(test_date < min_date ? cErr1 : 'ok');
P.S.
dayfinder
bei solchen 'griffigen' wortschöpfungen immer acht geben, ob es sowas nicht schon gibt! ruckzuck hat man eine abmahnung am hals.
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de

Geändert von hgseib (02-10-2005 um 17:50 Uhr)
hgseib ist offline   Mit Zitat antworten
Alt 02-10-2005, 18:16   #10 (permalink)
Rc-freak
 
Benutzerbild von Domsi
 
Registriert seit: Sep 2004
Ort: Steiermark (Ö)
Beiträge: 1.152
Achso, lol ja das hätt ich auch gewusst, wie das geht ich dachte du meinst irgendwo bei Flasheinstellungen oda was

Naja, auch egal jetzt. Danke für die Hilfe
__________________
Für Rechtschreibfehler haftet meine Tastatur.

Frühstücken tun alle (Nutella)

http://www.dominik-klein.at|Einfache Flashanfängertuts|Geburtstagsreminder

lg, Domsi
Domsi ist offline   Mit Zitat antworten
Alt 02-10-2005, 18:28   #11 (permalink)
Rc-freak
 
Benutzerbild von Domsi
 
Registriert seit: Sep 2004
Ort: Steiermark (Ö)
Beiträge: 1.152
Öh, ja mehr gibts dazu nicht zusagen:

PHP-Code:
var cErr1 "Keine Wochentagsberechnung möglich, der Gregorianische Kalender gilt erst ab dem 4.10.1582";
min_date = new Date(1582104);
test_date = new Date(0010105);
trace(test_date min_date cErr1 'ok');

>>>>>>>>>>
//Ausgabe: "ok"<<<<<<<<< 
Ich kanns zwar lösen das problem, aber warum macht der das unter 100 mit ok?
__________________
Für Rechtschreibfehler haftet meine Tastatur.

Frühstücken tun alle (Nutella)

http://www.dominik-klein.at|Einfache Flashanfängertuts|Geburtstagsreminder

lg, Domsi

Geändert von Domsi (02-10-2005 um 18:31 Uhr)
Domsi ist offline   Mit Zitat antworten
Alt 02-10-2005, 18:51   #12 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
Weil er anstatt 0010 1908 nimmt, kannst dir ja mal nur die date's tracen lassen...

@ hgseib:
Aber fängt der Gregorianische Kalender nicht mit dem 15. Oktober an (der nach dem 4ten war)?
__________________
ERROR: Signature is too large

Geändert von rendner[i] (02-10-2005 um 18:55 Uhr)
rendner[i] ist offline   Mit Zitat antworten
Alt 02-10-2005, 19:15   #13 (permalink)
Rc-freak
 
Benutzerbild von Domsi
 
Registriert seit: Sep 2004
Ort: Steiermark (Ö)
Beiträge: 1.152
Achso ist, tat, naja egal ein bisschen trixen und klappt schon

danke
__________________
Für Rechtschreibfehler haftet meine Tastatur.

Frühstücken tun alle (Nutella)

http://www.dominik-klein.at|Einfache Flashanfängertuts|Geburtstagsreminder

lg, Domsi
Domsi ist offline   Mit Zitat antworten
Alt 02-10-2005, 20:39   #14 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.322
Zitat:
Zitat von rendner[i]
@ hgseib:
.. mit dem 15. Oktober an ..?
ich war damals nicht dabei ehrlich (hatte da wohl grad meine grosse chinareise gemacht ;-)

http://de.wikipedia.org/wiki/Gregorianischer_Kalender
"..dass im Jahre 1582 zehn Tage übersprungen werden sollten. Daher folgte auf den 4. Oktober gleich der 15. Oktober.."
ja, die aussage 'ab dem 4.' ist so gesehen nicht korrekt (bei welchem depp hab ich das bloss abgeschrieben? man kann sich auf niemanden mehr verlassen).

somit:
das mit der schnellen verbreitung ala internet hatte damals wohl noch nicht so geklappt (ich sag nur: windows). wenn man also nicht auch noch die spezifische gegebenheit des protestantischen Halbkanton Appenzell Ausserrhoden (was für ein potenter name) berücksichtigen will, dann könnte man schon sagen, das unsere neuzeitliche datumsberechnung beginnend mit dem 15.10. definiert ist.
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de
hgseib ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 03:59 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele