Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Logowanie na strone...
Forum PHP.pl > Forum > Przedszkole
tinware
Witajcie.

Zrobiłem dzisiaj logowanie na stronę, ale jest jakiś problem z zalogowaniem, pomożecie w poprawieniu kodu?
---------------

Strona dla oglądających:
Cytat


Panel administracyjny:
Cytat



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

Kod: index.php
Cytat
nospor
blink.gif

1) Jaki problem??
2) Jaki kod?? Czy naprawdę musimy go ściągać z jakiejś strony? Nie możesz go podać? Nie możesz go przynajmniej wkleic do pasebin czy innej takiej strony
3) Przenosze
tinware
Po zakonczonej rejestracji nie można się zalogować, występuję błąd. Kod wstawiłem, ale nie chciało dodać mi posta bo był on zbyt długi więc wstawiłem to jako plik.
nospor
Dlatego powiedzialem, byś wstawił to np. na pastebin
http://pastebin.pl/
Prezi2907
Jak wyżej nie będą ludzie pobierać z sieci tego kodu... Na moje jak loguje się to złe sprawdzanie. Albo gdzie zrobiłeś kodowanie mp5() to podczas wysyłania do serwera zapytania czy istnieje user z LOGINEM[x] ... To czy istnieje on z hasłem nie np login10 pass10 tylko login10 mp5(pass10) ....

Tak z reki dałem możliwość choć widzę że chyba nie kodujesz tego bo w tej tabeli masz podane zwykłe wartości...

Najprostrze zapytanie SQL sprawdzające czy dany user istnieje to

  1.  
  2. $spr = "SELECT*FROM users WHERE login='".$_POST['login']."' AND pass='".$_POST['pass']."'";
  3. $sprawdz = mysql_query($spr);
  4.  
  5. if(mysql_fetch_array($sprawdz) !== false )
  6. echo 'ZALOGOWAŁEŚ SIĘ JAKO '.$_POST['login'];
  7. else
  8. echo 'PODAŁEŚ ZŁE DANE';


Mogę się mylić co do składni ale sens jest zawarty chodzi o to by ze sobą połączyć te dwie wysyłane informacje ... jeśli istnieje taki user z hasłem to sprawa załatwiona... Po drugie w przypadku loginu i hasła zrób sobie to etapowo. Sprawdź login czy istnieje a później hasło czy istnieje jak oba są ok to później na siłe możesz jeszcze porównać hasło z loginem i wiesz na którym momencie pada Ci logowanie... Nic prostszego... smile.gif Podaj kod z loginu a na bank pomogę smile.gif
tinware
Cytat(nospor @ 15.02.2011, 21:50:43 ) *
Dlatego powiedzialem, byś wstawił to np. na pastebin
http://pastebin.pl/


Zrobione:
Cytat
nospor
Przy rejestracji wkladasz hasło w postaci jawnej (niehashowanej) a przy logowaniu sprawdzasz hasło hashowane.
od kiedy hash ma się rownać postaci niehashowanej?
tinware
Cytat(Prezi2907 @ 15.02.2011, 21:57:04 ) *
Podaj kod z loginu a na bank pomogę smile.gif

Już podaje cały index.php na pastebin. Przepraszam za całe zamieszanie, jestem tutaj nowy. Słabo znam php, ale moja upartość pozwoliła napisać mi stronę, nauczyć tworzenia formularzy i wysyłania ich do bazy. Tak, hasło to nie jest kodowane. Oto tabela wgrana do bazy:

Kod
CREATE TABLE `Users` (
`nr` int(9) auto_increment,
`data` text,
`login` text,
`haslo` text,
`email` text,
`gg` text,
`imie` text,
`nazwisko` text,
`pseudonim` text,
`miejscowosc` text,
`data_urodzenia_dzien` text,
`data_urodzenia_miesiac` text,
`data_urodzenia_rok` text,
KEY `nr` (`nr`)
) TYPE=MyISAM AUTO_INCREMENT=1;
nospor
Cytat
Tak, hasło to nie jest kodowane. Oto tabela wgrana do bazy:
To wiem. Sam ci to powiedziałem. I tu masz problem.
Bo jesli nie kodujesz hasla to i przy logowaniu go nie koduj
Albo koduj i tu i tu. No to przecież logiczne.
tinware
Rozumiem, czy więc pomożesz mi tak aby podczas logowania hasło nie było kodowane?
nospor
Ponoć sam to napisałes.... to powinienes wiedziec,ze to:
$haslo = sha1($haslo);
hashuje wlasnie hasło. Skoro więc nie chcesz hashować to wywal tę linijkę.
Prezi2907
Pozwolę sobie zwrócić uwagę na kod...
  1. echo '<TR><TD align="right">
  2. <br>
  3. <font color=red>*</font>
  4. Data ur.:</TD>
  5. <TD width="300">
  6. <br><select NAME="data_urodzenia_dzien" style="width: 45px"><option></option><option>01</option><option>02</option><option>03</option><option>04</option><option>05</option><option>06</option><option>07</option><option>08</option><option>09</option><option>10</option><option>11</option><option>12</option><option>13</option><option>14</option><option>15</option><option>16</option><option>17</option><option>18</option><option>19</option><option>20</option><option>21</option><option>22</option><option>23</option><option>24</option><option>25</option><option>26</option><option>27</option><option>28</option><option>29</option><option>30</option><option>31</option></select> .
  7. <select NAME="data_urodzenia_miesiac" style="width: 45px"><option></option><option>01</option><option>02</option><option>03</option><option>04</option><option>05</option><option>06</option><option>07</option><option>08</option><option>09</option><option>10</option><option>11</option><option>12</option></select> .
  8. <select NAME="data_urodzenia_rok" style="width: 60px"><option></option><option>1900</option><option>1901</option><option>1902</option><option>1903</option><option>1904</option><option>1905</option><option>1906</option><option>1907</option><option>1908</option><option>1909</option><option>1910</option><option>1911</option><option>1912</option><option>1913</option><option>1914</option><option>1915</option><option>1916</option><option>1917</option><option>1918</option><option>1919</option><option>1920</option><option>1921</option><option>1922</option><option>1923</option><option>1924</option><option>1925</option><option>1926</option><option>1927</option><option>1928</option><option>1929</option><option>1930</option><option>1931</option><option>1932</option><option>1933</option><option>1934</option><option>1935</option><option>1936</option><option>1937</option><option>1938</option><option>1939</option><option>1940</option><option>1941</option><option>1942</option><option>1943</option><option>1944</option><option>1945</option><option>1946</option><option>1947</option><option>1948</option><option>1949</option><option>1950</option><option>1951</option><option>1952</option><option>1953</option><option>1954</option><option>1955</option><option>1956</option><option>1957</option><option>1958</option><option>1959</option><option>1960</option><option>1961</option><option>1962</option><option>1963</option><option>1964</option><option>1965</option><option>1966</option><option>1967</option><option>1968</option><option>1969</option><option>1970</option><option>1971</option><option>1972</option><option>1973</option><option>1974</option><option>1975</option><option>1976</option><option>1977</option><option>1978</option><option>1979</option><option>1980</option><option>1981</option><option>1982</option><option>1983</option><option>1984</option><option>1985</option><option>1986</option><option>1987</option><option>1988</option><option>1989</option><option>1990</option><option>1991</option><option>1992</option><option>1993</option><option>1994</option><option>1995</option><option>1996</option><option>1997</option><option>1998</option><option>1999</option><option>2000</option><option>2001</option><option>2002</option><option>2003</option><option>2004</option><option>2005</option><option>2006</option><option>2007</option><option>2008</option><option>2009</option><option>2010</option><option>2011</option> &nbsp [DD.MM.RRRR]
  9. </TD>
  10. </TR>';
  11.  


