Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

find the bug

Empfohlene Antworten

Veröffentlicht

hi leute.

ich habe das problem das ich der folgenden funktion meine kw und das jahr übergebe und diese gibt mir einen schönen datestring aus!

nun ist irgendwo ein bug.

wenn ich kw 53/2004

eingebe dann ist der datestring der gleiche als bei kw 1 /2004!

sieht jemand den bug?

gruss,

kills

function KWtoDate($kw, $jahr)

{

     $tag_jahresbeginn = mktime(0, 0, 0, 1, 1, $jahr);

     switch(date("l", $tag_jahresbeginn))

     {

       case "Monday" : $einige_tage = 4; break;

       case "Tuesday" : $einige_tage = 3; break;

       case "Wednesday" : $einige_tage = 2; break;

       case "Thursday" : $einige_tage = 1; break;

       case "Friday" : $einige_tage = 0; break;

       case "Saturday" : $einige_tage = 6; break;

       case "Sunday" : $einige_tage = 5; break;

       default : print "Fehler in Function KWtoDate!"; break;

     }


     $tage_bis_ziel_kw = ($kw - 1) * 7 + $einige_tage;

     $datum_in_ziel_kw = mktime(0, 0, 0, 1 , 1 + $tage_bis_ziel_kw, $jahr);

     $datum_anf_ziel_kw = mktime(0, 0, 0, 1 , 1 + $tage_bis_ziel_kw-4, $jahr);


     //print "KW $eingabe in diesem Jahr endet am : ". date ("l d F", $datum_in_ziel_kw);

     $ziel_tag = date("d", $datum_in_ziel_kw);

     $ziel_monat = date("m", $datum_in_ziel_kw);

     $ziel_jahr = date("Y", $datum_in_ziel_kw);


     $anf_tag = date("d", $datum_anf_ziel_kw);

     $anf_monat = date("m", $datum_anf_ziel_kw);

     $anf_jahr = date("Y", $datum_anf_ziel_kw);


     $Zieldatum = "$ziel_tag.$ziel_monat.$ziel_jahr";

     $Anfdatum = "$anf_tag.$anf_monat.$anf_jahr";


     echo "$Anfdatum - $Zieldatum";

     return $Zieldatum;

Wie wärs damit?


function KWtoDate($kw, $jahr)
{
$tag_jahresbeginn = mktime(0, 0, 0, 1, 1, $jahr);
switch(date("l", $tag_jahresbeginn))
{
case "Monday" : $einige_tage = 4; break;
case "Tuesday" : $einige_tage = 3; break;
case "Wednesday" : $einige_tage = 2; break;
case "Thursday" : $einige_tage = 1; break;
case "Friday" : $einige_tage = 0; break;
case "Saturday" : $einige_tage = 6; break;
case "Sunday" : $einige_tage = 5; break;
default : print "Fehler in Function KWtoDate!"; break;
}
$returndate=$tag_jahresbeginn+(($kw-1)*7+$einige_tage)*86400;
//ein Tag hat 86400 Sekunden.
return $returndate;
}
[/PHP]

Original geschrieben von jomama

Wie wärs damit?


function KWtoDate($kw, $jahr)
{
$tag_jahresbeginn = mktime(0, 0, 0, 1, 1, $jahr);
switch(date("l", $tag_jahresbeginn))
{
case "Monday" : $einige_tage = 4; break;
case "Tuesday" : $einige_tage = 3; break;
case "Wednesday" : $einige_tage = 2; break;
case "Thursday" : $einige_tage = 1; break;
case "Friday" : $einige_tage = 0; break;
case "Saturday" : $einige_tage = 6; break;
case "Sunday" : $einige_tage = 5; break;
default : print "Fehler in Function KWtoDate!"; break;
}
$returndate=$tag_jahresbeginn+(($kw-1)*7+$einige_tage)*86400;
//ein Tag hat 86400 Sekunden.
return $returndate;
}
[/PHP]

[/b]

jo is ja wunerbar aber wo is der datumsstring den ich eigentlich haben wollte? ;-)

Original geschrieben von kills


function KWtoDate($kw, $jahr)
{
echo "$Anfdatum - $Zieldatum";
[/PHP]

[/b]

ich meine ja das ich oben einen datumstring ausgebe den ich ja bei dir gar nicht im source habe. ausserdem wollte ich ja wissen wo der bug drinn ist. :)

gruss

kills

:confused:

Also ich hab das mal bei mir probiert, und bei mir kommt bei 53/2004 und 1/2004 nicht das selbe raus.

1/2004 => 29.12.2003 - 02.01.2004

53/2004 => 27.12.2004 - 31.12.2004

Kann das an deiner PHP-Version liegen?

hi,

ich hab den fehler behoben.

lag an der php version.

mit der neuen funzt es!

danke für die hilfe

kills

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.