Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [mysql]Problem z wyszukiwaniem rekordów
Forum PHP.pl > Forum > Bazy danych
Macok
  1. $wynik = mysql_query("SELECT phpbb_posts.post_time, phpbb_topics.topic_replies,
  2. phpbb_topics.forum_id, phpbb_topics.topic_id,
  3. phpbb_posts_text.post_subject, phpbb_posts_text.post_text, phpbb_posts_text.bbcode_uid,
  4. phpbb_users.user_id, phpbb_users.username
  5. FROM phpbb_topics, phpbb_users, phpbb_posts, phpbb_posts_text
  6. WHERE phpbb_topics.topic_first_post_id = phpbb_posts.post_id AND phpbb_topics.topic_first_post_id = phpbb_posts_text.post_id AND phpbb_posts.post_id = phpbb_posts_text.post_id AND phpbb_posts.poster_id = phpbb_users.user_id AND phpbb_posts_text.post_text LIKE "%t%" AND phpbb_topics.forum_id <> 1 ORDER BY phpbb_topics.topic_id DESC LIMIT 0, 3;");
Kod powinien pobierac rekordy z bazy danych phpbb. Niestety nie dziala. Przyczyną błędu jest ta czesc kodu (odpowiadajaca za wyswietlanie tylko tych postow w ktorych tekscie znajduje sie litera "t").
  1. phpbb_posts_text.post_text LIKE "%t%"
Po jej usunieciu wszystko dziala jak nalezy. Dlaczego kod wywoluje blad i co zrobic aby skrypt nie wybieral rekordow w ktorych nie znajduje sie litera "t"?
Fistach
ja bym użył ' ' zamiast " " gdyż zaraz po rozpoczęciu zapytania:

  1. <?php
  2. ...ysql_query("SELECT phpbb...
  3. ?>


Używasz " a niedopusczalne jest stosowanie znaków " wewnątrz np:

  1. <?php
  2. print "Tomek "zajefajny" jest";
  3. ?>


Aby użyć tych znaków trzeba przed nim wklepać \ np:

  1. <?php
  2. print "Ali kot "Burek" jest rudy";
  3. ?>
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.