Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MYSQL][PHP] wyświetlanie wyniku z zapytania
Forum PHP.pl > Forum > Przedszkole
MartInR
Witam.

Mój problem polega na tym że mam zapytanie MYSQL które w PhpMyAdmin wykonuje się prawidłowo, czyli zwraca to co powinno, 1 rekord.
Niestety w PHP nie mogę wyświetlić żadnego pola z otrzymanego rekordu. Po prostu się nic nie wyświetla. Zapytanie dotyczy pobrania id rekordu w którym znajduje się tekst. Tekst zawiera znaki polskie. Dalsze informacje poniżej.

  1. $conn=mysql_connect('localhost','root','') or die ('Nie mozna połączyć się z bazą danych');
  2.  
  3. //kodowanie pliku iso-8859-2, dlatego SET na latin2
  4. mysql_query('SET CHARSET "latin2"');
  5. mysql_select_db('forum',$conn) or die ('Nie można wybrać bazy danych');
  6.  
  7. //zmienna $naz_dzialu jest to tekst z polskimi znakami
  8. //porównywanie napisów w bazie danych utf8_polish_ci
  9. $zap='select * from dzialy where temat=\''.$naz_dzialu.'\'';
  10. $idDzialu=mysql_query($zap,$conn);
  11. $row=mysql_fetch_row($idDzialu);
  12. echo $zap;
  13.  
  14. //nic się nie wyświetla, niezależnie do którego pola z rekordu wynikowego się odwołam
  15. echo $row[0];


No mi już ręce opadają.
Proszę o pomoc.
cykcykacz
Tu masz dobre przykłady przeczytaj sobie całe: http://www.w3schools.com/php/php_mysql_where.asp
MartInR
Nie wiem jak to ma mi pomóc, zapytanie MYSQL-owe raczej jest ok. PhpMyAdmin je wykonuje i zwraca pożądany wynik.
Problem jest z wyświetleniem któregokolwiek pola w rekordu otrzymanego z wyniku z Admina.
Żadnych komunikatów o błędach nie ma.

echo $row[0];

Powinno zwrócić to co jest w pierwszym polu rekordu, a nie wyświetla się nic.
bercow
Podam Ci przyklad jaki mam u mnie, moze on Ci pomoze, powinien, mocno
  1. <?php
  2.  
  3. function connection() {
  4. require 'config.php';
  5. @mysql_connect($mysql_server, $mysql_admin, $mysql_pass)
  6. or die('Brak połączenia z serwerem MySQL.');
  7. @mysql_select_db($mysql_db)
  8. or die('Błąd wyboru bazy danych.');
  9.  
  10. }
  11. connection();
  12. ?>


  1. <?
  2. require "connection.php";
  3.  
  4. $visible = "1";
  5.  
  6. $query = mysql_query("SELECT id_banner FROM banner WHERE visible='".$visible."'") or die('Błąd zapytania');
  7. if(mysql_num_rows($query) > 0) {
  8. while($b = mysql_fetch_assoc($query)) {
  9. echo = $b['id_banner'];
  10. }
  11. }



MartInR
Tłumacze jeszcze raz problem pojawia się dopiero gdy w zapytaniu użyje zmiennej która przechowuje tekst z polskimi znakami.
Zapytanie ma zwrócić rekord gdzie ten tekst się znajduje.

Dalej potrzebne jest mi id tego rekordu.
I wszelkie próby wyświetlenia tego id nic nie dają, nie wyświetla mi nic.

Powyżej podajesz przykład ze zmienna liczbową, w takim przypadku moje zapytanie też działa (ze zmienna liczbową przechowywaną w innym polu).
Problem pojawia się przy tekście.

Nie wiem jak mam lepiej to wytłumaczyć.

A tak poza tym to echo = $b['id_banner']; wywali błąd. Skąd to =, chyba błąd.
bercow
tego = nie powino byc, nie wiem skad sie wielo tongue.gif ale reszta dziala
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.