Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> rzuc okiem co jest zle, problem po upgrade MySQL
devint
post
Post #1





Grupa: Zarejestrowani
Postów: 68
Pomógł: 0
Dołączył: 16.05.2005

Ostrzeżenie: (10%)
X----


hej

upgreadowalem MySQL i niedowierzam, nie chodzi mi prosta autentykacja ktora dzialala bez zarzutu wczesniej

walczac z tym problem sprowadzilem do tego ze ze skryptu php wprowadzam najprostsze dane do mysql
a pozniej chce je zweryfikowac tez z poziomu skryptu.

1) wpis do bazy na sztywno zeby bylo widac gdzie blad:
  1. <?php
  2. $querry = mysql_query("insert into admin
  3.  
  4. values('admin',password('admin'))");
  5. ?>

Dodaje ladnie w mysql monitoor widze dodane komorki i zaszyfrowane haslo dla admina

komorki to jak widac, login i password, obie char(16) not null - nic specjalnego
  1. CREATE TABLE admin (
  2. login char(16) NOT NULL PRIMARY KEY,
  3. password char(16) NOT NULL
  4. );


2)proba pobrania danych i wyswietlenia:
  1. SELECT *
  2. FROM adm<span style='color:green'>in WHERE login='admin' AND password = password('admin');

from admin - SQL code cos zle wyswietla, tam nie ma bledu ponizej jeszcze raz dla pewnosci to samo wklejam:
Kod
select * from admin
                         where login='admin'
                         and password = password('admin');

Czy to z poziomu php do mysql_fetch_array - tylko tak na chwilke zeby wyswietlilo
Czy tez z poziomu MySQL monitor i PHPMyAdmin nie daje rezultatu.

BAZA MySQL 4.1.10a-nt (dlatego taka bo taka mam na hostingu).
podejrzewam ze problem moze lezec w jakichs ustawieniach konfiguracyjnych bazy - szyfrowanie hasel - ale do tej pory nie mialem z tym przyjemnosci.

dziki za wszelkie naprowadzanie
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 561
Pomógł: 6315
Dołączył: 27.12.2004




http://dev.mysql.com/doc/refman/4.1/en/password-hashing.html

http://dev.mysql.com/doc/refman/4.1/en/app...ssword-use.html

passowrd zwraca wiecej niz 16 znakow.

uzywaj md5 php ktore zawsze zwraca 32 znaki
Go to the top of the page
+Quote Post
devint
post
Post #3





Grupa: Zarejestrowani
Postów: 68
Pomógł: 0
Dołączył: 16.05.2005

Ostrzeżenie: (10%)
X----


zmienilem na md5
ale efekt jest nadal tragiczny

  1. INSERT
  2. INTO adm<span style='color:green'>in VALUES('trzy' , md5('trzy'));
  3.  
  4. SELECT *
  5. FROM adm<span style='color:green'>in WHERE login='trzy' AND user_pass=md5('trzy');


to samo jeszcze raz:
Kod
INSERT into admin VALUES('trzy' , md5('trzy'));

SELECT * FROM admin WHERE login='trzy' and user_pass=md5('trzy');


zwraca
  1. Empty SET


wywolywane w monitorz, ze skryptu i phpmyadmina
nawet zmienilem kolumne w tabeli na user_pass zeby sie przypadkiem nie gryzlo z password

oczywiscie pierwsza linijka SQL dziala i jak daje select * from admin to widze dodane wpisy! (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?

help
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 561
Pomógł: 6315
Dołączył: 27.12.2004




1)a zmienieles rozmiar pola password na 32 znaki?
2) i uzywaj md5 z php, ale to to juz moze nie gra takiej roli
Go to the top of the page
+Quote Post
devint
post
Post #5





Grupa: Zarejestrowani
Postów: 68
Pomógł: 0
Dołączył: 16.05.2005

Ostrzeżenie: (10%)
X----


uffff

no ladnie sie zagrzalem...


dzieki dziala

po zmianie na char(32)...
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: 23.12.2025 - 04:35