Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [inne][MySQL][PHP]Teoria/pomysly sql i php
Forum PHP.pl > Forum > Przedszkole
viamarimar
WWitam siedze juz nad problem jakis czas ale nei moge wpasc na rozwiazanie takze zglaszam sie do ekspertow moze ktos cos podpwie, a wtedy zawsze latwiek i czlowiek nagle jakies oswiecenei dostaje.

Do rzeczy...

Zalozmy ze mam tabele
PRODUKTY
w niej sa trzymane pordukty ktore beda sie skladac na jakas tam potrawe
PRZYKLADOWA STRUKTURA
id|name|...|calories|bialka|weglowodany|tluszcze...|...

druga tabela to
SKLADNIKI
polaczenie na zasadzie skladnik|potrawa

trzecia
POTRAWA
zawiera komplet

Pytanie brzmi jak wyliczac ile dana potrawa ma kalori przy takiej strukturze?
Czy baza tak powinna wygladac?


Zalozmy ze w potrawach kazda potrawa jest na 100gramow bo to chyab ulatwienie
np.
Kurczak 100g 142 kalc
Ananas 100g 12kal

Dodajemy potrawe i teraz nagle dodajemy

10dag ananas ->?
Sztukat kurczak ->?

Jak takie cos obliczac ?

Rozumiem zamienic na gramy i porownac. Tylko jak?

Idzmy dalej...

3dag to 30gram

czylli ----? jak policzyc kalorycznosc dla przykladowego ananasa?

Porowanac /pomozyc czy jak? w przypadku 100 g wydawalo mi sie caly czas iz trzeba mnozyc przez ilosc by cos wyliczyc.


Bede wdzieczny za pomoc, pomimo ze to bardziej teoria niz samo kodowanie.



mmmmmmm
To czysta matematyka.
PROPORCJA się kłania.
https://pl.wikipedia.org/wiki/Proporcja_(matematyka)
viamarimar
A cobze struktura bazy ? Wystarczajaco? Czy moze np przyda sie jeszcze jakis temp_ przepis
IAmBoskiM
Maaaatemaaaaatykaaaaaa

10 dag - robisz system, który przelicza dag na g i masz w gramach.

  1. $clrchick100 = 142; // kalorie kurczaka 100g
  2. function dekaNaGramy ($dag) {
  3. return $dag * 10;
  4. }
  5. $dag = 10; // 10 dag
  6. $dag = dekaNaGramy($dag);
  7. // $dag == 100 gramów
  8. function przeliczKalorie ($gramy) {
  9. return ($gramy / 100) * $clrchick100; // te nawiasy dla pewności
  10. }
  11. echo przeliczKalorie (50) . PHP_EOL; // wypisze 71
  12. echo przeliczKalorie (25) . PHP_EOL; // wypisze 35.5
  13. echo przeliczKalorie (200) . PHP_EOL: // wypisze 284
trueblue
Jeśli zdecydujesz się aby potrawy składały się z różnej zawartości danego produktu, to powinieneś w tabeli SKLADNIKI przechowywać taką informację.

Tyle, że nie wiem czy się nie zdarzy tak, że produkt będzie podany w jednostce "sztuk", a w składzie będą to np. gramy, albo odwrotnie.
Wtedy w tabeli produktu musiałbyś zawrzeć przelicznik z jednostki podstawowej na gramy.

Kaloryczność potrawy można obliczyć zapytaniem SQL, nie trzeba do tego kodu PHP.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.