![]() |
Sesje php - zapamiętywanie danych do bazy - Wersja do druku +- Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów (https://www.webmastertalk.pl) +-- Dział: Technologie internetowe - tworzenie stron WWW (https://www.webmastertalk.pl/forum-technologie-internetowe-tworzenie-stron-www) +--- Dział: Programowanie, Bazy danych (https://www.webmastertalk.pl/forum-programowanie-bazy-danych) +--- Wątek: Sesje php - zapamiętywanie danych do bazy (/thread-sesje-php-zapamietywanie-danych-do-bazy) |
Sesje php - zapamiętywanie danych do bazy - toma5z - 26-07-2010 Witam wszystkich, mam pewien problem z PHP i MySQL. W ramach mojego ćwiczenia chciałbym zrobić panel administracyjny do bazy danych dla użytkowników. Wyglądało by to w następujący sposób: 1 strona - Pola login i hasło. (użytkownik się loguje do MySQL podając login i hasło - następnie jest to wpisywane do sesji) 2 strona - Panel administracyjny bazy. (użytkownik wybiera sobie daną bazę z rozwijanego menu aby przejrzeć rekordy) 3 strona - Wyświetlanie wyników bazy. W kodzie który napisałem to wygląda tak: 1 Strona - index.php Kod: <html> 2 Strona - selectdb.php Kod: <?php 3 Strona - baza.php Kod: <?php Niestety, nie przechowuje mi sesji. Pracuje na lokalnym hoście w domu, na wewnętrznym środowisku apache+php+mysql - XAMPP Logowanie do bazy z poziomu konsoli jest bezproblemowe, tak samo nie ma problemów z wyświetlaniem zapytania "select * from produkty". Proszę o pomoc, jak mogę "bezpiecznie" przechowywać dane dotyczące loginu i hasła by użytkownik był ciągle zalogowany do bazy ? RE: Sesje php - zapamiętywanie danych do bazy - KeeL - 26-07-2010 Ja proponuję Ci zrobić zmienną sesyjną np zalogowany, gdzie jeżeli osoba będzie zalogowana to wartość tej zmiennej będzie TRUE, natomiast jeżeli nie to FALSE, i na początku każdej podstrony sprawdzasz tą wartość. RE: Sesje php - zapamiętywanie danych do bazy - mateo - 26-07-2010 Ale co to znaczy logowanie do MySQL? Chyba terminologia nieopanowana. Na pewno chodzi o logowanie z wykorzystaniem danych z bazy MySQL. RE: Sesje php - zapamiętywanie danych do bazy - toma5z - 26-07-2010 (26-07-2010, 17:35)KeeL napisał(a): Ja proponuję Ci zrobić zmienną sesyjną np zalogowany, gdzie jeżeli osoba będzie zalogowana to wartość tej zmiennej będzie TRUE, natomiast jeżeli nie to FALSE, i na początku każdej podstrony sprawdzasz tą wartość. Ammm... Nie rozumię... Chodzi Tobie aby sprawdzać czy sesja jest przechowywana ? - bo jeżeli tak, to już to sprawdzałem wyświetlając poprzez Kod: echo $_SESSION['login']; i jest przechowywana do 2giej strony selectdb.php ale już w baza.php jej nie ma... Bo z samą zmienną sesyjną boolowską raczej się nie zalogujemy do sql'a : P Może nie bawić się w sesje, a zmienić na pola ukryte... ? i przekazywać je z podstrony na podstronę - rozwiązanie partyzanckie... : / (26-07-2010, 17:38)mateo napisał(a): Ale co to znaczy logowanie do MySQL? Chyba terminologia nieopanowana. Na pewno chodzi o logowanie z wykorzystaniem danych z bazy MySQL. Chodzi mi o to aby się logować do MySQL w identyczny sposób jak to robimy z poziomu konsoli. Z tym że chciałem do tego zrobić własny interfejs graficzny... z ograniczeniem dla niektórych userów do edycji poszczególnych baz -> zapis/modyfikacja rekordów Za każdym razem wywala mi takie warningi: Kod: Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\xampp\xampp\htdocs\selectdb.php:1) in C:\xampp\xampp\htdocs\selectdb.php on line 2 edit: Dobra ogarnąłem to, wina leży po stronie XAMPP, załadowałem to na zewnętrzny serwer i jest ok. Sprawdźcie o co mi chodziło: http://mysql.tomsol.cba.pl/ login: tomsol haslo: 123456 Tylko chciałbym, by ktoś mi wytłumaczył dlaczego u mnie na komputerze się tak to krzaczy ? dlaczego takie monity wywala mi ? Czy da się to naprawić ? Przecież nie będę za każdym razem UL na serwer moich wypocin... Cookie mam akceptowane przez przeglądarkę. RE: Sesje php - zapamiętywanie danych do bazy - KeeL - 26-07-2010 spójrz co Ci wychodzi po zalogowaniu, Kod: Panel Admnistracyjny MySQL Wpisze byle co do tego i wychodzi to samo, Co w ogóle chcesz osiągnąć jaki masz cel? Po co przechowywujesz login i hasło w zmiennych sesyjnych? Chcesz aby witryna była dostępna po podaniu hasła i loginy? RE: Sesje php - zapamiętywanie danych do bazy - toma5z - 26-07-2010 (26-07-2010, 18:48)KeeL napisał(a): spójrz co Ci wychodzi po zalogowaniu, Sorry zmienna string - "zalogowany" była to zmienna testowa nie mająca nic do dodania w kodzie. Dodałem ją przed załadowaniem plików do bazy. - poprawiłem - wyniki wyświetlane "na sztywno" ale działa. (26-07-2010, 18:48)KeeL napisał(a): Wpisze byle co do tego i wychodzi to samo,Chciałbym aby strona a właściwie baza była dostępna po zalogowaniu się. Aby określony użytkownik mógł sprawdzać bazę / modyfikować ją wg. potrzeb. Jak wcześniej pisałem, jest to dla mnie ćwiczenie, dopiero poznaje język PHP, a właściwie jego funkcje którymi dysponuje. Co do mojego problemu na localhoscie pomogło zapisanie pliku w formacie utf-8 bez BOM... hm... RE: Sesje php - zapamiętywanie danych do bazy - KeeL - 26-07-2010 RE: Sesje php - zapamiętywanie danych do bazy - toma5z - 26-07-2010 |