Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Kod logowanie php.pewne braki.
kajok
post
Post #1





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 4.01.2008

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


Mam taki kod .logowanie.php
  1. <?php
  2. session_register("zalogowany");
  3.  
  4. if(empty($_SESSION["zalogowany"]))$_SESSION["zalogowany"]=0;
  5.  
  6. mysql_connect("localhost", "", "")or die("Nie można nawiązać połączenia z bazą");
  7. mysql_select_db("")or die("Wystąpił błąd podczas wybierania bazy danych");
  8.  
  9. function ShowLogin($komunikat=""){
  10. echo "$komunikat<br>";
  11. echo "<form action='index.php' method=post>";
  12. echo "Email: <input type=text name=login><br>";
  13. echo "Hasło: <input type=text name=haslo><br>";
  14. echo "<input type=submit value='Zaloguj!'>";
  15. echo "</form>";
  16. echo "Jeśli nie jesteś zarejestrowany, <a href='rejestruj.php'><B>tu znajdziesz formularz</B></a>";
  17. }
  18.  
  19. ?>
  20. <?php
  21. if($_GET["wyloguj"]=="tak"){$_SESSION["zalogowany"]=0;echo "Zostałeś wylogowany z serwisu";}
  22. if($_SESSION["zalogowany"]!=1){
  23. if(!empty($_POST["login"]) && !empty($_POST["haslo"])){
  24. if(mysql_num_rows(mysql_query("select * from users where user_login = '".htmlspecialchars($_POST["login"])."' AND user_haslo = '".htmlspecialchars($_POST["haslo"])."'"))){
  25. echo "Zalogowano poprawnie. <a href='index.php'>Przejdź na stronę główną</a>";
  26. $_SESSION["zalogowany"]=1;
  27. }
  28. else echo ShowLogin("Podano złe dane!!!");
  29. }
  30. else ShowLogin();
  31. }
  32. else{
  33. ?>
  34. Gratulacje! Zalogowałeś się pomyślnie! Masz teraz pełny dostęp do serwisu.
  35. <br><a href='index.php?wyloguj=tak'>wyloguj się</a>
  36. <?php
  37. }
  38. ?>
  39. <?php mysql_close(); ?>


do tego rejestruj.php
  1. <?php
  2. mysql_connect("localhost", "", "")or die("Nie można nawiązać połączenia z bazą"); //połączenie z bazą danych
  3. mysql_select_db("")or die("Wystąpił błąd podczas wybierania bazy danych");
  4.  
  5. function ShowForm($komunikat=""){ //funkcja wyświetlająca formularz rejestracyjny
  6. echo "$komunikat<br>";
  7. echo "<form action='rejestruj.php' method=post>";
  8. echo "Email: <input type=text name=login><br>";
  9. echo "Hasło: <input type=text name=haslo><br>";
  10. echo "<input type=hidden value='1' name=send>";
  11. echo "<input type=submit value='Zarejestruj mnie'>";
  12. echo "</form>";
  13. }
  14. ?>
  15.  
  16. <?php
  17. if($_POST["send"]==1){ //sprawdzanie czy formularz został wysłany
  18. if(!empty($_POST["login"]) && !empty($_POST["haslo"])){ //oraz czy uzupełniono wszystkie dane
  19. if(mysql_num_rows(mysql_query("select * from users where user_login='".htmlspecialchars($_POST["login"]."'"))))ShowForm("Użytkownik o podanym loginie już istnieje!!!"); // sprawdzanie czy użytkownik o podanej nazwie już istnieje
  20. else{
  21. mysql_query("insert into users values(NULL, '".htmlspecialchars($_POST["login"])."', '".htmlspecialchars($_POST["haslo"])."')"); // zapisywanie rekordu do bazy
  22. echo "Rejestracja przebiegła pomyślnie. Możesz teraz przejść do <a href='index.php'>strony głównej</a> i się zalogować.";
  23. }
  24. }
  25. else ShowForm("Nie uzupełniono wszystkich pól!!!");
  26. }
  27. else ShowForm();
  28. mysql_close(); //zamykanie połączenia z bazą
  29. ?>

I teraz mam pytanie jaki kod php wstawić do stron które chcę aby były dostępne tylko dla zalogowanych urzytkowników.

Druga sprawa co wstawić za kod aby odnośnik nie akceptował kupna gdy urzytkownik jest nie zalogowany To ten odnośnik.Wstawiłem narazie <a href="rejestruj.php"></a>
CZyli tak po zalogowaniu aby przechodził na tajną strone kupna która póżniej by łączyła do jakiegoś systemu sprzedaży.
<a href="rejestruj.php"> <img src="zakupguaranteed.jpg" alt="" border="0" width="160" height="32" /></a>

Te odnośniki są na stronie http://www.jackbetsports.com/guaranteed100.php

Ten :ZAKUP TERAZ.
Powód edycji: Proszę nie stosować pogrubienia przy listingach. /webdicepl
Go to the top of the page
+Quote Post
2 Stron V   1 2 >  
Start new topic
Odpowiedzi (1 - 19)
nithajasz
post
Post #2





