PHP Centeri avaleht Skriptikogu Küsimuste-vastuste leht Teadete vaatamine ja saatmine Foorum - koht küsimiseks Otsingumootor Siit saad infot meie kohta

Kasutajanimi:  
  Parool: 
  Registreeri!   Unustasid salasõna?

Foorumid Programmeerimine PHP & MySQL sessioonid ikke :/
Autor Abi Postitus Abi

qrat

Postitusi: 109
Tase: 5
Olek: Offline

Hinnang: Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10
sessioonid ikke :/

PHP kood:


$sql "select kasutajanimi from kasutajad where user = '".$megauser."'
    and pass = '"
.$megapass."'";

    
$result mysql_query($sql);

    if (
$myrow mysql_fetch_array($result)) {

        
header("location: index.php");

    }


sellise jupiga kontrollime siis, kas mysql-is on olemas $megauser ja $megapass, kui on siis selle if() lause vahel peaks registreerima sessiooni.´
Kuid on selline vajadus, et sinna tuleks veel yks asi. Nimelt kui kasutaja tyyp on n2iteks admin, siis registreeritakse ja alustatakse 2 sessiooni, kuid tavakasutajale, kelle tyyp ei ole admin, antakse 1 sessioon.. kuidas oleks selline asi v6imalik? ehk saaks keegi toda scripti natuke t2iendada?
point on selles, et kui ta tyyp on admin, siis regatakse n2iteks sess nimega admin ning ka n2iteks megasess, mis on siis ka tavakasutajal olemas ning tavakasutajale antakse tema megasess lihtsalt :/ loodan et keegi sai minu jutust ka aru



04.03.2002 15:50:58 Vajutades siia näed kasutaja qrat profiili

kurikael
arvutiahistaja


Postitusi: 299
Tase: 6
Olek: Offline

Hinnang: Administratiivhinnang: 9/10Administratiivhinnang: 9/10Administratiivhinnang: 9/10Administratiivhinnang: 9/10Administratiivhinnang: 9/10Administratiivhinnang: 9/10Administratiivhinnang: 9/10Administratiivhinnang: 9/10Administratiivhinnang: 9/10
RE: sessioonid ikke :/

PHP kood:


$sql mysql_query("select kasutajanimi from kasutajad where user = '".$megauser."'
    and pass = '"
.$megapass."'");
if(
mysql_num_rows($sql) > 0) { //kui selline kasutaja on olemas ehk tulemus ei ole 0
    
session_register(admin);
    
session_register(megauser);
    
$admin "sinu pandud v22rtus";
    
$megauser "sinu teine v22rtus";

    
//sama asja võid teha ka nii:
    
    
session_register(user);
    
$user[admin];
    
$user[megauser];
    }



___________________________________________________
You go to hell! You go to hell and you die!

04.03.2002 19:48:34 Vajutades siia näed kasutaja kurikael profiili

qrat

Postitusi: 109
Tase: 5
Olek: Offline

Hinnang: Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10
RE: sessioonid ikke :/

ehh.. praegu antakse ju igale logijale 2 sessiooni, isegi too adminni oma..

point on selles, et ta annaks kasutajale, kelle $tyyp = admin siis tolle adminnisessiooni ning tavalise megauuseri sessiooni, kuid tavakasutajale antakse siis ainult megauuseri sessioon.. :/

ma proovisin sinna veel yht if lauset vahele toppida, kuid see eba6nnestus :/

04.03.2002 19:58:22 Vajutades siia näed kasutaja qrat profiili

kurikael
arvutiahistaja


Postitusi: 299
Tase: 6
Olek: Offline

Hinnang: Administratiivhinnang: 9/10Administratiivhinnang: 9/10Administratiivhinnang: 9/10Administratiivhinnang: 9/10Administratiivhinnang: 9/10Administratiivhinnang: 9/10Administratiivhinnang: 9/10Administratiivhinnang: 9/10Administratiivhinnang: 9/10
RE: sessioonid ikke :/

heh, sry, unustasin, milles asja point oli.. mysql tabelis peab sul iga kasutaja taga olema ka veerg, kus on määratud, kas ta on admin või tavakasutaja. sel juhul teed siis nii:
PHP kood:


$sql mysql_query("select kasutajanimi from kasutajad where user = '".$megauser."'
    and pass = '"
.$megapass."'");
while(
$row mysql_fetch_assoc($sql)) {
    if(
mysql_num_rows($sql) > && $row[kasutaja_staatus] == admin) { //kui selline kasutaja on olemas ehk tulemus ei ole 0
       
session_register(admin);
       
session_register(megauser);
       
$admin "sinu pandud v22rtus";
       
$megauser "sinu teine v22rtus";

    
//sama asja võid teha ka nii:
    
       
session_register(user);
       
$user[admin];
       
$user[megauser];
    }
    else {
       
session_register(kasutaja);
}



___________________________________________________
You go to hell! You go to hell and you die!

04.03.2002 20:08:05 Vajutades siia näed kasutaja kurikael profiili

anc

Postitusi: 3
Tase: 1
Olek: Offline

Hinnang: Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10
RE: sessioonid ikke :/

lihtsalt mainin:

PHP kood:

$user[admin];


see on küll töötav, kuid ametlikult mittesoositav kirjutamisstiil. parem oleks nii
PHP kood:

$user[$admin];



04.03.2002 21:13:40 Vajutades siia näed kasutaja anc profiili

lauri

Postitusi: 11
Tase: 2
Olek: Offline

Hinnang: Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10
RE: sessioonid ikke :/

irw. karm värk teil siin:P
abiks oleks kontrollitav kasutajatüüp mysqli käest küsida ka:
PHP kood:

$sql mysql_query("select kasutajanimi,[B]kasutaja_staatus[/B] from kasutajad where user = '".$megauser."' and pass = '".$megapass."'"); 



siis võiks igale stringile ümber kirjutada "string", muidu võetakse neid konstantidena.

Ja ma ei usu et
Tsiteeritud tekst:
$user[$admin];
töötaks kuna mõeldud on siiski $user["admin"]

05.03.2002 06:10:21 Vajutades siia näed kasutaja lauri profiili
Kokku: 25955 registreerunud kasutajat, 9711 teemat, 54603 postitust.
Täna on neljapäev, 28. mai 2020. Kell on 03:08.

    Vaata selle lehe printerisõbralikku versiooni

Avaleht   -    Skriptikogu   -    Teated   -    Foorum   -    Reklaam   -    Tagasiside   -    Kasutamise reeglid

© Copyright 2002-2020 PHP Center. Kõik õigused reserveeritud.