WOW a można po prostu zrobić...
  1. echo '<TR><TD align="right"><br><font color=red>*</font>Data ur.:</TD><TD width="300px">
  2. <br>
  3. <select name="data_urodzenia_dzien" style="width: 45px">
  4. <option><option>';
  5. for ($n = 1 ; $n == 31 ; $n++){
  6. echo '<option value="'.$n.'">'.$n.'</option>';
  7. }
  8. </select>
  9. <select name="data_urodzenia_miesiac" style="width: 45px"><option></option>
  10. for($m = 1 ; $m==9 ; $m++){ //najpierw 9 pierwszych miesięcy z 0 na początku
  11. echo '<option value="0'.$m.'">0'.$m.'</option>';
  12. }
  13. for($m = 10; $m == 12 ; $m++)
  14. {
  15. echo '<option value="'.$m'">'.$m'</option>';
  16. }
  17. echo '</select>
  18. <select name="data_urodzenia_rok" style="width: 60px"><option></option>';
  19. for($r = 1900; $r == 2000 ; $r++){
  20. echo '<option value="'.$r.'">'.$r.'</option>';
  21. }
  22. echo '</select>&nbsp [DD.MM.RRRR]</td></tr>';

I tak jak cała reszta kodu wiesz że gdzieś dzwoni ale nie wiesz w którym kościele i jak głośno...

Polecam poczytać o pętlach jak tworzysz formularze ... Pomagają bardzo i przyspieszają znacznie przeładowywanie stron... Dodatkowo poczytaj o zabezpieczeniach bo po 5 minutach w kodzie wiem jak wykasować Ci całą bazę smile.gif Ale to już poczytaj a kod wklep zamiast tej paplaniny długiej...

Poczytaj o kodowaniu w sh1() i md5() a później o działaniu ich w bazie danych...
Dla sprostowania napisze Ci po krótce o tym.

Polecenie INSERT wysyła nam kod do bazy danych w odpowiednie miejsca teraz stosując zapytanie typu

  1. $register = "INSERT INTO s_users values(NULL,'".$login."','".sha1($r_pass)."')";

To wrzucasz zakodowane hasło w sh1();

A jeżeli zrobisz takie zapytanie
  1. $register = "INSERT INTO s_users values(NULL,'".$login."','".$r_pass."')";


To NIE kodujesz hasła i można je porównywać normalnie bez żadnych dodatkowych myków...

Teraz aby porównać zakodowane hasło (tak nie pobrać tylko porównać) - bo kodując w sh1() nie odkodowujesz hasła a porównujesz czy zakodowane zmienne string są takie same - musimy wysłać mu przekształconego stringa przez funkcje sh1() ... Spróbuje ci to pokazać na kodzie i zwróć uwagę gdzie zawarta jest funkcja sh1() która przekształci nam stringa w zakodowaną formę i dopiero porówna...
[php]
$login = "SELECT*FROM s_users WHERE login='".$login."' pass="'.sh1($r_pass).'" ";
[php]
I to cała logika...

Musisz pamiętać o fakcie iż jeżeli kodujesz dane i później wysyłasz je do bazy to nie można odczytywać ich bez kodowania danych które chcesz porównać bez ich kodowania...

Mam nadzieje że trochę Ci to rozjaśni całą sprawę...
tinware
Poprawiłem kod, logowanie przebiega pomyślnie. Jakim kodem i w którym miejscu mam stworzyć aby część strony ?go=page była widoczna tylko dla zalogowanych, a a dla nie zalogowanych komunikat: "musisz zalogowac sie aby ogladac ta czesc strony" ?

Prezi2907, rozumiem w czym mój błąd.
potreb
Kodem:
  1. if(isset($_SESSION['isauth']) && $_SESSION['isauth'] != 1)) die("Dostęp do tej strony jest zablokowany dla hakierów");
tinware
Cytat(potreb @ 15.02.2011, 22:47:07 ) *
Kodem:
  1. if(isset($_SESSION['isauth']) && $_SESSION['isauth'] != 1)) die("Dostęp do tej strony jest zablokowany dla hakierów");

W jaki sposób mam go przyłączyć tutaj?
  1. if ($_GET['go'] == 'page') {
  2. echo "<b>Strona:</b><br><br><br>";
  3. echo "Tutaj znajduje się jeden z działów strony wywołany adresem ?go=page<br>Treści te powinny być widoczne tylko dla zarejestrowanych i zalogowanych osób.<br>W innym razie powinien pokazać się napis, że nie jesteśmy zarejestrowani i zalogowani i pod tym formularz rejestracji i logowania.";
  4. }
Prezi2907
Cytat(tinware @ 15.02.2011, 22:57:58 ) *
W jaki sposób mam go przyłączyć tutaj?
  1. if ($_GET['go'] == 'page') {
  2. echo "<b>Strona:</b><br><br><br>";
  3. echo "Tutaj znajduje się jeden z działów strony wywołany adresem ?go=page<br>Treści te powinny być widoczne tylko dla zarejestrowanych i zalogowanych osób.<br>W innym razie powinien pokazać się napis, że nie jesteśmy zarejestrowani i zalogowani i pod tym formularz rejestracji i logowania.";
  4. }

Oj chłopie napisał Ci kolega wyżej jak sprawie zaradzić...

Na początku każdej strony do której dostęp mają mieć tylko zarejestrowani
  1. <?php
  2. if ($_SESSION['isauth'] == 1 || $_SESSION['isauth'] == "1" ) \\dla pewności...
  3. {
  4. echo 'User Autoryzowany, masz dostęp...';
  5. }
  6. else
  7. {
  8. die ("Strona wyłącznie dla zalogowanych użytkowników...");
  9. }
  10. ?>


Pozdrawiam

A i jeszcze jedno... Jak już jesteś w sesjach to poczytaj jak je zabezpieczać i nie używaj metody GET aby przesyłać ID... Bo wtedy musisz jeszcze sprawdzać czy nie została przechwycona sesja...
tinware
Mógłbym Cię prosić o sprawdzenie i wykrycie mojego błędu:

