Deprecated: Function session_is_registered() is deprecated

Status
Niet open voor verdere reacties.

zodiak

Gebruiker
Lid geworden
9 okt 2008
Berichten
241
hallo, ben hier nu al een paar dagen op aan het vloeken, bij mijn vorige hosting werkte alles maar bij de nieuwe hebben ze een nieuwere php versie waardoor deze functie niet meer bestaat :( , eerst kreeg ik de fout in mijn cheklogin.php maar ik denk dat ik deze in orde heb gekregen door dit te gebruiken:
PHP:
(isset($_SESSION["myusername"]));

(isset($_SESSION["mypassword"]));
, zie code hieronder:
PHP:
<?php

$host="mysqlhost"; // Host name

$username="myusername"; // Mysql username

$password="******"; // Mysql paswoord

$db_name="mydb"; // Database naam

$tbl_name="tabel"; // Tabel naam



// connecteer met de server en selecteer database.

mysql_connect("$host", "$username", "$password")or die("cannot connect");

mysql_select_db("$db_name")or die("cannot select DB");



// Gebruikersnaam en wachtwoord verzonden door login

$myusername=$_POST['myusername'];

$mypassword=$_POST['mypassword'];



// Bescherming tegen mysql invoer

$myusername = stripslashes($myusername);

$mypassword = stripslashes($mypassword);

$myusername = mysql_real_escape_string($myusername);

$mypassword = mysql_real_escape_string($mypassword);



$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";

$result=mysql_query($sql);



// Mysql tellen van de tabel rijen

$count=mysql_num_rows($result);

// If result matched $myusername and $mypassword, table row must be 1 row



if($count==1){

// Register $myusername, $mypassword and redirect to file "private/_menu.php"

(isset($_SESSION["myusername"]));

(isset($_SESSION["mypassword"]));

header("location:private/_menu.php");

}

else {

include 'i_login_error.php';

//echo "Wrong Username or Password";

}

?>

maar de plaats waar ik naartoe gestuurd word staat een controle functie om te zien of ik effectief ben ingelogd, dit krijg ik dus niet in orde:
PHP:
<?php
	// Controlleren of er werd ingelogd
session_start();

if(!session_is_registered(myusername)){

header("location:../i_login.php");

}

?>
ik heb al geprobeert om
Code:
if(!session_is_registered(myusername))
te weizigen naar
Code:
(isset($_SESSION["myusername"]));
iemand een idee hoe ik dit kan oplossen? of mss een nieuwere manier om een checklogin te doen op een prive gedeelte van een website?
 
Heb je ook al
PHP:
if (!isset($_SESSION["myusername"]))
geprobeerd? De functie isset levert, net als session_is_registred, een boolean (waar of niet waar) op. De isset-regels in check_login (regel 61 en 63) zijn dan ook nutteloos. Je vraagt daar op of die variabelen bestaan, maar je doet niets met het antwoord.
 
Begin de bovenste script eens met

if(!isset($_SESSION)) {
session_start();
}

Ik weet niet of je dat script via een include gebruikt of als een op zich staand script.
Maar met deze regels wordt het geregeld. Maakt niet uit hoe je het script gebruikt
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan