Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]DISTINCT - powtarzające się wpisy
Forum PHP.pl > Forum > Przedszkole
Dingo
Otóż mam taki błąd bo znowu zapytania zadać nie umiem.
Cytat
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/dingo/domains/generujszablon.pl/public_html/optymalni/index.php on line 371


Tak wygląda fragment kodu:
  1. $zapytanie11 = "SELECT DISTINCT(nazwa_potrawy, opis, proporcje_t, proporcje_w) FROM potrawy WHERE login = '$login' ORDER BY id";
  2. $idzapytania11 = mysql_query($zapytanie11);
  3. while ($potrawa = mysql_fetch_array($idzapytania11))
  4. {
  5. echo ' <tr>
  6. <td class="center" style="height: 20px; width: 150px;">'.$potrawa['nazwa_potrawy'].'</td>
  7. <td class="center" style="height: 20px; width: 280px;">'.$potrawa['opis'].'</td>
  8. <td class="center" style="height: 20px">1:'.$potrawa['proporcje_t'].':'.$potrawa['proporcje_w'].'</td>
  9. </tr>';
  10. }


Więc chciałem wybrać sobie obojętnie jaki wpis z 3 powtarzających się wpisów (no i jak by było więcej ale o innej nazwie to 2 wiersz by tworzyło). Powtarzają się w nich 4 rzeczy, więc wymieniłem je w funkcji SELECT. Jednak wywala taki błąd jak podałem na początku. Co może być tego przyczyną? Da się w ogóle tak zrobić?

Tabela:
marcio
Nie rozumiem co chcesz zrobic ale w order by id powinienes dac asc albo desc chyba ze sql daje defaultowa wartosc
Dingo
ORDER BY id przypadkowo się znalazło tam. Rzeczywiście nie powinno go tam być. A co chcę uzyskać? Chcę wyciągnąć 1 wpis z tych 3 wpisów. Obojętnie jaki. No i jak dojdą jeszcze kolejne wpisy to też 1 z tych nowych (np. będzie 5 prawie identycznych wpisów, a mi zależy na 4 dancyh, które są identyczne dla tych wpisów)

@Edit
Jeżeli nie będzie rozwiązania to po prostu 2 tabelę stworzę podczas tworzenia potrawy będzie dodawało potrzebne dane do tej tabeli, aby nie było problemów. No ale jak da się rozwiązać to proszę o pomoc.
zelu
  1. $idzapytania11 = [url="http://www.php.net/mysql_query"]mysql_query[/url]($zapytanie11) or die mysql_error();
Sprawdź jaki błąd zwraca Ci mysql, bo najprawdopodobniej tu leży problem.

Pozdro
Dingo
Chyba coś nie tak kazałeś mi wstawić.
Cytat
Parse error: syntax error, unexpected T_STRING in /home/dingo/domains/optimalcal.pl/public_html/index.php on line 1370


Takie coś miało być? (nie działa właśnie taki błąd wywala).
  1. $zapytanie11 = "SELECT DISTINCT(nazwa_potrawy, opis, proporcje_t, proporcje_w) FROM potrawy WHERE login = '$login' ORDER BY id"; $idzapytania11 = mysql_query($zapytanie11) or die mysql_error();
potreb
or die(mysql_error());
Dingo
Operand should contain 1 column(s)
zelu
Sprawdź dobrze jak działa DISTINCT i jakie ( w sensie ile) "argumenty" przyjmuje winksmiley.jpg

Pozdro
Dingo
No to problem trzeba będzie rozwiązać inaczej. Dzięki.
zelu
Proponuję poczytać o GROUP BY smile.gif

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