Wyciąganie danych o użytkowniku z bazy


(Croos22) #1

(ra-v) #2

Z kodu rejestrującego "mysql_close($link_id);" dajemy na koniec skryptu, żeby wtedy zamknął połączenie.

Przykładowy uzytkownicy.php (bez polskich znaków) - wypisuje nr użytkownika i login.

$link_id = mysql_connect("sql1.unl.pl", "xxxx", "xxxx");

mysql_select_db("test");


$wynik = mysql_query("SELECT usernumber,username FROM `user`");

while( $rekord = mysql_fetch_assoc($wynik) ){

  echo $rekord['usernumber'].': '.$rekord['username'].'
';

}


mysql_close($link_id);

Do czeko ma to służyć?

Oczywiście można dawać zapytania MySQLowe. Musi być oczywiście bez funkcji i zmiennych PHP. Np z "mysql_query("zapytanie bez zmiennych php")" w phpMyAdmin wstawiasz zapytanie bez zmiennych php.

PS. możliwe że są błędy w moim kodzie, to musisz sam sprawdzić.


(Croos22) #3

Będzie to miało na celu przypisanie użytkownikowi unikalnego identyfikatora a nie żeby on sam sobie wybierał.


(Kontakt) #4

Nie wiem czy dobrze rozumiem, ale czy nie lepiej użyć id z auto_increment?


(Croos22) #5

Odstawmy to na drugi plan ponieważ nie mam mam pewności czy formularz rejestruje nowego użytkownika.

Może mi go ktoś sprawdzić?Jeśli wpisane dane dodaje do bazy to czy można je w jakiś sposób podejrzeć? Wtedy będę spokojny.


(matiit) #6

Jakimś phpmyadminem


(Croos22) #7

Zajrzałem do działu tabel i nie mam tam takiej wzmianki.A ten kod jest prawidłowy?

CREATE TABLE user (

    -> usernumber MEDIUMINT(10) DEFAULT '0' NOT NULL AUTO_INCREMENT,

    -> username VARCHAR(30) NOT NULL,

    -> userid VARCHAR(10) BINARY NOT NULL,

    -> userpassword VARCHAR(15) BINARY NOT NULL,

    -> PRIMARY KEY (userid),

    -> UNIQUE usernumber (userbnumber)

    -> );

Aby stworzyć tabele trzeba jeszcze coś zrobić prócz wklejenia tego?Wystarczy odpowiedź tak/nie.


(ra-v) #8
CREATE TABLE user (

usernumber MEDIUMINT(10) NOT NULL AUTO_INCREMENT,

username VARCHAR(30) NOT NULL,

userid VARCHAR(10) BINARY NOT NULL,

userpassword VARCHAR(15) BINARY NOT NULL,

PRIMARY KEY (userid),

UNIQUE usernumber (usernumber)

)

To wklejasz do phpMyAdmina i powinna pojawić się nowa tabela. A jak sprawdzić czy aktalizacja jest ok? To co niżej powinno sie albo wykonać albo wywalić błąd.

$pytanie = "INSERT ..... ";

mysql_query($pytanie) or die(mysql_error().'
'.$pytanie);

(Croos22) #9

Dobrze tabela została utworzona ale prawdopodobnie formularz nie rejestruje nowych użytkowników.Ja nie jestem na takim poziomie umiejętności aby go sprawdzić dlatego zwracam się z prośbą do was.Dziękuje.


(matiit) #10

Można przerobić żeby działał... ale... ten kod ma być na jakiejś ogólnodostępnej stronie? Bo jest podatny np. na SQL Injection... Lepiej napisać ładnie, od nowa.


(Croos22) #11

No raczej tak.

Nie wiem czy mnie stać.