Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Wyświetlanie danych z MySQL + obliczenia
xeno
post
Post #1





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 2.03.2013

Ostrzeżenie: (0%)
-----


Witajcie,
Mam pewien problem (może nie problem, a brak pomysłu na rozwiązanie)
Chodzi o to, by pobrać z bazy danych 'netto', a później 'podatek' i na końcu obliczyć brutto. Coś tam próbowałem, ale nie wychodzi

  1. $cenatowaru = @mysql_query("SELECT netto FROM hurt WHERE id_produktu='$zamow'");
  2. $podatek = @mysql_query("SELECT podatek FROM hurt WHERE id_produktu='$zamow'");
  3. $cenarealna = "$cenatowaru+$cenatowaru*$podatek/100";


--------------------
  1. if($me < $problem){
  2. echo "spamuj na forum";
  3. } else {
  4. echo "zaspamuj na wszelki wypadek";
  5. }
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
viking
post
Post #2





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


Na bazie też możesz wykonywać obliczenia (wręcz wskazane)
  1. SELECT netto, netto*podatek AS brutto FROM...

dopasuj sobie w zaleznosci od tego w jakiej formie jest podatek zapisany


--------------------
Go to the top of the page
+Quote Post
xeno
post
Post #3





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 2.03.2013

Ostrzeżenie: (0%)
-----


Cytat(viking @ 4.03.2013, 12:15:03 ) *
Na bazie też możesz wykonywać obliczenia (wręcz wskazane)
  1. SELECT netto, netto*podatek AS brutto FROM...

dopasuj sobie w zaleznosci od tego w jakiej formie jest podatek zapisany


Narazie staram się zrozumieć działanie działąń na PHP.
(kod który podałeś nie nadaje się raczej do mojej tabelki)


--------------------
  1. if($me < $problem){
  2. echo "spamuj na forum";
  3. } else {
  4. echo "zaspamuj na wszelki wypadek";
  5. }
Go to the top of the page
+Quote Post
viking
post
Post #4





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


Twój kod nie nadaje się na podukcję. Zauważ że wysyłasz dwa identyczne zapytania żeby te same dane pobrać. Jak wyświetlisz na stronie to już twoja sprawa.


--------------------
Go to the top of the page
+Quote Post
mstraczkowski
post
Post #5





Grupa: Zarejestrowani
Postów: 273
Pomógł: 52
Dołączył: 3.02.2013
Skąd: Przemyśl

Ostrzeżenie: (0%)
-----


Po primo: mysql_query zwraca resource/false, a nie wynik z bazy danych.

Po drugie primo: po co dajesz wyrażenie matematyczne w cudzysłowie ?

Po trzecie primo: Pamiętaj o nawiasach

Kolega viking mówi o wyliczaniu tego w bazie danych, jest to pewne podejście, ale musimy się zdecydować, albo wszystko wyliczamy w bazie, albo wszystko w PHP, znam niestety przypadki kiedy wyliczenia były wykonywane po stronie bazy oraz czasami w PHP i potrafiły się rozjeżdżać, poza tym podejście liczenia "tu i tu" wprowadza chaos, nie wiadomo co jest liczone przez bazę, a co przez skrypt.

Ten post edytował mstraczkowski 4.03.2013, 12:33:29


--------------------
Jeżeli moja wypowiedź Ci pomogła użyj przycisku
Go to the top of the page
+Quote Post
xeno
post
Post #6





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 2.03.2013

Ostrzeżenie: (0%)
-----


Cytat(mstraczkowski @ 4.03.2013, 12:22:30 ) *
mysql_query zwraca resource/false, a nie wynik z bazy danych.

Więc jak mam sformułować zapytanie?


--------------------
  1. if($me < $problem){
  2. echo "spamuj na forum";
  3. } else {
  4. echo "zaspamuj na wszelki wypadek";
  5. }
Go to the top of the page
+Quote Post
mstraczkowski
post
Post #7





Grupa: Zarejestrowani
Postów: 273
Pomógł: 52
Dołączył: 3.02.2013
Skąd: Przemyśl

Ostrzeżenie: (0%)
-----


A przykładowo tak:

  1. $cenaNettoZapytanie = mysql_query("SELECT netto, podatek FROM hurt WHERE id_produktu='".$zamow."'");
  2. $cenaNetto = mysql_fetch_assoc($cenaNettoZapytanie);
  3. $cenaBrutto = $cenaNetto['netto'] + ($cenaNetto['netto'] * ($cenaNetto['podatek'] / 100));


Ten post edytował mstraczkowski 4.03.2013, 12:32:02


--------------------
Jeżeli moja wypowiedź Ci pomogła użyj przycisku
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 18:52