[PHP] het getal 0 wordt niet meegegeven in een sessie

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Harrie_
  • Registratie: Juli 2003
  • Niet online

Harrie_

⠀                  🔴 🔴 🔴 🔴 🔴

Topicstarter
een stukje van mijn code om mee te beginnen

PHP:
1
2
3
4
5
6
7
8
9
10
    session_start();

    $query = "SELECT * FROM `tabel` WHERE `username`='$username' AND `password`='$md5pass'";
    $result = mysql_query($query) or die(mysql_error());  
    $row = mysql_fetch_array($result);  

    $s_user_rank = $row["rank"];  
    session_register("s_user_rank");  

                echo $_SESSION['s_user_rank'];


inloggen gaat perfect echter in mijn database staat toch echt dat mijn rank 0 is en echo $_SESSION['s_user_rank']; geeft 1

Hoeder van het Noord-Meierijse dialect


Acties:
  • 0 Henk 'm!

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 15:29

crisp

Devver

Pixelated

als je superglobals gebruikt moet je ook geen session_register meer gebruiken...

Intentionally left blank


Acties:
  • 0 Henk 'm!

  • Harrie_
  • Registratie: Juli 2003
  • Niet online

Harrie_

⠀                  🔴 🔴 🔴 🔴 🔴

Topicstarter
crisp schreef op 04 januari 2004 @ 18:07:
als je superglobals gebruikt moet je ook geen session_register meer gebruiken...
dat daargelaten want ik register nog een hoop meer dingen en die doen eht wel, behalve rank

Hoeder van het Noord-Meierijse dialect


Acties:
  • 0 Henk 'm!

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 15:29

crisp

Devver

Pixelated

McLatey schreef op 04 januari 2004 @ 18:08:
[...]


dat daargelaten want ik register nog een hoop meer dingen en die doen eht wel, behalve rank
niks daargelaten, het is wel de oorzaak van je probleem. Als je nu gewoon

PHP:
1
$_SESSION['s_user_rank'] = $row['rank'];


doet moet het goed zijn. session_register en $_SESSION door elkaar gebruiken geeft gewoon problemen.

Intentionally left blank


Acties:
  • 0 Henk 'm!

  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

Waarom doe je het niet zoals het hoort :?
PHP:
1
2
3
4
5
6
7
8
9
10
    session_start();

    $query = "SELECT * FROM `tabel` WHERE `username`='$username' AND `password`='$md5pass'";
    $result = mysql_query($query) or die(mysql_error());  
    $row = mysql_fetch_array($result);  

    $s_user_rank = $row["rank"];
    $_SESSION['s_user_rank'] = $row["rank"];

    echo $_SESSION['s_user_rank'];


edit:
Zoals crisp dus al zegt :)

[ Voor 30% gewijzigd door Spider.007 op 04-01-2004 18:13 ]

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


Acties:
  • 0 Henk 'm!

  • defl8te
  • Registratie: Augustus 2001
  • Laatst online: 09-09-2024

defl8te

weetikkût

Toch heeft 'ie gelijk, probeer dit eens...;

PHP:
1
2
$_SESSION['s_user_rank'] = $row["rank"];   
print_r($_SESSION);


het zou nog kunnen dat rank niet 0 is, maar NULL (leeg dus), met print_r zie je dat iets gemakkelijker :)

edit:

HAHA! B)

[ Voor 13% gewijzigd door defl8te op 04-01-2004 18:14 ]

Chriet Titulaer is de man


Acties:
  • 0 Henk 'm!

  • Harrie_
  • Registratie: Juli 2003
  • Niet online

Harrie_

⠀                  🔴 🔴 🔴 🔴 🔴

Topicstarter
crisp schreef op 04 januari 2004 @ 18:12:
[...]

niks daargelaten, het is wel de oorzaak van je probleem. Als je nu gewoon

PHP:
1
$_SESSION['s_user_rank'] = $row['rank'];


doet moet het goed zijn. session_register en $_SESSION door elkaar gebruiken geeft gewoon problemen.
geeft nog steeds rank = 1

Hoeder van het Noord-Meierijse dialect


Acties:
  • 0 Henk 'm!

  • Harrie_
  • Registratie: Juli 2003
  • Niet online

Harrie_

⠀                  🔴 🔴 🔴 🔴 🔴

Topicstarter
ik krijg dit met print_r

code:
1
2
Array ( [s_user_id] => 1 [s_user_username] => Pipo [s_user_email] => pipo@clown.nl
[s_user_rank] => 1 [s_user"id] => 1 )


waarom staat er achteraan s_user"id (???) en hoe komt s_user_rank 1 als in de dbase staat dattie 0 is

[ Voor 12% gewijzigd door Harrie_ op 04-01-2004 18:20 ]

Hoeder van het Noord-Meierijse dialect


Acties:
  • 0 Henk 'm!

  • Terranca
  • Registratie: April 2000
  • Laatst online: 18-09 18:25
Wat geeft
PHP:
1
echo $row["rank"];
dan :?

Acties:
  • 0 Henk 'm!

  • Harrie_
  • Registratie: Juli 2003
  • Niet online

Harrie_

⠀                  🔴 🔴 🔴 🔴 🔴

Topicstarter
Terranca schreef op 04 januari 2004 @ 18:27:
Wat geeft
PHP:
1
echo $row["rank"];
dan :?
0

Hoeder van het Noord-Meierijse dialect


Acties:
  • 0 Henk 'm!

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 15:29

crisp

Devver

Pixelated

zolang je ergens in je script nog iets met session_register, session_is_registered of session_unregister doet is het resultaat niet voorspelbaar.
lees de cautions op http://nl3.php.net/session_register

Intentionally left blank


Acties:
  • 0 Henk 'm!

  • Terranca
  • Registratie: April 2000
  • Laatst online: 18-09 18:25
Dan zou ik ten eerste maar s een keer die hele session leeggooien:
PHP:
1
2
3
4
// Unset all of the session variables.
$_SESSION = array();
// Finally, destroy the session.
session_destroy();


En dan die hele session_register overboord gooien. Dus gewoon met $_SESSION["s_rank"] = $row["rank"]; werken
als t dan niet werkt heb je een raar probleem :P

Acties:
  • 0 Henk 'm!

  • defl8te
  • Registratie: Augustus 2001
  • Laatst online: 09-09-2024

defl8te

weetikkût

McLatey schreef op 04 januari 2004 @ 18:20:
ik krijg dit met print_r

code:
1
2
Array ( [s_user_id] => 1 [s_user_username] => Pipo [s_user_email] => pipo@clown.nl
[s_user_rank] => 1 [s_user"id] => 1 )


waarom staat er achteraan s_user"id (???) en hoe komt s_user_rank 1 als in de dbase staat dattie 0 is
zo te zien heb je een typo gemaakt in een van je mysql velden :)

Chriet Titulaer is de man

Pagina: 1