Fehler in regulären Ausdruck JavaScript

Mitglied: Maik87

Maik87 (Level 2) - Jetzt verbinden

06.09.2011 um 09:32 Uhr, 2451 Aufrufe, 6 Kommentare

Hallo zusammen,

ich habe ein PHP-System von meinem Vorgänger übernommen und bin noch dabei einzusteigen.

Jetzt habe ich folgendes Problem gefunden:
Ich habe eine Textbox, in der ich ein Datum eingebe. Bis zum Datum 31.07.XXXX geht alles gut. Ab dem 01.08.XXXX wirft ein regulärer Ausdruck/JavaScript alles durcheinander.

Hier mal die Zeile:

'f=f.replace(/^\s+/, \'\').replace(/\s+$/, \'\').replace(/\s{2,}/, \' \'); try{var x=f.split(\'.\'); var d=new Date(); d.setYear(parseInt(x[2])); d.setMonth(parseInt(x[1])-1); d.setDate(parseInt(x[0])); if(isNaN(d)) return \'\'; var t=d.getDate(); if(!parseInt(t/10)) t=\'0\'+t; var m=d.getMonth()+1; if(!parseInt(m/10)) m=\'0\'+m; return t+\'.\'+m+\'.\'+d.getFullYear();}catch(e){return \'\';}'

Steigt hier jemand durch? Erkennt hier jemand den Fehler und kann mir sagen, wieso das Datum falsch ausgeworfen wird?

Ich bedanke mich schonmal.
Mitglied: nxclass
06.09.2011 um 12:56 Uhr
... so - jetzt kann man es lesen ... Was für ein Ergebnis erwartest du denn ?

EDIT: der Bereich 'Javascript' ist bestimmt besser geeignet.
Bitte warten ..
Mitglied: Maik87
06.09.2011 um 12:59 Uhr
Danke!
Ich wusste nicht, wie das geht...
Bitte warten ..
Mitglied: nxclass
06.09.2011 um 13:13 Uhr
du kannst ja mal den
weglassen - dann spuckt er auch Fehlermeldungen aus.
Bitte warten ..
Mitglied: nxclass
06.09.2011 um 15:16 Uhr
das Problem ist ein Eingabefehler - das Script geht davon aus, dass du '1.8.2011' eingibst.

edit: benutze mal das:
Bitte warten ..
Mitglied: Maik87
06.09.2011 um 15:47 Uhr
Danke dir schonmal!
Teste ich morgen, wenn ich wieder im Lande bin.

Aber wieso geht dann 01.07.2011? Da sind doch auch führende Nullen drin.
Bitte warten ..
Mitglied: nxclass
06.09.2011 um 16:08 Uhr
Es hat nichts mit den führenden Nullen zu tun - wenn das Date Objekt erzeugt wird erhält es intern das aktuelle Datum - setzt du nun den Tag auf 31 und der aktuelle Monat hat keinen 31. entsteht ein Fehler.

daher nochmal den Code angepasst:
Bitte warten ..
Heiß diskutierte Inhalte
Microsoft
Mitteilung an alle bei Störungen in der IT
gelöst David.B2D45Vor 1 TagFrageMicrosoft31 Kommentare

Hallo Forum, ich bin auf der Suche nach einem Programm / Tool mit dem ich Text (Laufschrift) auf allen (gewünschten) PC's / Benutzer im ...

Exchange Server
Exchange Zero Day Hack - Wie entfernen?
gelöst mtaiitVor 21 StundenFrageExchange Server29 Kommentare

Hallo, bei mir hat es einige Kundenserver getroffen Weiß einer wie ich diese WebShells wieder loswerde? Das löschen der betroffenen .aspx Dateien wird wohl ...

E-Mail
Kann man mit SPF Mails für eine Domäne vollständig verbieten?
gelöst StefanKittelVor 1 TagFrageE-Mail17 Kommentare

Hallo, viele Firmen haben ja zusätzliche Domänen. Als Web- und oder Mail-weiterleitung. Es werden also niemals Emails damit gesendet werden. kann man mit einem ...

Server-Hardware
Firmware-Updates auf Servern
redhorseVor 1 TagFrageServer-Hardware8 Kommentare

Guten Morgen, die Server-Hersteller stellen bekanntlich regelmäßig Firmware- und Treiberupdates für deren Serverhardware bereit, diese können z.B. bei Dell als Dell EMC Server Update ...

Linux
Windows auf Dualbootrechner entfernen und Linux die komplette Platte zur Verfügung stellen
N8chtfalterVor 1 TagFrageLinux6 Kommentare

Hallo Linux Profis, ich habe einen Laptop auf dem ursprünglichen Windows 10 installiert war, und ist, ich habe vor einem Jahr Ubuntu testhalber als ...

Windows Server
Domänenadmin kann kein Zertifikat anfordern
noodellsVor 1 TagFrageWindows Server6 Kommentare

Hallo Zusammen, ich habe ein Problem beim Finden einer Einstellung. Zuerst einmal der Stand: Es gibt eine Windows CA und Domaincontroller und alles funktionierte ...

Router & Routing
Routing öffentliche IP-Adresse-Traffic per BGP im internal-Network
gelöst jescheroVor 1 TagFrageRouter & Routing2 Kommentare

Guten Abend alle zusammen, ich habe ein kleines Problem beim Routing in pfSense. Mein aktuelles Aufbau ist folgenden: Ich habe eine pfSense-VM und zwei ...

Exchange Server
Windows Server 2019 + Exchange Server 2019 (Probleme mit Pop3)
gelöst aristonVor 1 TagFrageExchange Server4 Kommentare

Hallo zusammen, ich habe gerade angefangen, mit dem Exchange Server 2019 in der Demoversion zu arbeiten und folge Schritt für Schritt bei der notwendigen ...