Cytat


Kod
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /home/a8731498/public_html/budowa/index.php on line 2
Prezi2907
Wywal ten komentarz bo źle wpisałem smile.gif czyli te \\ i wszystko dalej smile.gif
tinware
Cytat(Prezi2907 @ 15.02.2011, 23:59:30 ) *
Wywal ten komentarz bo źle wpisałem smile.gif czyli te \\ i wszystko dalej smile.gif

Zrobiłem to w ten sposób:
http://pastebin.pl/36631

Zależało mi żeby strony logowania i rejestracji były widoczne dla niezalogowanych, a dla zalogowanych strona logowania i rejestracji pokazywal się napis: jestes juz zalogowany.

Część ?go=page oczywiście po zalogowaniu, ale jeśli zalogowani nie jesteśmy włącza się ?go=users_login
Prezi2907
To jest kwestia manipulacji ta pętlą if i jej warunkiem...

Dla sprostowania tego co ci podałem nie używaj w register i index... W register w ogóle nie włączaj tegoa w login daj coś takiego...

  1. <?php
  2. if ($_SESSION['isauth'] == 1 || $_SESSION['isauth'] == "1" )
  3. {
  4. header("Refresh:3; URL=index.php");
  5. echo 'Jesteś zalogowany, za 3 sek. zostaniesz przekierowany na stronę główną...';
  6. }
  7. else
  8. {
  9. echo "Zaloguj się";
  10. }
  11. ?>


Analogicznie zmieniasz te sprawy dla każdej strony zależy co chcesz... no i redirect możesz robić do danego user itd... ale jak pisałemm nie wysyłaj danych o userze w GET bo to łatwo wykorzystać źle... Wymieniaj wszystko albo w post albo sesjami tak unikniesz włamań... GETEM wysyłaj najwyżej jakieś nazwy plików lub zmienne które może każdy widzieć... Kto się zna może łatwo podłączyć się pod dowolnego usera (np. pod administratora) i wszystko Ci wykasuje, zniszczy...

Pozdrawiam... Dalej radź sobie sam bo dałem Ci już dużo podstaw smile.gif Jak by były jakieś problemy składniowe to pisz z tym że nie na PW...
tinware
Dobra mam, użyłem skryptów, które mi dałeś.
Problem wygląda następująco: nie jestem zalogowany widzę napis zaloguj sie, ok. Loguj się, i mam dalej zaloguj się. W którym miejscu jest błąd. Mógłbyś ewentualne poprawki robić dla całości, albo podać mi linijkę w której trzeba wkleić dany kod.

Podgląd:
Cytat