Grupa: Zarejestrowani
Postów: 230
Pomógł: 27
Dołączył: 27.05.2008
Skąd: Warszawa

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


Po pierwsze wrzuć ten kod w odpowiedni tag bo jest marnie z jego czytelnością...
Go to the top of the page
+Quote Post
kajok
post
Post #3





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 4.01.2008

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


Myślę że teraz jest lepiej.Łączy z bażą pięknie ale ta reszta.Pomożesz? smile.gif
Go to the top of the page
+Quote Post
nospor
post
Post #4





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




Cytat
Myślę że teraz jest lepiej

Przeczytaj to:
Temat: PHPzapis and odbior
a szczegolnie moje prosby o stosowanie wlasciwego bbcode. potem popraw swoje i sam stwierdzisz ze jest lepiej smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
kajok
post
Post #5





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 4.01.2008

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


No ok.Poprawiłem to bbcode.I co pomożecie z moimi pytaniami.
Cytat

I teraz mam pytanie jaki kod php wstawić do stron które chcę aby były dostępne tylko dla zalogowanych urzytkowników.

Druga sprawa co wstawić za kod aby odnośnik nie akceptował kupna gdy urzytkownik jest nie zalogowany To ten odnośnik.Wstawiłem narazie <a href="rejestruj.php"></a>
CZyli tak po zalogowaniu aby przechodził na tajną strone kupna która póżniej by łączyła do jakiegoś systemu sprzedaży.
<a href="rejestruj.php"> <img src="zakupguaranteed.jpg" alt="" border="0" width="160" height="32" /></a>

Te odnośniki są na stronie http://www.jackbetsports.com/guaranteed100.php

Ten :ZAKUP TERAZ.
Go to the top of the page
+Quote Post
nithajasz
post
Post #6





Grupa: Zarejestrowani
Postów: 230
Pomógł: 27
Dołączył: 27.05.2008
Skąd: Warszawa

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


Cytat(kajok @ 31.05.2008, 21:24:40 ) *
No ok.Poprawiłem to bbcode.I co pomożecie z moimi pytaniami.


Kod w php a bbcode do sql tongue.gif

Co do sprawdzania czy jest zalogowany to możesz operować na sesjach

  1. <?php
  2. if($_SESSION['zalogowany']==1) { // funkcja tylko dla zalogowanych}
  3. ?>


Jeśli jest nie zalogowany, a chce wykonać operację tylko dla zalogowanych to dodaj else do powyższego ifa

  1. <?php
  2. else { header("Location: loguj.php"); }
  3. ?>


Nie pozwoli mu to nic zrobić bo przeniesie go do strony z logowaniem...
Go to the top of the page
+Quote Post
kajok
post
Post #7





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 4.01.2008

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


Zrobiłem tak
  1. <?php
  2. if($_SESSION['zalogowany']==1);
  3. else { header("Location: index.php"); }
  4. ?>


Zrobiłem tak nie wpuszcza na strone nie zalogowanego i tak jak pisałeś wywala go na index.php.
Ale gdy jestem zalogowany to też nie wpuszcza na stronę i pozostaje na index.php.





Jak zrobić żeby po zalogowaniu wpuszczał na strone nie dostępną dla nie zalogowanych.

Ten post edytował kajok 31.05.2008, 21:04:00
Go to the top of the page
+Quote Post
nithajasz
post
Post #8





Grupa: Zarejestrowani
Postów: 230
Pomógł: 27
Dołączył: 27.05.2008
Skąd: Warszawa

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


Cytat(kajok @ 31.05.2008, 22:06:21 ) *
Zrobiłem tak
  1. <?php
  2. if($_SESSION['zalogowany']==1);
  3. else { header(&#092;"Location: index.php\"); }
  4. ?>


Zrobiłem tak nie wpuszcza na strone nie zalogowanego i tak jak pisałeś wywala go na index.php.
Ale gdy jestem zalogowany to też nie wpuszcza na stronę i pozostaje na index.php.





Jak zrobić żeby po zalogowaniu wpuszczał na strone nie dostępną dla nie zalogowanych.


1. Po warunku if podajesz blok operacji, które ma wykonać np .

  1. <?php
  2. if($_SESSION['zalogowany'] == 1) 
  3. {
  4. echo "zalogowany";
  5. } else {
  6. echo "nie zalogowany"; // albo dać tu przekierunkowanie header(....
  7. }
  8. ?>


... a Ty postawiłeś średnik to i nie dziwne, że nie wpuszcza smile.gif
Go to the top of the page
+Quote Post
kajok
post
Post #9





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 4.01.2008

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


Panoawie proszę o pomoc bo mnie zaraz trafi

Jak zrobić żeby po zalogowaniu wpuszczał mnie na strone na którą nie moge wejść gdy jestem nie zalogowany.

Kod ten

  1. <?php
  2. if($_SESSION['zalogowany']==1);
  3. else { header("Location: index.php"); }
  4. ?>


blokuje dostęp do strony niezalogowanych ale także blokuje dostęp zalogowanym.
Jak zrobić by zalogowani wczhodzili na tą stronę.

proszę o pomoc.
Go to the top of the page
+Quote Post
rzymek01
post
Post #10





Grupa: Zarejestrowani
Postów: 592
Pomógł: 62
Dołączył: 3.08.2006

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


moja propozycja jest taka:
1. oprócz sprawdzania $_SESSION sprawdzaj jeszcze chociaż IP, które wcześniej sobie gdzies zapiszesz
2. kontroluj przesyłanie sesji po stronie usera (getem czy cookiesem), ważne jest aby cookie było z twoją domeną i katalogiem

edit: bo masz średnik po Ifie

jak już to:
  1. <?php
  2. if ($_SESSION['zalogowany'] != 1)
  3. {
  4.  header('Location: index.php');
  5. }
  6. ?>


Ten post edytował rzymek01 31.05.2008, 21:29:39


--------------------
:]
Go to the top of the page
+Quote Post
kajok
post
Post #11





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 4.01.2008

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


Bez zmian.
Go to the top of the page
+Quote Post
rzymek01
post
Post #12





Grupa: Zarejestrowani
Postów: 592
Pomógł: 62
Dołączył: 3.08.2006

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


a masz start_session(); przed tym?


--------------------
:]
Go to the top of the page
+Quote Post
pyro
post
Post #13





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

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


Cytat(rzymek01 @ 31.05.2008, 22:40:21 ) *
a masz start_session(); przed tym?

nie start_session() tylko session_start()


--------------------
ET LINGUA EIUS LOQUETUR IUDICIUM
Go to the top of the page
+Quote Post
rzymek01
post
Post #14





Grupa: Zarejestrowani
Postów: 592
Pomógł: 62
Dołączył: 3.08.2006

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


racja, z rozpędu tongue.gif

z reszta i tak wiadomo o co chodzi

edit:
kajok, no jesli masz tak zrobione, że jak $_SESSION['zalogowany'] == 1, to user zalogowany
to jak $_SESSION['zalogowany'] != 1 to musi się odnosić do niezalogowanych i jak w ryj strzelił inaczej nie wyjdzie smile.gif

Ten post edytował rzymek01 31.05.2008, 21:47:00


--------------------
:]
Go to the top of the page
+Quote Post
kajok
post
Post #15





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 4.01.2008

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


