Autor | Zpráva | ||
---|---|---|---|
killer Profil |
#1 · Zasláno: 11. 11. 2006, 19:19:19
Starý problém je vyřešen a narazil jsem na nový, potřebuji udělat přihlášení, ověřuje to z db, ale nějak to nechce převzít informace z přihlašovacího rofmuláře, pokud najdete chybu, prosím opravte me
přes vyplněný formuláš se spustí toto: <?php include("connection.php"); session_start(); function userid($login,$pass,$link) { $vysledek = mysql_query("SELECT id FROM onlineGlogin WHERE login = '$login' AND password = '$pass'",$link); if(mysql_num_rows($vysledek) == 0) return false; else { $radek = mysql_fetch_array($vysledek); return $radek["id"]; } } $name = $_POST["login"]; $pass = md5($_POST["pass"]); $link = mysql_connect($dbhost,$dbuser,$dbpass); mysql_select_db($dbname,$link); $uid = userid($name,$pass,$link); if(!$uid) header("Location: ../index.php?site=admin_login"); else { session_start("uid"); $_SESSION["uid"] = $uid; header("Location: ../index.php?site=admin_onlinegames"); } ?> a to by mělo přesměrovat na soubor, ten je ale chráněn proti nezvaným uživatelům tímto: <?php session_start(); if(!isset($_SESSION["uid"])) { echo"Nejste prihlášen"; die; } ?> ale i když to přesměruje napíše se: Nejste prihlášen THX za rady |
||
Anonymní Profil * |
#2 · Zasláno: 11. 11. 2006, 19:55:46
killer
Problém bych viděl zde: session_start("uid"); |
||
killer Profil |
#3 · Zasláno: 11. 11. 2006, 21:10:55
tak tím to není, i s tím to nefunguje
|
||
Alphard Profil |
#4 · Zasláno: 11. 11. 2006, 21:17:37
tak tím to není, i s tím to nefunguje
zkoušel jsi session_register("uid"); ? |
||
killer Profil |
#5 · Zasláno: 11. 11. 2006, 21:28:14
nezkoušel, jak to mám použít ??
|
||
Anonymní Profil * |
#6 · Zasláno: 11. 11. 2006, 21:28:40
killer:
tak tím to není, i s tím to nefunguje Právě, že to zkuste bez toho, máte v prvním skriptu na začátku session_start() a níže před přiřazením hodnoty do proměnné $_SESSION["uid"] máte session_start("uid"). Proč? |
||
killer Profil |
#7 · Zasláno: 11. 11. 2006, 21:41:03
i když jsem to udělal bez toho session_start("uid"); nejedeto, ale možná něco mám špatně
<?php include("connection.php"); session_start(); function userid($login,$pass,$link) { $vysledek = mysql_query("SELECT id FROM onlineGlogin WHERE login = '$login' AND password = '$pass'",$link); if(mysql_num_rows($vysledek) == 0) return false; else { $radek = mysql_fetch_array($vysledek); return $radek["id"]; } } $name = $_POST["login"]; $pass = md5($_POST["pass"]); $link = mysql_connect($dbhost,$dbuser,$dbpass); mysql_select_db($dbname,$link); $uid = userid($name,$pass,$link); if(!$uid) header("Location: ../index.php?site=admin_login"); else { $_SESSION["uid"] = $uid; header("Location: ../index.php?site=admin_onlinegames"); } ?> a u ověření <?php if(!isset($_SESSION["uid"])) { echo"Nejste prihlášen"; die; } ?> |
||
Anonymní Profil * |
#8 · Zasláno: 11. 11. 2006, 21:46:51
killer:
Nyní vám u skriptu pro ověření chybí session_start(), ale v první ukázce tam bylo. :) |
||
killer Profil |
#9 · Zasláno: 11. 11. 2006, 21:49:18
|
||
Alphard Profil |
#10 · Zasláno: 11. 11. 2006, 23:09:51
zkus ještě tohle:
<?php include("connection.php"); session_start(); function userid($login,$pass,$link) { $vysledek = mysql_query("SELECT id FROM onlineGlogin WHERE login = '$login' AND password = '$pass'",$link); if(mysql_num_rows($vysledek) == 0) return false; else { $radek = mysql_fetch_array($vysledek); return $radek["id"]; } } $name = $_POST["login"]; $pass = md5($_POST["pass"]); $link = mysql_connect($dbhost,$dbuser,$dbpass); mysql_select_db($dbname,$link); $uid = userid($name,$pass,$link); if(!$uid) header("Location: ../index.php?site=admin_login"); else { session_register("uid"); $_SESSION["uid"] = $uid; header("Location: ../index.php?site=admin_onlinegames"); } ?> |
||
killer Profil |
#11 · Zasláno: 11. 11. 2006, 23:51:09
díky problém jsem už vyřešil
|
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0