Kod:
Cytat
Prezi2907
if(!empty($_SESSION['login'])){

Podmień górę z tym ifem ... Powinno być ok...
Tam mi dałeś jeszcze raz to samo to wstaw to co Ci dałem z loginem i podmień tą pierwszą moją linię tym co masz wyżej... Powinno spokojnie działać...

Cytat(Prezi2907 @ 16.02.2011, 00:28:30 ) *
To jest kwestia manipulacji ta pętlą if i jej warunkiem...

Dla sprostowania tego co ci podałem nie używaj w register i index... W register w ogóle nie włączaj tegoa w login daj coś takiego...

  1. <?php
  2. if (!empty($_SESSION['login'])) // TĄ LINIJKĘ PODMIENIŁEM... :)
  3. {
  4. header("Refresh:3; URL=index.php");
  5. echo 'Jesteś zalogowany jako: '.$_SESSION['login'].' , za 3 sek. zostaniesz przekierowany na stronę główną...';
  6. }
  7. else
  8. {
  9. echo "Zaloguj się";
  10. }
  11. ?>


Analogicznie zmieniasz te sprawy dla każdej strony zależy co chcesz... no i redirect możesz robić do danego user itd... ale jak pisałemm nie wysyłaj danych o userze w GET bo to łatwo wykorzystać źle... Wymieniaj wszystko albo w post albo sesjami tak unikniesz włamań... GETEM wysyłaj najwyżej jakieś nazwy plików lub zmienne które może każdy widzieć... Kto się zna może łatwo podłączyć się pod dowolnego usera (np. pod administratora) i wszystko Ci wykasuje, zniszczy...

Pozdrawiam... Dalej radź sobie sam bo dałem Ci już dużo podstaw smile.gif Jak by były jakieś problemy składniowe to pisz z tym że nie na PW...
tinware
http://pastebin.pl/36633 w 209 linijce?
Jeśli tak, to strona cały czas przeładowuje się do ?go=page i jest cały czas odświeżanie.

Edit:
Działa, dobrze, ale po zalogowaniu przerzuca mnie na ?go=page czyli do tego momentu wszystko ok, ale dalej cały czas przeładowywuje mi ?go=page

Edit:
Ok, poprawiłem, działa... Wspominałeś coś o tej linijce:
  1. if ($_GET['go'] == 'page'){

Na jaką ją zamienić?
Prezi2907
Cytat(tinware @ 16.02.2011, 01:26:42 ) *
http://pastebin.pl/36633 w 209 linijce?
Jeśli tak, to strona cały czas przeładowuje się do ?go=page i jest cały czas odświeżanie.

Edit:
Działa, dobrze, ale po zalogowaniu przerzuca mnie na ?go=page czyli do tego momentu wszystko ok, ale dalej cały czas przeładowywuje mi ?go=page

Edit:
Ok, poprawiłem, działa...


Powiem tak nie jestem w stanie teraz całego kodu przesledzić... Tam masz widzę wszystkie strony odrazu w jednym zrobione czy jak questionmark.gif Heh... Tą stronę na która z logowania ma Cię przerzucać to tam nie dawaj tej pętli która Ci pisałem, ok ? Bo inaczej będzie cały czas reload. Tam daj bez tej funkcji HEADER ok ?

Cytat(tinware @ 16.02.2011, 01:26:42 ) *
http://pastebin.pl/36633 w 209 linijce?
Jeśli tak, to strona cały czas przeładowuje się do ?go=page i jest cały czas odświeżanie.

Edit:
Działa, dobrze, ale po zalogowaniu przerzuca mnie na ?go=page czyli do tego momentu wszystko ok, ale dalej cały czas przeładowywuje mi ?go=page

Edit:
Ok, poprawiłem, działa... Wspominałeś coś o tej linijce:
  1. if ($_GET['go'] == 'page'){

Na jaką ją zamienić?

Nie nie... Spokojnie... Ten reload zależy tylko od tego headera... czekaj najże wszystkie te linijki na szybkiego ... smile.gif
tinware
Ok, dzięki stary. Na chwilę obecną wszystko jest ok, tylko jak nie jestem zalogowany i wejdę ?go=page chciałem mieć to co pod adresem ?go=users_login_please
Bo jak cokolwiek dopisuje to pojawia się to na każdej podstronie. Tak, tak, cała strona znajduje się w jednym pliku, działy zmienia się poprzez ?go=
Prezi2907
Po każdej linijce gdzie masz

  1. if ($_GET['go'] == 'COŚ TAM'){


Dajesz odpowiednio skonfigurowaną pętle... Dam Ci do Logowania i dla pozostałych stron prócz register...

Dla wejscia
  1. if ($_GET['go'] == 'LOGOWANIE I DO TEGO PODOBNE...'){

  1. <?php
  2. if (!empty($_SESSION['login'])) // TĄ LINIJKĘ PODMIENIŁEM... :)
  3. {
  4. header("Refresh:3; URL=index.php?go=page"); //chyba tak :) jak by nie działało to przekieruj to odpowiednio...
  5. echo 'Jesteś zalogowany jako: '.$_SESSION['login'].' , za 3 sek. zostaniesz przekierowany na stronę główną...';
  6. }
  7. else
  8. {
  9. echo "Zaloguj się";
  10. }
  11. ?>


A DO KAŻDEJ INNEJ KTÓRĄ CHCESZ ZABLOKOWAĆ DLA GOŚCI DAJESZ...
  1. <?php
  2. if (empty($_SESSION['login'])) // TĄ LINIJKĘ PODMIENIŁEM... :)
  3. {
  4.  
  5. die ('Strona dostępna wyłącznie dla zalogowanych użytkowników... <a href="index.php?go=REJESTRACJA">REJESTRUJ SIĘ</a> LUB <a href="index.php?go=LOGOWANIE">ZALOGUJ SIĘ</a>');
  6. }
  7. else
  8. {
  9. echo "Witamy, ".$_SESSION['login'];
  10. }
  11. ?>


Cytat(tinware @ 16.02.2011, 01:44:22 ) *
Ok, dzięki stary. Na chwilę obecną wszystko jest ok, tylko jak nie jestem zalogowany i wejdę ?go=page chciałem mieć to co pod adresem ?go=users_login_please
Bo jak cokolwiek dopisuje to pojawia się to na każdej podstronie. Tak, tak, cała strona znajduje się w jednym pliku, działy zmienia się poprzez ?go=


Luknij na 1 strone tam Ci rozwaliłem ten BARDZO DŁUGI FORMULARZ Z OPTIONSAMI na dużo mniejsze pętelki... Wygodniej dla Ciebie smile.gif
tinware
http://pastebin.pl/36637

Gdy nie jestem zalogowany jest wszystko w porządku, po zalogowaniu reload ?go=page co 3 sek.
Dasz radę zrobić jeszcze dla adresu ?go=users_logout - wylogowywanie... ?

Edit:
Sory, na każdej stronie logowania i rejestracji jest napisane zarejestruj się, w dodatku Zaloguj się
Po udanym zalogowaniu cały czas realod ?go=page i cały czas jestem zalogowany jako i zostane przekierowany za 3sek.


Cytat
uknij na 1 strone tam Ci rozwaliłem ten BARDZO DŁUGI FORMULARZ Z OPTIONSAMI na dużo mniejsze pętelki... Wygodniej dla Ciebie

Tak, zgadza się, wezmę sobię to do serca i zrealizuje to, lecz najpierw chciałem zająć się tym logowaniem i wylogowywaniem...
Prezi2907
Cytat(tinware @ 16.02.2011, 01:56:48 ) *
http://pastebin.pl/36637

Gdy nie jestem zalogowany jest wszystko w porządku, po zalogowaniu reload ?go=page co 3 sek.
Dasz radę zrobić jeszcze dla adresu ?go=users_logout - wylogowywanie... ?

Edit:
Sory, na każdej stronie logowania i rejestracji jest napisane zarejestruj się, w dodatku Zaloguj się
Po udanym zalogowaniu cały czas realod ?go=page i cały czas jestem zalogowany jako i zostane przekierowany za 3sek.



Tak, zgadza się, wezmę sobię to do serca i zrealizuje to, lecz najpierw chciałem zająć się tym logowaniem i wylogowywaniem...


Rozpisze Ci to bo widzę nie kapujesz smile.gif Poczekaj

Podzielę to na kilka części wiadomo bo za długie wszystko... smile.gif
CZ 1 . TU SIĘ NIC NIE ZMIENIA smile.gif


  1. <?php
  2. if (isset($_POST['login']) and isset($_POST['haslo']) )
  3. {
  4. require('../admin/mysql.php');
  5. $login=mysql_real_escape_string(trim($_POST['login']));
  6. $haslo=mysql_real_escape_string(trim($_POST['haslo']));
  7. if ($login!="" and $haslo!="")
  8. {
  9.  
  10. $zapytanie="SELECT nr FROM Users WHERE login='$login' and haslo ='$haslo'";
  11. $temp=mysql_query($zapytanie) or die("Wystąpił błąd");
  12. $ile=mysql_num_rows($temp);
  13. $temp=mysql_fetch_array($temp);
  14. $nr=$temp['nr'];
  15. if ($ile==1)
  16. {
  17. $_SESSION['nr']=$nr;
  18. $_SESSION['login']=$login;
  19. header("Refresh:0; URL=index.php?go=page");
  20. }
  21.  
  22. else header("Refresh:0; URL=index.php?go=users_login_error");
  23. }
  24. }
  25. else{
  26. ?>
  27.  
  28. <html>
  29. <head>
  30. <title>Users</title>
  31. <meta http-equiv="Content-Type" content="text/html; charset=Windows-1250">
  32. <link rel="stylesheet" href="../style.css" type="text/css">
  33. <link rel="Shortcut icon" href="../img/ikona.jpg" />
  34. </head>
  35. <body bgcolor="#FFFFFF">
  36.  
  37.  
  38. <b>User: </b>
  39. <a href="?go=users_login">Logowanie</a> |
  40. <a href="?go=users_add">Rejestracja</a> |
  41. <a href="?go=page">Strona</a>
  42.  
  43.  
  44. <br><br><br><br>
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51. <?php
  52. include('../admin/mysql.php');
  53.  
  54.  



CZĘŚĆ 2 I TU JUŻ BĘDĄ ZMIANY ...
  1. if ($_GET['go'] == 'users_login') {
  2. if (!empty($_SESSION['login']))
  3. {
  4. header("Refresh:3; URL=index.php?go=page"); //chyba tak :) jak by nie działało to przekieruj to odpowiednio...
  5. echo 'Jesteś zalogowany jako: '.$_SESSION['login'].' , za 3 sek. zostaniesz przekierowany na stronę główną...';
  6. }
  7. else
  8. {
  9. echo "Zaloguj się";
  10. }
  11.  
  12. echo "<b>Logowanie:</b><br><br><br>";
  13.  
  14. echo "<form action=\"index.php\" method=\"post\">";
  15. echo "<TABLE width=390 border=0 cellspacing=5 cellpadding=0>";
  16. echo "<TR><TD align=right>Login:</TD><TD width=300><INPUT TYPE=\"text\" NAME=\"login\" style=\"width: 300px\"></TD></TR>";
  17. echo "<TR><TD align=right>Hasło:</TD><TD width=300><INPUT TYPE=\"text\" NAME=\"haslo\" style=\"width: 300px\"></TD></TR>";
  18. echo "<TR><TD align=right></TD><TD width=300 align=right><input type=\"submit\" value=\"Zaloguj\"></TD></TR>";
  19. echo "</TABLE>";
  20. echo "</form>";
  21. echo "<br><br><br>Jeżeli nie masz jeszcze konta <a href=?go=users_add>zarejestruj się tutaj w 30 sekund</a>.";
  22. }
  23. }
  24.  
  25.  
  26.  
  27. if ($_GET['go'] == 'users_login_after_add') {
  28. echo "<b>Logowanie:</b><br><br><br>";
  29.  
  30. echo "<font color=red>Rejestracja przebiegła pomyślnie. Zaloguj się taraz danymi, podanymi podczas rejestracji...</font><br><br>";
  31. echo "<form action=\"index.php\" method=\"post\">";
  32. echo "<TABLE width=390 border=0 cellspacing=5 cellpadding=0>";
  33. echo "<TR><TD align=right>Login:</TD><TD width=300><INPUT TYPE=\"text\" NAME=\"login\" style=\"width: 300px\"></TD></TR>";
  34. echo "<TR><TD align=right>Hasło:</TD><TD width=300><INPUT TYPE=\"text\" NAME=\"haslo\" style=\"width: 300px\"></TD></TR>";
  35. echo "<TR><TD align=right></TD><TD width=300 align=right><input type=\"submit\" value=\"Zaloguj\"></TD></TR>";
  36. echo "</TABLE>";
  37. echo "</form>";
  38.  
  39. echo "<br><br><br>Jeżeli nie masz jeszcze konta <a href=?go=users_add>zarejestruj się tutaj w 30 sekund</a>.";
  40.  
  41. }
  42.  
  43.  
  44.  
  45.  
  46. if ($_GET['go'] == 'users_login_please') {
  47. if (!empty($_SESSION['login']))
  48. {
  49. header("Refresh:3; URL=index.php?go=page"); //chyba tak :) jak by nie działało to przekieruj to odpowiednio...
  50. echo 'Jesteś zalogowany jako: '.$_SESSION['login'].' , za 3 sek. zostaniesz przekierowany na stronę główną...';
  51. }
  52. else
  53. {
  54. echo "Zaloguj się";
  55. }
  56. echo "<b>Logowanie:</b><br><br><br>";
  57.  
  58. echo "<font color=red>Ta część strony przeznaczona jest dla osób zalogowanych...</font><br><br>";
  59. echo "<form action=\"index.php\" method=\"post\">";
  60. echo "<TABLE width=390 border=0 cellspacing=5 cellpadding=0>";
  61. echo "<TR><TD align=right>Login:</TD><TD width=300><INPUT TYPE=\"text\" NAME=\"login\" style=\"width: 300px\"></TD></TR>";
  62. echo "<TR><TD align=right>Hasło:</TD><TD width=300><INPUT TYPE=\"text\" NAME=\"haslo\" style=\"width: 300px\"></TD></TR>";
  63. echo "<TR><TD align=right></TD><TD width=300 align=right><input type=\"submit\" value=\"Zaloguj\"></TD></TR>";
  64. echo "</TABLE>";
  65. echo "</form>";
  66.  
  67. echo "<br><br><br>Jeżeli nie masz jeszcze konta <a href=?go=users_add>zarejestruj się tutaj w 30 sekund</a>.";
  68.  
  69. }
  70.  
  71.  
  72.  
  73.  
  74. if ($_GET['go'] == 'users_login_error') {
  75. if (!empty($_SESSION['login']))
  76. {
  77. header("Refresh:3; URL=index.php?go=page"); //chyba tak :) jak by nie działało to przekieruj to odpowiednio...
  78. echo 'Jesteś zalogowany jako: '.$_SESSION['login'].' , za 3 sek. zostaniesz przekierowany na stronę główną...';
  79. }
  80. else
  81. {
  82. echo "Zaloguj się";
  83. }
  84. echo "<b>Logowanie:</b><br><br><br>";
  85.  
  86. echo "<font color=red>Błędny login lub hasło lub użytkownik nie istnieje...</font><br><br>";
  87. echo "<form action=\"index.php\" method=\"post\">";
  88. echo "<TABLE width=390 border=0 cellspacing=5 cellpadding=0>";
  89. echo "<TR><TD align=right>Login:</TD><TD width=300><INPUT TYPE=\"text\" NAME=\"login\" style=\"width: 300px\"></TD></TR>";
  90. echo "<TR><TD align=right>Hasło:</TD><TD width=300><INPUT TYPE=\"text\" NAME=\"haslo\" style=\"width: 300px\"></TD></TR>";
  91. echo "<TR><TD align=right></TD><TD width=300 align=right><input type=\"submit\" value=\"Zaloguj\"></TD></TR>";
  92. echo "</TABLE>";
  93. echo "</form>";
  94. echo "<br><br><br>Jeżeli nie masz jeszcze konta <a href=?go=users_add>zarejestruj się tutaj w 30 sekund</a>.";
  95.  
  96. }
  97.  



CZĘŚĆ 3 I ZNOWU ZMIANY....
  1. if ($_GET['go'] == 'users_add') {
  2. if (!empty($_SESSION['login']))
  3. {
  4. die ('Jesteś zalogowany jako: '.$_SESSION['login'].' , po co wchodzisz do rejestracji skoro masz już konto?<a href="index.php?go=page">strona główna</a>');
  5.  
  6. }
  7. echo "<b>Rejestracja:</b><br><br><br>";
  8.  
  9. $loginqq = addslashes(htmlspecialchars ($_POST['login']));
  10. $hasloqq = addslashes(htmlspecialchars ($_POST['haslo']));
  11. $emailqq = addslashes(htmlspecialchars ($_POST['email']));
  12. $ggqq = addslashes(htmlspecialchars ($_POST['gg']));
  13. $imieqq = addslashes(htmlspecialchars ($_POST['imie']));
  14. $nazwiskoqq = addslashes(htmlspecialchars ($_POST['nazwisko']));
  15. $pseudonimqq = addslashes(htmlspecialchars ($_POST['pseudonim']));
  16. $miejscowoscqq = addslashes(htmlspecialchars ($_POST['miejscowosc']));
  17. $data_urodzenia_dzienqq = addslashes(htmlspecialchars ($_POST['data_urodzenia_dzien']));
  18. $data_urodzenia_miesiacqq = addslashes(htmlspecialchars ($_POST['data_urodzenia_miesiac']));
  19. $data_urodzenia_rokqq = addslashes(htmlspecialchars ($_POST['data_urodzenia_rok']));
  20.  
  21. // Wyciąłem wszystko z rejestracji dalej aby zaoszczędzić na postach i sprawdzaniu... Tam sobie to podstawisz albo dasz moje pętle...
  22.  
  23.  
  24.  
  25. if ($_GET['go'] == 'users_save') {
  26. echo "<b>Rejestracja:</b><br><br><br>";
  27.  
  28. if(!empty($_POST['login']) && !empty($_POST['haslo']) && !empty($_POST['email']) && !empty($_POST['data_urodzenia_dzien']) && !empty($_POST['data_urodzenia_miesiac']) && !empty($_POST['data_urodzenia_rok']) && !empty($_POST['imie']) && !empty($_POST['nazwisko']) && !empty($_POST['miejscowosc'])) {
  29. // wszystko co ma się dziać, np. sprawdzenie poprawności tych wpisanych pól, zapisanie itd.
  30.  
  31. $loginqq = addslashes(htmlspecialchars ($_POST['login']));
  32. $hasloqq = addslashes(htmlspecialchars ($_POST['haslo']));
  33. $emailqq = addslashes(htmlspecialchars ($_POST['email']));
  34. $ggqq = addslashes(htmlspecialchars ($_POST['gg']));
  35. $imieqq = addslashes(htmlspecialchars ($_POST['imie']));
  36. $nazwiskoqq = addslashes(htmlspecialchars ($_POST['nazwisko']));
  37. $pseudonimqq = addslashes(htmlspecialchars ($_POST['pseudonim']));
  38. $miejscowoscqq = addslashes(htmlspecialchars ($_POST['miejscowosc']));
  39. $data_urodzenia_dzienqq = addslashes(htmlspecialchars ($_POST['data_urodzenia_dzien']));
  40. $data_urodzenia_miesiacqq = addslashes(htmlspecialchars ($_POST['data_urodzenia_miesiac']));
  41. $data_urodzenia_rokqq = addslashes(htmlspecialchars ($_POST['data_urodzenia_rok']));
  42.  
  43. if ($_POST['action'] == 'add') { //dodawanie rekordu
  44. {
  45. $query = "INSERT INTO Users (login, haslo, email, gg, imie, nazwisko, pseudonim, miejscowosc, data_urodzenia_dzien, data_urodzenia_miesiac, ";
  46. $query .= "data_urodzenia_rok, data) VALUES ('$loginqq', '$hasloqq', '$emailqq', '$ggqq', '$imieqq', '$nazwiskoqq', '$pseudonimqq', '$miejscowoscqq', '$data_urodzenia_dzienqq', '$data_urodzenia_miesiacqq', '$data_urodzenia_rokqq', ".
  47. "now());";
  48. $wynik = mysql_query ($query);
  49. }
  50. } elseif ($_POST['action'] == 'popraw') { //poprawienie rekordu
  51. if ($widokqq && $ksywaqq && $wwwqq && $emailqq && $ggqq && $trescqq) {
  52. $query = "UPDATE Guest_Book SET widok='$widokqq',ksywa='$ksywaqq',www='$wwwqq',email='$emailqq',gg=";
  53. $query .= "'$ggqq',tresc='$trescqq' WHERE
  54. nr='".$_POST['id']."';";
  55. $wynik = mysql_query ($query);
  56. }
  57. }
  58.  
  59. echo "<br><br><br><br>Rejestracja zakonczona pomyslnie.<meta http-equiv=\"Refresh\" content=\"0; url=?go=users_login_after_add\" />";
  60.  
  61. } else {
  62. echo "<br><br><br><br>Nie wypełniono wszystkich obowiązkowych pól w formularzu...</i><meta http-equiv=\"Refresh\" content=\"5; url=?go=users_add\" />";
  63. }
  64. }
  65.  
  66.  
  67.  
  68.  
  69. ?>
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83. <?php
  84. include('../admin/mysql.php');
  85.  
  86. if ($_GET['go'] == 'page'){
  87. if (empty($_SESSION['login']))
  88. {
  89.  
  90. die ('Strona dostępna wyłącznie dla zalogowanych użytkowników... <a href="index.php?go=users_add">REJESTRUJ SIĘ</a> LUB <a href="index.php?go=users_login_please">ZALOGUJ SIĘ</a>');
  91. }
  92. else
  93. {
  94. echo "Witamy, ".$_SESSION['login'];
  95. }
  96.  
  97. echo "<b>Strona:</b><br><br><br>";
  98. echo "Tutaj znajduje się jeden z działów strony wywołany adresem ?go=page<br>Treści te powinny być widoczne tylko dla zarejestrowanych i zalogowanych osób.<br>W innym razie powinien pokazać się napis, że nie jesteśmy zarejestrowani i zalogowani i pod tym formularz rejestracji i logowania.";
  99. }
  100.  
  101.  
  102. ?>
  103.  
  104.  
  105.  
  106. </body>
  107. </html>


Zanim będziesz kopiował to zwróć uwagę na 3 część pod rejestracją... Tam wyciołem ten długi kod i zostawiłem puste więc musisz sobie to ogranąć... Teraz nie powinno się dziać te przeładowanie... smile.gif

Pozdro i pisz jak coś bo ja lece do swojego projektu smile.gif
tinware
Ok, działa...
Słuchaj jest jeszcze problem podczas, gdy użytkownik jest niezalogowany. Na każdej podstronie pokazuj się:

  1. <?php
  2. include('../admin/mysql.php');
  3.  
  4. if (empty($_SESSION['login']))
  5. {
  6.  
  7. die ('Nie jesteś zalogowany...');
  8. }
  9. else
  10. {
  11. echo " ";
  12. }
  13.  
  14.  
  15. if ($_GET['go'] == 'page'){
  16.  
  17. echo "<b>Strona:</b><br><br><br>";
  18. echo "Tutaj znajduje się jeden z działów strony wywołany adresem ?go=page<br>Treści te powinny być widoczne tylko dla zarejestrowanych i zalogowanych osób.<br>W innym razie powinien pokazać się napis, że nie jesteśmy zarejestrowani i zalogowani i pod tym formularz rejestracji i logowania.";
  19. }
  20.  
  21.  
  22. ?>


Nie jesteś zalogowany

... A powinno przekierowywać na strone logowania na stronach "zablokowanych"
a na stronach logowania, rejestracji itd. nie powinno przeladowywac ponownie...

?go=users_logout
dopisałbyś jeszcze na ten adres wylogowywanie...?
Prezi2907
Wywal tego ifa z tym elsem i zobacz jak ja to rozpisałem... TEGO NIE MOŻE TAM BYĆ BO WTEDY BĘDZIE ŁADOWANE ZAWSZE... smile.gif

Nie masz to w żadnym nawiasie {} które oznaczając początek i koniec każdej strony w GET... smile.gif Nie wiem jak Ci to przekazać... smile.gif

  1.  
  2. <?php
  3. include('../admin/mysql.php');
  4.  
  5. if (empty($_SESSION['login'])) //////// TEGO NIE MOŻE BYĆ
  6. { /////////////
  7.  
  8. die ('Nie jesteś zalogowany...'); /////////////////
  9. } /////////////////
  10. else ////////////////
  11. { ///////////////
  12. echo " "; /////////////////
  13. } ////////////////////////////////////////////////// USUŃ TO WSZYSTKO... :) A z tym wylogowaniem to nie kapuje mam Ci napisać wylogowywanie questionmark.gif :)
  14.  
  15.  
  16. if ($_GET['go'] == 'page'){
  17.  
  18. echo "<b>Strona:</b><br><br><br>";
  19. echo "Tutaj znajduje się jeden z działów strony wywołany adresem ?go=page<br>Treści te powinny być widoczne tylko dla zarejestrowanych i zalogowanych osób.<br>W innym razie powinien pokazać się napis, że nie jesteśmy zarejestrowani i zalogowani i pod tym formularz rejestracji i logowania.";
  20. }
  21.  
  22.  
  23. ?>


Aha i ta funkcja die() zatrzymuje całkowicie przeglądarkę i nie ładuje nic więcej dlatego jest to konwencjonalne zabezpieczenie... Bardzo dobre bo go nie miniesz... smile.gif
Pokazuje ona tylko to co znajduje się wewnątrz die("TO JEST TYLKO POKAZYWANE I WYŁĄCZA DALSZE ŁADOWANIE STRONY"); ...
tinware
Jeżeli usuwam to, to czy jestem zalogowany czy nie to mogę czytać "zakazaną" stronę.

Nie, no na necie są dosłownie 2 linijkowe skrypty wylogowywania. Napisałbym sam gdybym to rozumiał... Ale opanowałem z php dodawanie, usuwanie rekordów, nic więcej...
Prezi2907
Co od tego wylogowania daj sobie to gdziekolwiek a odnośniki do tego ładuj gdzie tam musisz i chcesz smile.gif

  1. if($_GET['go'] == "users_logout")
  2. {
  3. $_SESSION = array();
  4. header("Refresh:0; URL=index.php?go=page");
  5. }



Miłej nocki... Heh za tą pomoc to flaszkę widzę... Adres wyśle na PW smile.gif ( JOKE )

Cytat(tinware @ 16.02.2011, 02:41:54 ) *
Jeżeli usuwam to, to czy jestem zalogowany czy nie to mogę czytać "zakazaną" stronę.

Nie, no na necie są dosłownie 2 linijkowe skrypty wylogowywania. Napisałbym sam gdybym to rozumiał... Ale opanowałem z php dodawanie, usuwanie rekordów, nic więcej...

Powiedz mi co jest zakazaną stroną? TEN PAGE TAK ? A ZOBACZ NA CZ 3 KTÓRA CI DAŁEM I SKIRAJ NA SAM DÓŁ smile.gif

Nie zrobiłeś tej 3 części więc nie masz tak jak ja CI podałem... smile.gif
tinware
Cytat(Prezi2907 @ 16.02.2011, 02:45:25 ) *
Nie zrobiłeś tej 3 części więc nie masz tak jak ja CI podałem... smile.gif

A przepraszam, jak kopiowałem to do pliku jeszcze cz. 3 nie było na forum. juz uzupełniam...


Edit:
Teraz PAGE nie pokazj dla zalogowany i niezalogowanych...
Prezi2907
Cytat(tinware @ 16.02.2011, 02:57:01 ) *
A przepraszam, jak kopiowałem to do pliku jeszcze cz. 3 nie było na forum. juz uzupełniam...


Edit:
Teraz PAGE nie pokazj dla zalogowany i niezalogowanych...

Przeładuj mi ten kod i daj link luknę sobie co by tam trzeba było zmienić smile.gif
tinware
- PAGE nie pokazuje dla zalogowany i niezalogowanych...
- nie wylogowywuje

http://pastebin.pl/36638

Edit:
Mam błąd. Jak wycinałeś mój formularz do rejestracji wyciąłeś o za dużo o jedno " }". Już teraz działa...
Prezi2907
Linijka 229 dodaj na końcu ) i będzie ok...

A z tym dostępem zrobimy inaczej poczekaj a między czasie zrób tamto ...

Parse error: syntax error, unexpected '>' in /home/a8731498/public_html/budowa/index.php on line 312

Daj mi tą linijkę 312 bo nie widzę jej tam... Mam tylko do 277 linijki....

Działa questionmark.gif Bo widzę że tam już ok jest smile.gif
tinware
Proszę: http://pastebin.pl/36639
Zaraz ogarnę, czy wszystko działa...


Edit:
  1. if ($_GET['go'] == 'page'){
  2. if (empty($_SESSION['login']))
  3. {
  4.  
  5. die (' ZALOGUJ SIĘ ');
  6. }
  7. else
  8. {
  9. echo "Witamy, ".$_SESSION['login'];
  10. }
  11.  
  12. echo "<b>Strona:</b><br><br><br>";
  13. echo "Tutaj znajduje się jeden z działów strony wywołany adresem ?go=page<br>Treści te powinny być widoczne tylko dla zarejestrowanych i zalogowanych osób.<br>W innym razie powinien pokazać się napis, że nie jesteśmy zarejestrowani i zalogowani i pod tym formularz rejestracji i logowania.";
  14. }

Zamiast napisu zaloguj się, przekierowanie do ?go=users_login_please
Prezi2907
Czyli mam rozumieć że wszystko jest ok i temat może być już zamknięty ? smile.gif
tinware
zaraz sprawdze jeszcze calosc i dam znac...

Edit:
Mam jeden problem:
U mnie strona wygląda nastepujaco

1. Sesja
2. Html, poczatek szablonu
3. php, laczenie sie z baza, GET-y
4. Html, koniec szablonu.

Więc skrypt ucina koncowke szablonu przez tą funkcję DIE.
Jak zrobić, żeby cały html znajdował się na samym dole, php na górze, i w srodku szablonu html wyświetlały się te GET-y jako działy


  1. ///poczatek kodu html szablonu
  2.  
  3. if ($_GET['go'] == 'about_me') {
  4. if (empty($_SESSION['login']))
  5. {
  6. die ('<b>Logowanie:</b><br><br><br><br><br><br><br><br>
  7. aby czytac to co sie zaloguj moze co<br><br>
  8. <form action="page2.php" method="post">
  9. <TABLE width=250 border=0 cellspacing=5 cellpadding=0>
  10. <TR><TD align=right>Login:</TD><TD width=200><INPUT TYPE="text" NAME="login" style="width: 200px"></TD></TR>
  11. <TR><TD align=right>Hasło:</TD><TD width=200><INPUT TYPE="password" NAME="haslo" style="width: 200px"></TD></TR>
  12. <TR><TD align=right></TD><TD width=200 align=right><input type="submit" value="Zaloguj"></TD></TR>
  13. </TABLE>
  14. </form>
  15. <br><br><br><br>Jeżeli nie masz jeszcze konta? <a href=?go=users_add>Zarejestruj się</a>!');
  16. }
  17. else
  18. {
  19. echo "";
  20. }
  21. echo "<b>About Me:</b><br><br><br>";
  22.  
  23. ////koniec kodu html

Prezi2907
Zamiast die() daj echo ''...

usuń te nawiasy od die () i zastąp je echo ' ' ... Będzie ok. Bo te DIE wyłącza całkowicie łączenie się z stroną....

Cytat(tinware @ 16.02.2011, 12:57:39 ) *
zaraz sprawdze jeszcze calosc i dam znac...

Edit:
Mam jeden problem:
U mnie strona wygląda nastepujaco

1. Sesja
2. Html, poczatek szablonu
3. php, laczenie sie z baza, GET-y
4. Html, koniec szablonu.

Więc skrypt ucina koncowke szablonu przez tą funkcję DIE.
Jak zrobić, żeby cały html znajdował się na samym dole, php na górze, i w srodku szablonu html wyświetlały się te GET-y jako działy


  1. ///poczatek kodu html szablonu
  2.  
  3. if ($_GET['go'] == 'about_me') {
  4. if (empty($_SESSION['login']))
  5. {
  6. echo '<b>Logowanie:</b><br><br><br><br><br><br><br><br>
  7. aby czytac to co sie zaloguj moze co<br><br>
  8. <form action="page2.php" method="post">
  9. <TABLE width=250 border=0 cellspacing=5 cellpadding=0>
  10. <TR><TD align=right>Login:</TD><TD width=200><INPUT TYPE="text" NAME="login" style="width: 200px"></TD></TR>
  11. <TR><TD align=right>Hasło:</TD><TD width=200><INPUT TYPE="password" NAME="haslo" style="width: 200px"></TD></TR>
  12. <TR><TD align=right></TD><TD width=200 align=right><input type="submit" value="Zaloguj"></TD></TR>
  13. </TABLE>
  14. </form>
  15. <br><br><br><br>Jeżeli nie masz jeszcze konta? <a href=?go=users_add>Zarejestruj się</a>!';
  16. }
  17. else
  18. {
  19. echo "";
  20. }
  21. echo "<b>About Me:</b><br><br><br>";
  22.  
  23. ////koniec kodu html

ZRÓB TAK JAK POPRAWIŁEM ....

Zasada działania DIE

jeżeli wpiszesz


die();
echo 'TEKST';
KOD STRONY

to nic się nie pokaże a jeśli


echo 'TEKST';
die()
KOD STRONY


to przyjdzie sam tekst a cały kod za nim się już nie pokaże....

Czyli funkcja die() przerywa czytanie kodu lub skryptów całkowicie i pozostawia stronę w stanie do momentu się jej pokazania...
tinware
http://djplate.pl/budowa/users.php?go=users_login

http://pastebin.pl/36688

jak zrobić aby te GETy wyświetlało mi pomiędzy cyframi 1 i 2?
Prezi2907
Oj stary... Weź zrób to obiektowo na funkcjach... Później zapętlasz sobie to ifami i jeżeli masz wartość odpowiednią w tablicy get wtedy pokazuje się dana cześć strony...

Dam Ci na przykładzie ale to jest ostatni gotowiec jaki Ci daje...

  1. function login(){
  2. echo "<b>Logowanie:</b><br><br><br>";
  3.  
  4. echo "<form action=\"index.php\" method=\"post\">";
  5.  
  6. echo "<TABLE width=250 border=0 cellspacing=5 cellpadding=0>";
  7.  
  8. echo "<TR><TD align=right>Login:</TD><TD width=200><INPUT TYPE=\"text\" NAME=\"login\" style=\"width: 200px\"></TD></TR>";
  9.  
  10. echo "<TR><TD align=right>Hasło:</TD><TD width=200><INPUT TYPE=\"text\" NAME=\"haslo\" style=\"width: 200px\"></TD></TR>";
  11.  
  12. echo "<TR><TD align=right></TD><TD width=200 align=right><input type=\"submit\" value=\"Zaloguj\"></TD></TR>";
  13.  
  14. echo "</TABLE>";
  15.  
  16. echo "</form>";
  17.  
  18. echo "<br><br><br>Jeżeli nie masz jeszcze konta? <a href=?go=users_add>Zarejestruj się</a>!";
  19. }


A później pomiędzy 1 i 2 dajesz np...



  1.  
  2. if($_GET['go'] == "logowanie")
  3. {
  4. login(); funkcja logowania się pokaże jeśli ktoś wciśnie logowanie...
  5. }
  6. esle if(JAKIŚ INNY GET)
  7. {
  8. jakaś_inna_funkcja();
  9. }


Przeanalizuj sobie to co Ci podałem popatrz sobie na pętle if
Więcej Ci w tym temacie nie pomogę, resztę mogę wykonać odpłatnie poza forum... smile.gif Pozdrawiam i życzę miłego dnia smile.gif


PS. Jeśli stworzysz funkcje to wywal całą pętle z tym danym GETEM żeby się nie pojawiał... smile.gif Ale tak jak mówiłem całą resztę mogę wykonać w godzinkę ale to już odpłatnie na moim serwerze... Jeśli będzie wszystko śmigać jak sobie życzysz to pogadamy... Pozdrawiam...
tinware
Chyba za bardzo uwierzyłem w swoje siły, nie dam rady już z tym. Miło byłoby gdyby ktoś wziął to jako całość, a nie tłumaczyć tylko częściowo...
Daiquiri
Cytat(tinware @ 16.02.2011, 15:27:02 ) *
Chyba za bardzo uwierzyłem w swoje siły, nie dam rady już z tym. Miło byłoby gdyby ktoś wziął to jako całość, a nie tłumaczyć tylko częściowo...
Takie rzeczy to tylko w giełdzie ofert smile.gif.


Na razie to ja u Ciebie widzę "Parse error"...
tinware
Cytat(Daiquiri @ 16.02.2011, 15:33:02 ) *
Na razie to ja u Ciebie widzę "Parse error"...

To ta linijka

  1. if($_GET['go'] == 'logowanie')
Prezi2907
Cytat(tinware @ 16.02.2011, 15:34:35 ) *
To ta linijka

  1. if($_GET['go'] == 'logowanie')

TE DANE NIE SA DO KOPIOWANIA A DO ANALIZY smile.gif heh... przestudiuj sobie proszę to funkcje i zależność...
tinware
  1. <?php
  2.  
  3. function main_page(){
  4. echo "Tresc działu Main Page";
  5. }
  6.  
  7. ?>
  8.  
  9. <html>
  10. <body>
  11.  
  12. <?php
  13.  
  14. if($_GET['go'] == "main_page")
  15. {
  16. main_page();
  17. }
  18.  
  19. ?>
  20.  
  21. </body>
  22. </html>


Czy o coś takiego chodzi ?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.