Teraz jak wstawiłem te
  1. <?php
  2. ?>

to mi się cofa do index.php i się loguje automatycznie.

i wyskakuje


Gratulacje! Zalogowałeś się pomyślnie! Masz teraz pełny dostęp do serwisu.
wyloguj się


hahahah.Dobra dam sobie spokój dzisiaj.Narazie częsć.Szkoda nerwów.
Go to the top of the page
+Quote Post
rzymek01
post
Post #16





Grupa: Zarejestrowani
Postów: 592
Pomógł: 62
Dołączył: 3.08.2006

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


to zrób jeszcze za session_start:

  1. <?php
  2. var_dump($_SESSION['zalogowany']);
  3. ?>

i napisz co wyświetliło

edit:
Cytat
Już wyłączyłem edytor.

wciskasz win+R i wpisujesz notepad i edytor już odpalony smile.gif

Ten post edytował rzymek01 31.05.2008, 22:03:02


--------------------
:]
Go to the top of the page
+Quote Post
kajok
post
Post #17





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 4.01.2008

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


Już wyłączyłem edytor.
Mimo wszystko dzięki.
Pozdrawiam.

Wyskakuje błąd

Parse error: syntax error, unexpected T_STRING in /home/jackbets/public_html/archiwum.php on line 4
Go to the top of the page
+Quote Post
nithajasz
post
Post #18





Grupa: Zarejestrowani
Postów: 230
Pomógł: 27
Dołączył: 27.05.2008
Skąd: Warszawa

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


To pokaż tą linie, bo tak ciężko coś powiedzieć.
Go to the top of the page
+Quote Post
kajok
post
Post #19





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 4.01.2008

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


  1. <?php
  2. var_dump($_SESSION['zalogowany']);
  3. {
  4.  header('Location: index.php');
  5. }
  6. ?>


Teraz tak wstawiłem

i bład wyskakuje

Parse error: syntax error, unexpected T_STRING in /home/jackbets/public_html/archiwum.php on line 3
Go to the top of the page
+Quote Post
nithajasz
post
Post #20





Grupa: Zarejestrowani
Postów: 230
Pomógł: 27
Dołączył: 27.05.2008
Skąd: Warszawa

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


1. A gdzie średnik po session_start() ? ;>
2. Skąd te klamry ? Ten kod nie ma prawa działać.

Wstaw to :

  1. <?php
  2. var_dump($_SESSION['zalogowany']);
  3. if($_SESSION['zalogowany'] != 1)
  4. {
  5.  header('Location: index.php');
  6. }
  7. else {
  8. echo "zalogowany";
  9. }
  10. ?>


Ten post edytował nithajasz 1.06.2008, 00:23:13
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 19.08.2025 - 22:15