Avatar billede smeier Nybegynder
14. november 2004 - 22:19 Der er 4 kommentarer og
1 løsning

lave liste der undersøge pr kvartal.

Jeg har tidligere ved hjælp fra eksperten fået bakset nedenstående script sammen. Det tjecker for om der er indtastet fra en given dato til om med idag. Den tjecker månedsvis.
Nu er jeg blevet tvunget til at ændre det til pr. kvartal.
Nogen der kan hjælpe mig med at lave en liste på samme måde som herunder bare med kvartal i stedet for måened?
Eller bare nogen der har et forslag til hvordan jeg kan gøre?

$i = 0;
$startdato = date("Y-m", mktime(0, 0, 0, 12, 0, 2003));
$slutdato = date('Y-m', strtotime("-1 month"));
while ($startdato <= $slutdato)
{
$tjeck = "";
$query = mysql_query("SELECT DATE_FORMAT(moened, '%Y-%m') AS mdr FROM `dataindsamling` WHERE DATE_FORMAT(`moened`, '%Y-%m') = '".$startdato."' AND `user_id` = '".$user_id."'");
while ($row = mysql_fetch_array($query)) {
    $tjeck = $row['mdr'];
}
if (!$tjeck)
{
$startarr = split("
  • ", $startdato);
$dato = date("F-Y", mktime(0, 0, 0, $startarr[1], 1, $startarr[0]));
echo "$dato&nbsp;" ;

echo "Du har ikke udfyldt denne dato.<a CLASS=\"links\" href=\"insert_data.php?tidligere=$startdato\">&nbsp;Udfyld</a><br><br>";
}
else
{
$startarr = split("
  • ", $startdato);
$dato = date("F-Y", mktime(0, 0, 0, $startarr[1], 1, $startarr[0]));
echo "$dato&nbsp;" ;

echo "&nbsp;Du har udfyldt denne<br><br>";
}

$i++;
$startdato = date("Y-m", mktime(0, 0, 0, 12 + $i, 0, 2003));

}
Avatar billede bojo Nybegynder
14. november 2004 - 22:32 #1
skal $slutdato = date('Y-m', strtotime("-1 month")); ikke bare ændres til $slutdato = date('Y-m', strtotime("-3 month"));
Avatar billede smeier Nybegynder
14. november 2004 - 22:38 #2
Lige den linje hjælper intet. For som du selv skriver $slutdato er jo kun slutdatoen og den skal altid være sidste måned. Men forstår godt princippet. Afprøver lige.
Det jeg tror du mente var at $i skal adderer med 3 hver gang i stedet for 1. ik?
Avatar billede coderdk Praktikant
14. november 2004 - 22:43 #3
lav noget med din SQL i stil med:

... WHERE moened BETWEEN startdato AND slutdato
Avatar billede smeier Nybegynder
14. november 2004 - 23:09 #4
Har fået bakset følgende sammen. Det er kejtet - klumpet osv... og så virker det forresten heller ikke. Den viser kun den første - nemlig 4 kvartal 03.
Nogen der kan hjælpe med hvorfor?. også gerne bare med at forkorte det.

$i = 0;
$startdato = date("y-m", mktime(0, 0, 0, 12, 0, 2003));
$slutdato = date('y-m');
while ($startdato <= $slutdato)
{
$startarr = split("
  • ", $startdato);
$mellemmoened = date("m", mktime(0, 0, 0, $startarr[1], 0, $startarr[0]));
$mellemaar = date("y", mktime(0, 0, 0, $startarr[1], 0, $startarr[0]));


if ($dato == '01')
{
$kvartalmidl = '1 kvartal';
}
elseif ($mellemmoened == '02')
{
$kvartalmidl = '1 kvartal';
}
elseif ($mellemmoened == '03')
{
$kvartalmidl = '1 kvartal';
}
elseif ($mellemmoened == '04')
{
$kvartalmidl = '2 kvartal';
}
elseif ($mellemmoened == '05')
{
$kvartalmidl = '2 kvartal';
}
elseif ($mellemmoened == '06')
{
$kvartalmidl = '2 kvartal';
}
elseif ($mellemmoened == '07')
{
$kvartalmidl = '3 kvartal';
}
elseif ($mellemmoened == '08')
{
$kvartalmidl = '3 kvartal';
}
elseif ($mellemmoened == '09')
{
$kvartalmidl = '3 kvartal';
}
elseif ($mellemmoened == '10')
{
$kvartalmidl = '4 kvartal';
}
elseif ($mellemmoened == '11')
{
$kvartalmidl = '4 kvartal';
}
elseif ($mellemmoened == '12')
{
$kvartalmidl = '4 kvartal';
}
$kvartal = $kvartalmidl . '&nbsp;' . $mellemaar;


$tjeck = "";
$query = mysql_query("SELECT moened FROM `dataindsamling` WHERE moened = '".$kvartal."' AND `user_id` = '".$user_id."'");
while ($row = mysql_fetch_array($query)) {
    $tjeck = $row['moened'];
}
if (!$tjeck)
{
$startarr = split("
  • ", $startdato);
$dato = date("F-Y", mktime(0, 0, 0, $startarr[1], 1, $startarr[0]));
echo "$kvartal&nbsp;" ;

echo "Du har ikke udfyldt denne dato.<a CLASS=\"links\" href=\"insert_data.php?tidligere=$kvartal\">&nbsp;Udfyld</a><br><br>";
}
else
{
$startarr = split("
  • ", $startdato);
$dato = date("F-Y", mktime(0, 0, 0, $startarr[1], 1, $startarr[0]));
echo "$kvartal&nbsp;" ;

echo "&nbsp;Du har udfyldt denne<br><br>";
}

$i = $i + '3';
$startdato = date("Y-m", mktime(0, 0, 0, 12 + $i, 0, 2003));

}
Avatar billede smeier Nybegynder
09. september 2005 - 09:12 #5
lukker for at rydde op i mine åbne spørgsmål. Hvis nogen føler sig snydt må de brokke sig.
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester