![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 23.12.2011 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Jestem w trakcie tworzenia skryptu wyświetlania profilu danego użytkownika. I mam mały problem, a mianowicie. 1. Moja rejestracja składa się z trzech pól, a mianowicie:
2. Chciałbym, aby zarejestrowany użytkownik po rejestracji i zalogowaniu mógł dodać w edycji profilu takie dane jak:
3. Czy muszę do bazy danych dodawać kolejne zapytania jeśli mam w niej tylko, a jeśli chcę żeby wyświetlało jeszcze Imię, miejscowość i datę urodzenia?
4. Aby był wyświetlany profil będzie od tego specjalna strona np. www.nazwaStrony.pl/profil.php/loginUżytkownika Jak można coś takiego stworzyć? Ten post edytował WebspyPL 24.12.2011, 13:12:17 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 486 Pomógł: 101 Dołączył: 27.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
2. warunek od zalogowania + formularz
3. SELECT * 4. get + modrewrite w tym przypadku |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 23.12.2011 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 486 Pomógł: 101 Dołączył: 27.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
Tak. robisz formularz, gdzie value inputów to pobrane z bazy odpowiedniki dla nich. po zasubmitowaniu dajesz update tych pól na wartości inputów.
http://lmgtfy.com/?q=htacces+mod_rewrite |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 23.12.2011 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Mam nadzieje, że dobrze zrozumiałem.
Tak wygląda ustawienia.php
Czy tak to ma wyglądać? ![]() |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 486 Pomógł: 101 Dołączył: 27.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
To zwykły formularz nie mogę nic powiedzieć. A poza tym, najpierw sprawdź czy działa a później pisz tutaj o ewentualnych problemach.
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 23.12.2011 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Dobra olejmy na razie ustawienia. Na razie ważniejszy jest profil.
Cytat 4. Aby był wyświetlany profil będzie od tego specjalna strona np. www.nazwaStrony.pl/profil.php/loginUżytkownika Jak można coś takiego stworzyć? Jak rozumiem mam funkcją GET wyciągnąć z bazy login użytkownika? |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 467 Pomógł: 39 Dołączył: 7.11.2010 Skąd: Raz tu, raz tam Ostrzeżenie: (30%) ![]() ![]() |
jak juz to profil.php?login=$login lub ?id=$id_usera a jak chcesz przyjazne linki to kolega wyzej podal.
Ten login masz z bazy wrzucic do GET -------------------- |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 23.12.2011 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
ciekawskiii, jak rozumiem dobrze to www.adresStrony.pl/profil.php?login=NazwaProfilu ?
Wrzucić z bazy do GET? Czyli po prostu GET ma pobrac login? |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 467 Pomógł: 39 Dołączył: 7.11.2010 Skąd: Raz tu, raz tam Ostrzeżenie: (30%) ![]() ![]() |
w profilu
i gdzies tam link do profilu profil.php?login=$login -------------------- |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 23.12.2011 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Mam nadzieje, że dobrze zrozumiałem.
Plik profil.php
A, tutaj błąd po wejściu w nazwaStrony.pl/profil.php Cytat Warning: mysql_query() [function.mysql-query]: Access denied for user 'webspy'@'localhost' (using password: NO) in /home/webspy/public_html/profil.php on line 12 Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /home/webspy/public_html/profil.php on line 12 Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/webspy/public_html/profil.php on line 13 Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/webspy/public_html/profil.php on line 17 Cytat i gdzies tam link do profilu profil.php?login=$login Gdzieś tam to znaczy? Np. chciałbym, aby po kliknięciu na LOGIN przenosiło automatycznie do profilu. Login profilu jest wyświetlany na stronie głównej w ten sposób:
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 467 Pomógł: 39 Dołączył: 7.11.2010 Skąd: Raz tu, raz tam Ostrzeżenie: (30%) ![]() ![]() |
nie masz połączenia z bazą danych. Łączysz sie w ogóle?!
Gdzies tam to znaczy gdzie chcesz. Skoro chcesz zrobic link do profilu to przed linkiem wyciagasz login z bazy i dodajesz go do linku ?login=$login_z_bazy lub ?login=$_SESSION["login"]; dla Twojego profilu Ten post edytował ciekawskiii 24.12.2011, 14:58:22 -------------------- |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 23.12.2011 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
A, faktycznie zapomniałem o tym..
Dodałem łączenie, ale po wejściu na nazwaStrony.pl/profil.php - nie mam już żadnego błędu, ale wylogowuje mnie ze strony i muszę się ponownie logować i potem nadal to samo. profil.php
Ten post edytował WebspyPL 24.12.2011, 14:57:38 |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 467 Pomógł: 39 Dołączył: 7.11.2010 Skąd: Raz tu, raz tam Ostrzeżenie: (30%) ![]() ![]() |
masz dwa razy session_start i ob_start uhh popatrz troche a na koncu chyba brakuje ob_end_flush();
mozesz przed getem dodac warunek, jesli get nie istnieje
-------------------- |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 23.12.2011 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
To niestety nic nie dało, bo wylogowuje nadal po wejściu na nazwaStrony.pl/profil.php
profil.php
Cytat Skoro chcesz zrobic link do profilu to przed linkiem wyciagasz login z bazy i dodajesz go do linku ?login=$login_z_bazy lub ?login=$_SESSION["login"]; dla Twojego profilu Oto kod, ale coś nie działa, bo nie przekierowuje mnie na login.. :/
ref Ten post edytował WebspyPL 24.12.2011, 15:11:07 |
|
|
![]()
Post
#16
|
|
![]() Grupa: Zarejestrowani Postów: 486 Pomógł: 101 Dołączył: 27.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
1. linijki 6-9 wywal, zupełnie niepotrzebne.
2. tradycyjnie Twój kod jest narażony na sql injection. potraktuj $login mysql_real_escape_stringiem 3. w profil.php nie ma błędu, pokaż header.php i inc/db.php. |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 23.12.2011 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
header.php
inc/db.php
$mysql_login = 'login_uzytkownika'; $mysql_haslo = 'haslo_uzytkownika'; $mysql_baza = 'baza_uzytkownika'; Zmieniłem celowo. Cytat 1. linijki 6-9 wywal, zupełnie niepotrzebne. Z ktorego kodu? Cytat 2. tradycyjnie Twój kod jest narażony na sql injection. potraktuj $login mysql_real_escape_stringiem zaraz się tym zajme. Cytat Skoro chcesz zrobic link do profilu to przed linkiem wyciagasz login z bazy i dodajesz go do linku ?login=$login_z_bazy lub ?login=$_SESSION["login"]; dla Twojego profilu Oto kod, ale coś nie działa, bo nie przekierowuje mnie na login.. :/
Ten post edytował WebspyPL 24.12.2011, 15:58:30 |
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 467 Pomógł: 39 Dołączył: 7.11.2010 Skąd: Raz tu, raz tam Ostrzeżenie: (30%) ![]() ![]() |
popraw link na
if(isset... daj na początku pliku a nie gdzieś tam w środku. Najpierw sprawdzasz czy get istnieje a pozniej dopiero czy login istnieje Ten post edytował ciekawskiii 24.12.2011, 15:59:03 -------------------- |
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 23.12.2011 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Ciekawski, dzięki śmiga.
header.php
inc/db.php
$mysql_login = 'login_uzytkownika'; $mysql_haslo = 'haslo_uzytkownika'; $mysql_baza = 'baza_uzytkownika'; Zmieniłem celowo. Cytat 1. linijki 6-9 wywal, zupełnie niepotrzebne. Z ktorego kodu? Cytat 2. tradycyjnie Twój kod jest narażony na sql injection. potraktuj $login mysql_real_escape_stringiem zaraz się tym zajme. rf |
|
|
![]()
Post
#20
|
|
![]() Grupa: Zarejestrowani Postów: 486 Pomógł: 101 Dołączył: 27.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
z tego kodu pod
Cytat Oto kod, ale coś nie działa, bo nie przekierowuje mnie na login.. :/ w miejscu tego błędu z wylogowaniem zrób print_r($_SESSION) i się dowiesz co nie gra najprawdopodobniej. nie pytaj jak tego używać, znajomość tablic wystarczy i manual. ps. nie wiem co Ty masz z tym echo '', wystarczy zwykły operator negacji, który widzę, że znasz, aby uniknąć tego. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 11:10 |