![]() |
![]() ![]() |
![]() |
-Wieviór- |
![]()
Post
#1
|
Goście ![]() |
Mam skrypt logowania i sesji... dziala mi :!:
Ale on jest dostosowany do jednego loginu i jednego hasla, a ja bym chcial zeby byl oparty na bazie danych, tzn. mam tabele uzytkownicy i tam mam pola "login" "haslo" i inne ale nie dotyczy.' Czy moglibyscie mi zmienic ten skrypt na taki na baze? index.php [php:1:6c25ac14b2] <html> <body> <form action="login.php" method="post"> login <input type="text" name="login"><br /> password<input type="password" name="password"> <br /> <input type="submit" value="loguj"> </form> </body> </html> [/php:1:6c25ac14b2] login.php [php:1:6c25ac14b2]<?php session_start(); //tu nalezalo by sie odwolac do bazy if ($_POST['login'] == "user1" && $_POST['password'] == "123") { $_SESSION["LOGGED_USER_ID"]="user1"; header ("location: konto.php"); } else { session_destroy(); header ("location: index.php"); } ?>[/php:1:6c25ac14b2] konto.php [php:1:6c25ac14b2]<?php session_start(); if (!isset($_SESSION["LOGGED_USER_ID"])) { session_destroy(); header ("location: index.php"); } else { print "<a href="logout.php"> logout </a>"; } ?>[/php:1:6c25ac14b2] logout.php [php:1:6c25ac14b2]<?php session_start(); $_SESSION["LOGGED_USER_ID"]=""; session_destroy(); header ("location: index.php"); ?>[/php:1:6c25ac14b2] |
|
|
-Wieviór- |
![]()
Post
#2
|
Goście ![]() |
HALLO!!
![]() |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 352 Pomógł: 1 Dołączył: 17.07.2003 Skąd: Kazanów Ostrzeżenie: (0%) ![]() ![]() |
login.php:
[php:1:e944f0a076]<?php //wyedytuj sobie te zmienne $dbHost = 'host'; $dbUser = 'nazwa_usera_do_mysqla'; $dbHaslo = 'haslo_do_mysqla'; $dbName = 'nazwa_bazy'; //koniec edycji mysql_connect("$dbHost","$dbUser","$dbHaslo") or die ("Nie można połączyć się z MySQL"); mysql_select_db("$dbName") or die ("Nie można połączyć się z bazą danych"); $query = mysql_query("SELECT * FROM `uzytkownicy` WHERE `username`='".$_POST['login']."' AND `haslo`='".$_POST['password']."'"); if(!$query) die("Błąd zapytania!"); $ile = mysql_num_rows($query); if($ile<1) die("Podane dane są błędne!"); $_SESSION['LOGGED_USER_ID']=$_POST['login']; header("Location: konto.php"); ?>[/php:1:e944f0a076] pisałem szybko ale powinno działać ;] [EDIT] w zmiennej $query podałem moje przykładowe nazwy pól w tabeli uzytkownicy. zmien je sobie do danych ustawionych u ciebie ;] |
|
|
-Wieviór- |
![]()
Post
#4
|
Goście ![]() |
Kod Błąd zapytania!
ale wydaje sie ze bedzie dzialac ![]() |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 352 Pomógł: 1 Dołączył: 17.07.2003 Skąd: Kazanów Ostrzeżenie: (0%) ![]() ![]() |
a pozmieniałeś te nazwy pól?
|
|
|
-Wieviór- |
![]()
Post
#6
|
Goście ![]() |
tak
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 352 Pomógł: 1 Dołączył: 17.07.2003 Skąd: Kazanów Ostrzeżenie: (0%) ![]() ![]() |
zmieniłem lekko kod. spróbuj teraz
|
|
|
-Wieviór- |
![]()
Post
#8
|
Goście ![]() |
Skrypt tak jakby zostaje w miejscu, jak sie zaloguje to zostaje przy index.php, juz mam którys rz taki blad
![]() |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 352 Pomógł: 1 Dołączył: 17.07.2003 Skąd: Kazanów Ostrzeżenie: (0%) ![]() ![]() |
a wstaw taki kodzik:
[php:1:37eff85d44]<?php echo" Skrypt nie staje w miejscu ;] "; ?>[/php:1:37eff85d44] po: [php:1:37eff85d44]<?php if($ile<1) die("Podane dane są błędne!"); ?>[/php:1:37eff85d44] |
|
|
-Wieviór- |
![]()
Post
#10
|
Goście ![]() |
Skrypt nie staje w miejscu ;]
Warning: Cannot modify header information - headers already sent by (output started at c:usrkrasnalwwwtypowanienowe2login.php:18) in c:usrkrasnalwwwtypowanienowe2login.php on line 21 :? |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 897 Pomógł: 40 Dołączył: 16.12.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Błąd z headerem genruje Ci ten fragment z "Skrypt nie staje w miejscu", po prostu to wykasuj albo wstaw ob_start(); na początek skryptu i ob_end_flush(); na koniec.
-------------------- how many SEO experts does it take to change a light bulb,lightbulb,light,bulb,lamp,lighting,switch,sex,xxx
5-Reasons-why-you-should-NEVER-fix-a-computer-for-free |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 352 Pomógł: 1 Dołączył: 17.07.2003 Skąd: Kazanów Ostrzeżenie: (0%) ![]() ![]() |
no to trzeba było od razu pisac że ci ten komunikat wywala ;] bo teraz to praktycznie w każdym skrypcie w którym wysyłasz informacje do przeglądarki to musisz wstawić funkcję ob_start() na samym początku i ob_end_flush na samym końcu ;]
Pozdrawiam, Ive |
|
|
-Wieviór- |
![]()
Post
#13
|
Goście ![]() |
Tzn. Co gdzie i jak??
![]() ![]() ![]() |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 335 Pomógł: 0 Dołączył: 15.11.2003 Ostrzeżenie: (0%) ![]() ![]() |
[php:1:652a802f25]<?php
ob_start(); //wyedytuj sobie te zmienne $dbHost = 'host'; $dbUser = 'nazwa_usera_do_mysqla'; $dbHaslo = 'haslo_do_mysqla'; $dbName = 'nazwa_bazy'; //koniec edycji mysql_connect("$dbHost","$dbUser","$dbHaslo") or die ("Nie można połączyć się z MySQL"); mysql_select_db("$dbName") or die ("Nie można połączyć się z bazą danych"); $query = mysql_query("SELECT * FROM `uzytkownicy` WHERE `username`='".$_POST['login']."' AND `haslo`='".$_POST['password']."'"); if(!$query) die("Błąd zapytania!"); $ile = mysql_num_rows($query); if($ile<1) die("Podane dane są błędne!"); $_SESSION['LOGGED_USER_ID']=$_POST['login']; header("Location: konto.php"); ob_end_flush(); ?>[/php:1:652a802f25] |
|
|
-Wieviór- |
![]()
Post
#15
|
Goście ![]() |
Dodalem na poczatek:
ob_start(); Na koniec: ob_end_flush(); I znów stoi w miejscu, ale nie ma komunikatu a zostawilem echo... :? |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 8.07.2025 - 09:32 |