Funkcja IF

Tutaj dyskutujemy o PHP oraz zgłaszamy i rozwiązujemy problemy dotyczące tego języka.

Funkcja IF

Postprzez Lenson » wtorek, 5 kwietnia 2011, 19:05

Czy w funkcji if w warunku mogę użyc pętli for ?

chodzi mi o to:
Kod: Zaznacz cały
if(($row3['nazwisko']) ==[b] ($row5['nazwisko'])[/b])
               {
                  echo "<td>0</td>";   
               }               
               else
               {
                  echo "<td>".$row5['ocena']."</td>";
               }

W tym wypadku musial bym przeszukac cała zmienna $row5
Albo czy jest funkcja w ktorej np moge sprawdzic , czy np
to co jest w $row3['nazwisko'] znajduje sie w $row5['nazwisko'])

Informacje
Kod: Zaznacz cały
$result3 = mysql_query("SELECT nazwisko FROM uczniowie") or die("Nie udalo sie pobrac danych");
$result5 = mysql_query("select DISTINCT uczniowie.nazwisko, uczniowie.imie, oceny.ocena, przedmioty.nazwa from oceny,uczniowie,przedmioty where uczniowie.id = oceny.id_ucznia and przedmioty.id = oceny.id_przedmiotu and przedmioty.nazwa = 'Polski';") or die("Nie udalo sie pobrac danych");   

$row3 = mysql_fetch_array($result3);
$row5 = mysql_fetch_array($result5);
Lenson
Bywalec
Bywalec
 
Posty: 67
Dołączył(a): piątek, 25 lutego 2011, 01:41

Re: Funkcja IF

Postprzez Morfidon » wtorek, 5 kwietnia 2011, 21:22

If nie jest funkcją.
Kod: Zaznacz cały
If (warunek)
to instrukcja warunkowa.
Nie możesz jako warunek użyć pętli. Ale w ciele pętli możesz oczywiście dać warunki.
Morfidon
Administrator
Administrator
 
Posty: 593
Dołączył(a): wtorek, 5 sierpnia 2008, 21:48

Re: Funkcja IF

Postprzez Lenson » wtorek, 5 kwietnia 2011, 22:06

To może inaczej ,bo siedze juz dzis nad tym troche i nie moge nic wymyslec ^^

http://dropmocks.com/mTVBM
mam tak wygladajaca tabelke

Baza danych:
Dziennik
uczniowie
id
Nazwisko
Imie
przedmioty
id
nazwa
oceny
id
id_przedmiotu
id_ucznia
ocena

i teraz potrzebuje zrobic taki myk , żeby mi wypisywał w odpowiednich rubrykach odpowiednie oceny
chodzi o to
ze np
stolarek Andrzej ma 3 z angielskiego , 3 z polskiego 2 z matematyki i np z niemieckiego nie ma jeszcze wystawionej oceny
i teraz musze zrobic tak , zeby mi to wpisalo w te rubryki w poziomie , tak samo
Stolarek Maciej nie ma z angielskiego nic wystawione jeszcze ale ma za to z polskiego i matematyki 2

tam gdzie nie ma nic ustawione niech wpisuje 0

jakies propozycje ?

Dodam jeszcze że te przedmioty dodawane sa automatycznie jezeli w bazie jest dodany przedmiot
Kod: Zaznacz cały
//Funkcja do wpisywania nazw przedmiotów jako nagłówków tabeli
    echo"<table border='1' cellspacing='0' cellpadding='3'>";
      echo "<tr  align='center'>";
      echo "<th>Nazwisko</th>";
      echo "<th>Imie</th>";
         for ($i = 0; $i < mysql_num_rows($result2); $i++)
         {
            $row2 = mysql_fetch_array($result2);
            echo "<th>".$row2['nazwa']."</th>";
         }
      echo "</tr>";
//-----------------------------------------------------------------------------------//
Lenson
Bywalec
Bywalec
 
Posty: 67
Dołączył(a): piątek, 25 lutego 2011, 01:41

Re: Funkcja IF

Postprzez Morfidon » wtorek, 5 kwietnia 2011, 22:43

Pierwsza myśl:
Zrób dwie tablice, które będą przetrzymywać odpowiednio tymczasowo id oraz nazwe uprzednio pobranych przedmiotów z tabeli przedmioty.
Następnie pobierz wszystkich uczniów z tabeli uczniowie. Utwórz pętle, która przejdzie przez "każdego ucznia" wypisując imię, nazwisko. W tej samej pętli pobierz z bazy danych przy pomocy id_ucznia wszystkie jego oceny z tabeli oceny + stwórz pętlę w pętli, która będzie przechodziła przez długość tablicy tymczasowej, która przechowuje id oraz nazwe przedmiotów. Porównuj id_przedmiotu z tymczasowej tablicy do id_przedmiotu z tabeli oceny, co pozwoli Ci wypisać z tymczasowej tablicy odpowiednią nazwę oraz ocenę.
Morfidon
Administrator
Administrator
 
Posty: 593
Dołączył(a): wtorek, 5 sierpnia 2008, 21:48

Re: Funkcja IF

Postprzez Lenson » wtorek, 5 kwietnia 2011, 23:29

Troszkę zamieszane :> Nie do konca rozumiem
Lenson
Bywalec
Bywalec
 
Posty: 67
Dołączył(a): piątek, 25 lutego 2011, 01:41

Re: Funkcja IF

Postprzez Morfidon » środa, 6 kwietnia 2011, 09:25

Przeczytaj to wolniej to zrozumiesz ;) Zamieniaj kolejno każde zdanie na programistyczną wersję. Jeśli popatrzysz się na to z miną "wtf" i nie spróbujesz to raczej tego nigdy nie napiszesz, próbuj ;)
Morfidon
Administrator
Administrator
 
Posty: 593
Dołączył(a): wtorek, 5 sierpnia 2008, 21:48

Re: Funkcja IF

Postprzez Lenson » środa, 6 kwietnia 2011, 12:46

Spoko spoko ^^ Trochę mi podpowiedziałeś że mogę użyć do tego tablice. Z tym że jednak chyba opracuje swój własny kodzik który będzie działał podobnie ^^
Lenson
Bywalec
Bywalec
 
Posty: 67
Dołączył(a): piątek, 25 lutego 2011, 01:41


Powrót do PHP

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 gości

cron