Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Sumowanie danych pól z bazy.
Forum PHP.pl > Forum > PHP
MagicznyKacper
Cześć! Tym razem problem spotkał mnie kiedy pisałem moduł do pewnego projektu. Żeby nie przedłużać przejdę od razu do sedna sprawy.
Chciałem wykonać moduł tworzenia mikstur (jak wspomniałem wyżej, na potrzeby projektu). Miał działać on na takiej zasadzie:
Najpierw skrypt pobiera przedmioty z tabeli `przedmioty` gdzie typ=roślina, następnie wyświetlić je na ekranie z tym, że każdy jako osobny checkbox. Teraz chciałbym żeby po naciśnięciu guzika z tabeli `przedmioty` usunęło rośliny których gracz użył i stworzyło miksturę której właściwości (siła, obrona) równe są sumie tychże wartości z tym, że roślin. - Ten tekst jest bardzo chaotyczny więc opiszę na przykładzie.
Gracz posiada roślinę x i y, roślina x dodaje 2 siły, zaś y 5 obrony teraz chciałbym aby po naciśnięciu guzika stworzyło miksturę gdzie siła równa jest 2 a obrona 5. Załączam także moje dotychczasowe kombinowania:
  1. <?php
  2. require_once("inc/conn.php");
  3. require_once("inc/func.php");
  4.  
  5. if($_SESSION['zalogowany'] != 0)
  6. {
  7. $wybierz_rosliny = mysql_query("SELECT * FROM przedmioty WHERE typ='roślina' AND owner='".$_SESSION['id']."' ");
  8. echo("<form method='post'>");
  9. while($ros = mysql_fetch_assoc($wybierz_rosliny))
  10. {
  11. echo("<input type='checkbox' value='1' name='{$ros['nazwa']}'>{$ros['nazwa']}<input type='hidden' value='{$ros['sila']}' name='{$ros['id']}'>");
  12. }
  13. echo("<input type='submit' name='zrob' value='Stwórz'></form>");
  14.  
  15. if(isset($_POST['zrob']))
  16. {
  17. foreach($_POST AS $q)
  18. {
  19. echo("USUWAM");
  20. }
  21. $dodaj = mysql_query("INSERT INTO przedmioty SET owner='{$_SESSION['id']}', typ='eliksir', sila='{$_POST['id']}', nazwa='mikstura' ");
  22. }
  23. }
  24. ?>
  25. <meta http-equiv="Content-Type" content="text/html;charset=utf-8" >

Z góry dziękuję za każdą pomoc i wskazówki, pragnę również zaznaczyć, że jestem strasznie niekumaty i najlepiej zrozumiem na jakimś przykładzie.
CuteOne
Największy problem to optymalny zapis mikstur, które mogą być mixem n+1 właściwości. Ja widzę dwa rozwiązania:
- zapis danych właściwości do jednej kolumny jako json/tablica z serializowana
- utworzenie kolejnej tabeli mikstury_wlasciwosci i polaczenie jej z mikstury kluczem obcym, wiele do jednego (np. 10 właściwości(rekordów) przypisane jednej miksturze)

Pozdrawiam
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.