Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [mysql][php] Nie wykrywa rekordu, [mysql][php] Nie wykrywa rekordu
outsider
post
Post #1





Grupa: Zarejestrowani
Postów: 267
Pomógł: 36
Dołączył: 8.08.2008

Ostrzeżenie: (0%)
-----


Witam

W PHP juz troche siedze, i jeszcze nie mialem problemu aby skrypt nie umial znalezc ISTNIEJACEGO rekordu w bazie...

Kawalek kodu

Kod
</P><P>$imie_nazwisko = $_SESSION['imie']." ".$_SESSION['nazwisko'];</P><P>$query = "SELECT * FROM wiadomosci WHERE do='$imie_nazwisko' ORDER BY data DESC;";</P><P>$wynik = mysql_query($query);</P><P>


Dajac echo przed $imie_nazwisko; php podaje mi dobre dane, takie ktore istnieja. Jest to kawalek kody skrzynki odbiorczej, nie trzeba chyba tlumaczyc, pole do zawiera informacje o adresacie, czyli imie i nazwisko. Dodajac nawet recznie rekord, dana osoba nie widzi wiadomosci ktore zostalo do niej napisane :| Dzieje sie to tylko z 1 osoba, nie wiem dlaczego. $_SESSION napewno zawiera info o danych... Nie wiem jak to bardziej wytlumaczyc, jest to mozliwe ze jakis ciag znakow (polskich od a-z) zakluca pobieranie rekordow ? Dajac echo po $wynik = mysql_query($query); otrzymuje komunikat Resource id #16 - napewno jest dany rekord ktory spelnia warunek. 

Prosze o jaka rade bo nie wiem co robic (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Pozdrawiam

@EDIT:

Dodam ze wpisalem imie i nazwisko tej osoby recznie:
WHERE do='Imie Nazwisko'
I wszystko dziala :| Teraz chyba ktos mi pomoze (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) mam taka nadzieje

@EDIT2:

Juz powoli dochodze do tego. Zmienilem zmienna:
$imie_nazwisko = $_SESSION['imie']." ".$_SESSION['nazwisko'];
na
$imie_nazwisko = $_SESSION['imie']."".$_SESSION['nazwisko'];
- usunolem bialy znak pomiedzy " i ", teraz dla tej osoby wszystko chodzi, ale dla inncyh niet (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

@EDIT3:

Funckja trim() nic nie daje, znowu jest to samo, dla tej osoby widac wiadomosci dla reszty nie :| I na odwrot - jak dodam bialy znak pomiedzy ""

Ten post edytował *OuTSideR* 24.10.2008, 15:52:06
Go to the top of the page
+Quote Post
JoShiMa
post
Post #2





Grupa: Zarejestrowani
Postów: 1 374
Pomógł: 149
Dołączył: 1.03.2006

Ostrzeżenie: (0%)
-----


A polskie znaki nie mają z tym nic wspólnego?

Tak na marginesie. Nie lepiej przechowywać w sesji ID usera i po nim szukać?
Go to the top of the page
+Quote Post
outsider
post
Post #3





Grupa: Zarejestrowani
Postów: 267
Pomógł: 36
Dołączył: 8.08.2008

Ostrzeżenie: (0%)
-----


Ale ja lubie PHP (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) Taki kod dziala dla wszystkich uzytkownikow:

WHERE do=' ".trim($_SESSION['imie'])." ".trim($_SESSION['nazwisko'])." '

Temat mozna zamknac.



Cytat(JoShiMa @ 24.10.2008, 16:51:20 ) *
A polskie znaki nie mają z tym nic wspólnego?

Tak na marginesie. Nie lepiej przechowywać w sesji ID usera i po nim szukać?


Polskie znaki nie, sam nie wiem do konca co bylo nie tak, ale chyba cos z bialym znakiem / spacja. Mam ID usera w sesji, ale tak dla mnie jest wygodniej, mniej kodu (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
JoShiMa
post
Post #4





Grupa: Zarejestrowani
Postów: 1 374
Pomógł: 149
Dołączył: 1.03.2006

Ostrzeżenie: (0%)
-----


Cytat(*OuTSideR* @ 24.10.2008, 16:56:54 ) *
Mam ID usera w sesji, ale tak dla mnie jest wygodniej, mniej kodu (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

Kodu może mniej, ale dla bazy z pewnością niej est to wygodniej. Lepiej się od razu uczyć pisać prawidłowo (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
outsider
post
Post #5





Grupa: Zarejestrowani
Postów: 267
Pomógł: 36
Dołączył: 8.08.2008

Ostrzeżenie: (0%)
-----


Czyli proponujesz aby nie przechowywac takich danych w sesji, tylko jesli sa potrzebne dzieki ID wyciagac je z bazy ?
Go to the top of the page
+Quote Post
nevt
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

Ostrzeżenie: (0%)
-----


w php może i trochę siedzisz, ale w MySQL zdecydowanie nie... w MySQL wyrazy DO i DATA są zastrzeżone, zatem jeżeli masz pola lub tabele o takiej nazwie musisz je ująć w `odwrócone apostrofy`. a najlepiej nabrać zwyczaju umieszczania w nich wszystkich nazw pól, tabel i baz - wtedy po prostu nie musisz się zastanawiać, czy dane słówko jest zastrzeżone, czy nie. zatem:
  1. SELECT * FROM `wiadomosci` WHERE `do`='$imie_nazwisko' ORDER BY `data` DESC;

powodzenia.
Go to the top of the page
+Quote Post
outsider
post
Post #7





Grupa: Zarejestrowani
Postów: 267
Pomógł: 36
Dołączył: 8.08.2008

Ostrzeżenie: (0%)
-----


Dzieki wielkie (IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif) No racja, zawsze jak widze zastrzezone nazwy to zawsze je tylko przelece (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Jak zrobic te odwrocone apostrofy ?
Go to the top of the page
+Quote Post
thm
post
Post #8





Grupa: Zarejestrowani
Postów: 52
Pomógł: 10
Dołączył: 6.10.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


o_O palcami !
Go to the top of the page
+Quote Post
nevt
post
Post #9





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

Ostrzeżenie: (0%)
-----


Cytat
Jak zrobic te odwrocone apostrofy ?

masz 2 możliości:
1. poszukać znaczka ` na klawiaturze (podpowiem - blisko Escape...)
2. skopiować sobie z mojego poprzedniego postu...

(IMG:http://forum.php.pl/style_emoticons/default/smile.gif) (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
outsider
post
Post #10





Grupa: Zarejestrowani
Postów: 267
Pomógł: 36
Dołączył: 8.08.2008

Ostrzeżenie: (0%)
-----


faktycznie, nigdy go nie uzywalem (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

Mozna zamknac
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 21:53