[PHP] Session registreren zich niet

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik heb net als veel mensen een inlog probleem met me sessions.
Op mijn webspace van PCX wil php me sessions niet registreren.
Maar me thuis server werkt dit echter zonder problemen.

Ik leg uit:
Ik heb een index.php waar de login pagina wordt geinclude (index.php?page=login). Als je dan inlogt registreert hij een session.
Dan check ik dus alleen of de session bestaad als iemand wil posten.

Thuis werkt dit dus perfect onder PHP 4.4 (http://irc.zonax.net:1337/phpinfo.php)
Op PCX werkt dit niet goed (PHP 4.4 ook > zie http://takayamasoft.zonax.net/phpinfo.php)

URL's van de paginas:
http://irc.zonax.net:1337/TakayamaSoft/PHP...ds-0.1-BETA-nl/
(Deze is natuurlijk niet altijd online.. maar overdag meestal wel vanaf 3 uur.. en weekend 12 uur).

http://takayamasoft.zonax.net
PCextreme space


PHPS:
http://takayamasoft.zonax.net/index.phps (deze phps mist ob_start(); nog bovenaan.. in de .php staat die der wel in)
http://takayamasoft.zonax.net/zk_boards_login.phps

Ik heb gister en eergister op GoT topics gezocht, meerdere dingen ook geprobeerd. Maar dat wil ook niet werken.
Ook op de IRC server en het forum van me host gevraagd, maar bij het forum krijg ik zelfs niet eens een reactie :/
bij elkaar nu 6 uur gekloot hiermee, maar het geluk staat me niet bij. :(

Daarom start ik maar een topic op GoT. Ik hoop dat jullie me kunnen helpen!

Acties:
  • 0 Henk 'm!

  • JKVA
  • Registratie: Januari 2004
  • Niet online

JKVA

Design-by-buzzword fanatic

Kan je iets meer over de fout zeggen? Niet kunnen inloggen is één ding, maar waarom je niet kan inloggen, een tweede.

Kortom bij welke regel wordt het gedrag anders?

Fat Pizza's pizza, they are big and they are cheezy


Acties:
  • 0 Henk 'm!

Verwijderd

Post eens wat code.

Misschien dat bij jou thuis sessies automatisch gestart worden, en op de server ergens anders niet.

Edit: net wakker |:(

Maar check mijn tweede zin eens :)

[ Voor 21% gewijzigd door Verwijderd op 30-10-2005 13:20 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik zou het proberen uit te leggen.

Bij de inlog pagina wordt een session geregistreerd als de inlog gegevens goed zijn.
Dat gebeurt hier:
code:
1
2
3
4
5
6
7
8
9
10
11
if($_GET['action'] == 1){
    $login="SELECT * FROM zk_boards_users WHERE username = '".$_POST['username']."' AND wachtwoord = '".$_POST['wachtwoord']."'";
    $query=mysql_query($login);
    $aantal=mysql_num_rows($query); 
    if($aantal == 1){ // als true is logt hij in
        session_start();
        $_SESSION['username'] = $_POST['username'];
        header("location: index.php?page=login&action=2");
    }else{
        echo'Deze nickname bestaat niet in de database of fout wachtwoord';
    }


Bij me thuis server wordt deze nu registreerd. Maar bij PCX kan ik sessions alleen op dezelfde pagina gebruiken.
Ze worden dus afgebroken zodra ik naar een andere pagina ga. Athans dat snap ik eruit, mischien is er iets een beetje anders.

Acties:
  • 0 Henk 'm!

  • Peter
  • Registratie: Januari 2005
  • Laatst online: 13-09 17:10
Je opent session_start() vrij laat, al is dat opzich geen probleem. Weet je zeker dat session_save_path (in php.ini) goed staat, en of je op de andere pagina überhaupt de sessie wel geopend hebt?

Redelijk vaag though.. Ik zal zelf ook wel even wat opzoeken :)

offtopic:
Suzuka _/-\o_

[ Voor 18% gewijzigd door Peter op 30-10-2005 13:29 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
dat session_start(); is eigelijk niet eens nodig lijkt mij in de pagina waar me login pagina wordt geinclude staat session_start() al bovenaan (zie phps)

Acties:
  • 0 Henk 'm!

  • JKVA
  • Registratie: Januari 2004
  • Niet online

JKVA

Design-by-buzzword fanatic

Dat is waarschijnlijk het probleem, door session_start 2x te doen, slaat ie het in een andere sessie op ofzo. Heb ook ooit zoiets gehad.

Gewoon altijd session_start bovenaan en verder niet lost het denk ik wel op.

[ Voor 23% gewijzigd door JKVA op 30-10-2005 13:33 ]

Fat Pizza's pizza, they are big and they are cheezy


Acties:
  • 0 Henk 'm!

  • Snake
  • Registratie: Juli 2005
  • Laatst online: 07-03-2024

Snake

Los Angeles, CA, USA

Ik ben ook gehost bij PCX, maar het Sessions probleem is toch opgelost?

Going for adventure, lots of sun and a convertible! | GMT-8


Acties:
  • 0 Henk 'm!

  • Peter
  • Registratie: Januari 2005
  • Laatst online: 13-09 17:10
JKVA schreef op zondag 30 oktober 2005 @ 13:32:
Dat is waarschijnlijk het probleem, door session_start 2x te doen, slaat ie het in een andere sessie op ofzo. Heb ook ooit zoiets gehad.

Gewoon altijd session_start bovenaan en verder niet lost het denk ik wel op.
Dat maakt in principe niets uit.

Na je source nog wat bekeken te hebben, zie ik dat het fragment dat je hier gepost hebt veranderd is qua opmaak, daar zit de fout dus ook in ;) Tenminste, dat geeft IE aan.

PHP:
1
2
3
4
5
6
if($_GET['action'] == 1){ 
    $login="SELECT * FROM zk_boards_users WHERE username = '".$_POST['username']."' AND wachtwoord = '".$_POST['wachtwoord']."'";     $query=mysql_query($login);     $aantal=mysql_num_rows($query);      if($aantal == 1){ // als true is logt hij in     session_start();         $_SESSION['username'] = $_POST['username']; 
        header("location: index.php?page=login&action=2"); 
    }else{ 
        echo'Deze nickname bestaat niet in de database of fout wachtwoord'; 
    }


Het is goed te zien aan het einde van lijn 2, je session_start(), $_SESSION codes enzo worden allemaal opgenomen in de commentaar.. Probeer anders eens op iedere pagina een $_SESSION['lastclick']; variable te zetten ofzo, dan kan je zien of het werkt.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Iedereen bedankt voor het commentaar!
Het probleem is ondertussen opgelost dankzij peter!! :D
Heel er bedankt! ^^ (na het weghalen van comment werkt het perfect!)

Acties:
  • 0 Henk 'm!

  • Room42
  • Registratie: September 2001
  • Niet online
PHP:
1
$login="SELECT * FROM zk_boards_users WHERE username = '".$_POST['username']."' AND wachtwoord = '".$_POST['wachtwoord']."'";

Wow! Denk je nog wel even aan de SQL injection vurnerability die je hier even blootlegt??
Als ik nu als password "' OR 1=1 OR wachtwoord = '" invul, ben ik ingelogd!! (Die laatste OR wachtwoord is dan nodig om de ' niet te laten botsen. Niet getest)

"Technological advancements don't feel fun anymore because of the motivations behind so many of them." Bron


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
oja bedankt.. vergeten ^^

[ Voor 68% gewijzigd door Verwijderd op 30-10-2005 14:39 ]

Pagina: 1