Avatar billede fkp85 Praktikant
02. august 2012 - 12:21 Der er 9 kommentarer og
1 løsning

Udskrive produktordre fra databasen fra en bestemt tidsperiode

Nogle der kan hjælpe mig med hvordan jeg skal gribe den her opgave an:
Jeg skal lave en opgave hvor jeg kan vælge en start dato og en slut dato, og ud fra disse datoer så skal de allerede eksisterende ordrer udvælges inden for dette tidsinterval som så skal udskrives til frontend?

i db er der et felt med mktime stamp for hver enkelt ordre??

Nogle der kan hjælpe mig på vej, for jeg må indrømme lige punktligt er jeg helt blank o.0
Avatar billede michael_stim Ekspert
02. august 2012 - 12:31 #1
Det kan gøres på flere forskellige måder.

Jeg går ud fra at det er på en hjemmeside.

Lav to dropdowns med eksisterende datoer og en knap med søg.

Færdig.
Avatar billede michael_stim Ekspert
02. august 2012 - 12:34 #2
Hvis du kommer med en bedre beskrivelse, skal jeg nok komme med et bedre svar ;o)

Hvad skal det bruges til?
Hvor skal det bruges?
Hvad kan du?
Hvor meget har du lavet af applikationen?
Osv
Avatar billede michael_stim Ekspert
02. august 2012 - 12:35 #3
Og er det det hele du vil have vi skal lave, så skal den under kategorien "Opgaver".
Avatar billede fkp85 Praktikant
02. august 2012 - 15:00 #4
Tror vidst jeg har fundet ud af det :)
Avatar billede fkp85 Praktikant
02. august 2012 - 15:27 #5
mangler at få sat slut ind i strengen?? hvordan og hvor skal variablen slut sættes ind? det skal være større end $start men mindre end $slut?

<?
$start = mktime(0, 0, 0, $month , $dayOfMonth, $s_year);
$slut = mktime(0, 0, 0, $e_month , $e_dayOfMonth, $e_year);

$query = mysql_query("select count(orders_products.orders_id) AS cnt, orders_products.products_id, orders.date_purchased, products_name, product_certain_amount from orders_products LEFT JOIN orders ON orders.orders_id = orders_products.orders_id, products WHERE products.products_id = orders_products.products_id AND orders.todaystarted > '".$start."' AND (orders.orders_status != '4' OR orders.orders_status != '0') AND products_status = 1 GROUP BY orders_products.products_id HAVING cnt > 50 ORDER BY cnt DESC") or die(mysql_error());
    echo '<table border="1"><tr><th width="20%">Lokation</th><th width="20%">Varenummer</th><th width="30%">Produkt</th><th width="20%">Antal solgte</th><th width="20%">Dato</th></tr>';
    $x = 0;
    while($row = mysql_fetch_assoc($query))
    {
        $x++;
        $bgcolor = $x % 2 == 0 ? 'ffffff' : 'eeeeee';
        echo '<tr style="background-color:#' . $bgcolor . ';"><td>' . $row["product_certain_amount"] . ' </td><td>' . $row["products_id"] . '</td><td>' . $row["products_name"] . '</td><td>' . $row["cnt"] . '</td><td>' . substr($row["date_purchased"], 2, -9) . '</td></tr>';
    }
    echo '</table>';
   
?>
Avatar billede straszek Praktikant
02. august 2012 - 16:01 #6
Hvad med at bruge "between" AND orders.todaystarted BETWEEN  '".$start." AND '".$slut."
Avatar billede DeeDawg Nybegynder
02. august 2012 - 18:29 #7
Undgå brugen af PHP shorttags. De er for det meste til mere skade end gavn, og burde slet ikke eksistere.
Avatar billede fkp85 Praktikant
03. august 2012 - 08:18 #8
Har sat BETWEEN ind nu, men hvis jeg indtaster at den skal finde de ordre der er i imellem d. 1/8 - 2/8 2012, så finder den ikke nogen, men jeg kan jo se i db at der er blevet foretaget en ordre? Nogen ideer?
Avatar billede fkp85 Praktikant
03. august 2012 - 08:58 #9
Kan det være noget = med det mangler???
Avatar billede fkp85 Praktikant
07. august 2012 - 14:29 #10
..
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

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