Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] 4 zapytania do jednej tabeli
Forum PHP.pl > Forum > Przedszkole
świeżak
Cześć,

Kolejny raz zwracam się do was o prośbę, nie musi to być pomoc w stylu DAJCIE MI GOTOWCA, wystarczy naprowadzenie a sam poszukam rozwiązania. Ponieważ szukam już około 90 minut i ciągle bez efektów kieruję swoje pytanie do was.

Więc tak mam tabelę:
Kod
CREATE TABLE `PROFIL_aktywnosc`(
`id` INT(9) NOT NULL AUTO_INCREMENT PRIMARY KEY,
`idUzytkownik` INT(9) NOT NULL,
`waga` ENUM('dodatnie', 'ujemne') NOT NULL,
`punkty` INT(9) NOT NULL,
`dataDodania` VARCHAR(35) NOT NULL,
`tytul` TEXT NOT NULL,
`tresc` TEXT NOT NULL,
`typ` ENUM('pytanie', 'odpowiedz', 'spolecznosc') NOT NULL
)ENGINE = MYISAM;



W której zapisuję aktywność użytkowników i wyświetlam wszystkie dane na profilu.

Zrobiłem jednak w jQuery zakładki, które dzielą wyniki na typ='pytanie' , typ='odpowiedz', typ='spolecznosc' oraz cała aktywność (połączenie wszystkich typów i wyświetlanie według daty dodania).

Wyniki wyświetlam w taki sposób:
Kod
/** AKTYWNOŚĆ WSZYSTKO **/
        echo '<div id="aktywnosc-wszystko">    ';
        
        $wyciag=mysql_query("SELECT * FROM PROFIL_aktywnosc WHERE idUzytkownik='$id' LIMIT $ilosc");
        while($wyswietl=mysql_fetch_array($wyciag)) {
            if($wyswietl['waga'] == 'dodatnie') { $ilosc = '+ '.$wyswietl['punkty'].'';} else { $ilosc = '- '.$wyswietl['punkty'].'';}
            $data=$wyswietl['dataDodania'];
            $data=strtotime($data);
            $time=getDiff($data);
        
            echo '<div class="aktywnosc">
                    <strong class="'.$wyswietl['waga'].'">'.$ilosc.' €P</strong>
                    <div class="szczegoly">
                        '.$wyswietl['tytul'].'
                        <span class="right">'.$time.'</span>

                        '.$wyswietl['tresc'].'
                    </div>
                </div>';

        }
        echo '</div>';
        /** KONIEC AKTYWNOŚCI WSZYSTKO **/



Wszystko działa pięknie i ładnie, jednak kiedy dodaję sobie aby moja funkcja wyświetlała mi wyniki do zakładki którą stworzyłem (w tej zakładce mają wyświetlać się wyniki o typ='pytanie'

I dodaję kod:

Kod
/** AKTYWNOŚĆ PYTANIA **/
        echo '<div id="aktywnosc-pytania">    ';
        
        $wyciag3=mysql_query("SELECT * FROM PROFIL_aktywnosc WHERE idUzytkownik='$id' AND typ='pytanie' LIMIT $ilosc");
        while($wyswietl3=mysql_fetch_array($wyciag3)) {
            if($wyswietl3['waga'] == 'dodatnie') { $ilosc = '+ '.$wyswietl3['punkty'].'';} else { $ilosc = '- '.$wyswietl3['punkty'].'';}
            $data=$wyswietl3['dataDodania'];
            $data=strtotime($data);
            $time=getDiff($data);
        
            echo '<div class="aktywnosc">
                    <strong class="'.$wyswietl3['waga'].'">'.$ilosc.' €P</strong>
                    <div class="szczegoly">
                        '.$wyswietl3['tytul'].'
                        <span class="right">'.$time.'</span>

                        '.$wyswietl3['tresc'].'
                    </div>
                </div>';

        }
        echo '</div>';
        /** KONIEC AKTYWNOŚCI PYTANIA **/


Jak widać podmieniłem $wyciag na $wyciag3 tak aby nie pobierało tego samego $wyswietl na $wyswietl3 aby wyświetlało nowe wyniki.
Zapytanie skonstruowane jest poprawnie.

Ale błąd polega moim zdaniem na tym że tworzę zapytanie(kopię) tego co wcześniej tylko dopisałem aby wyświetlało dane o określonym TYPIE.


W ten sposób otrzymuję błąd:
Cytat
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in ble/ble/ble/funkcje/profil.php on line 70


Gdzie w linii 70 znajduje się
Kod
while($wyswietl3=mysql_fetch_array($wyciag3)) {



Czy ktoś mógłby mi pomóc? Jeżeli błędem jest to że próbuję kilkukrotnie wyświetlać wyniki. To czy macie tylko radę w jaki sposób rozwiązać wyświetlanie wyników z jednego zapytania, ale z podziałem na 4 typy.
Główkuję i nic z tego nie wychodzi bo po prostu nigdy czegoś takiego nie robiłem i sobie troszkę prace utrudniłem, a teraz muszę to wykonać.

Jeżeli opisałem swój problem nie jasno, napisz czego nie rozumiesz postaram się wytłumaczyć smile.gif

Świeżak.


wookieb
Temat: Jak poprawnie zadac pytanie
DO WI DZE NIA
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.