Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Dwie pętle
Mateostin
post
Post #1





Grupa: Zarejestrowani
Postów: 68
Pomógł: 0
Dołączył: 23.03.2016

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


Witam, temat był już poruszany natomiast nie potrafię dopasować tego pod siebie mam taki kod:

  1. <?php
  2.  
  3. echo "";
  4. echo "<table class='zaznaczenie'>";
  5. echo "<tr style='background-color: #FFEBCD; padding: 2;'> <th WIDTH=6%>Materiał</th> <th WIDTH=6% title='Numer Zlecenia'>Ilosc</th> <th>jednostka</th> <th>Ilosc PROD</th> </tr>";
  6.  
  7. $connect = mysqli_connect(tutaj się łącze :) );
  8. $zapytanie = "SELECT SUM(iloscrec*ilosc/100) AS iloscsur, surowiec, Produkt FROM receptura JOIN produkcjadb ON(produkcjadb.Produkt = receptura.kolor) WHERE data_zakonczenia >= CURRENT_DATE GROUP BY surowiec"
  9. $resultprod = mysqli_query($connect, $zapytanie);
  10. while($dana = mysqli_fetch_assoc($resultprod))
  11. {
  12.  
  13. $zmiennailoscsur = sprintf('%.3f', $dana['iloscsur']);
  14. echo ''.$dana['surowiec'].' ---- '.$zmiennailoscsur.' </br>';
  15. }
  16.  
  17. ?>
  18. <?php
  19.  
  20. $connect = mysqli_connect(tutaj się łącze :) );
  21. $zapytanie = "SELECT SUM(ilosccal) AS ilosc, material, jednostka FROM surowce WHERE magazyn='G' || magazyn='K' || magazyn='S' || magazyn='P' || magazyn='PROUT' || magazyn='W' || magazyn='OR' GROUP BY material"
  22. $result = mysqli_query($connect, $zapytanie);
  23. while($dana = mysqli_fetch_assoc($result))
  24. {
  25. $zmienna = sprintf('%.3f', $dana['ilosc']);
  26. echo "";
  27. echo "<tr style='background-color: #FFFFF0'>";
  28. echo '<td>' . $dana['material'] . '</td>';
  29. echo '<td>'.$zmienna.'</td>';
  30. echo '<td>'.$dana['jednostka'].'</td>';
  31. echo "</tr>";
  32. }
  33.  
  34. ?>



i teraz pytanie czy moge jakos zrobic tak zeby wyniki z pierwszej petli przyporządkowało mi do drugiej pętli gdzie $dana['material'] z drugiej petli = $dana['surowiec'] z pierwszej pętli?

Dobra poradziłem sobie zwykłym ifem, natomiast to chyba zabije serwer, da się zrobić jakoś żeby tylko wpisywało wartość dla tych które występują 1 petli a te które nie żeby dawało w tabeli 0 bądź - ?

Ma ktos chociaż jakąs wskazowke?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Mateostin
post
Post #2





Grupa: Zarejestrowani
Postów: 68
Pomógł: 0
Dołączył: 23.03.2016

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


Dziękuje bardzo nospor bede walczył i moze cos się uda!

Witam ponownie a gdybym zrobił takim wzorcem?

  1. SELECT wartość
  2. FROM (SELECT SUM(iloscrec*ilosc/100) AS iloscsur, surowiec, Produkt
  3. FROM receptura
  4. JOIN produkcjadb ON(produkcjadb.Produkt = receptura.kolor)
  5. WHERE data_zakonczenia >= CURRENT_DATE
  6. GROUP BY surowiec
  7. ) surowce JOIN (
  8. SELECT SUM(ilosccal) AS ilosc, material, jednostka
  9. FROM surowce
  10. WHERE magazyn='G' || magazyn='K' || magazyn='S' || magazyn='P' || magazyn='PROUT' || magazyn='W' || magazyn='OR'
  11. GROUP BY material
  12. ) receptura
  13. ON surowiec.material = receptura.surowiec

czy takie cos ma sens?
i jeszcze jedno pytanie bo dostałem wskazowke w funkcją LEFT JOIN a nie lepsza jest funkcja LEFT OUTER JOIN?
przy okazji nie wiem dobrze zbudowałem te subquery... jezeli cos źle czy mogłby mnie ktos poprawic?

Jednak jeszcze jedno pytanie....na jakiej zasadzie działają widoki w PHPMYADMIN?

Ten post edytował Mateostin 28.11.2016, 16:01:40
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 16.10.2025 - 22:42