Då har du nog postat fel.
Be moderator flytta till php-forumet.
Jag skulle tänka mig att du måste sätta lite parenteser så att du får villkoren rätt.
(a eller b) och c
4 svar · 534 visningar · startad av soidog
Hej,
Denna kod använder jag för att sköta inloggningen.
if(is_numeric($_POST['kod'])){
//kollar om denna koden överhuvudtaget finns med i tabellen
$sql="select valid,nick from member where kod='{$_POST['kod']}' order by ID desc limit 1";
$sql_result = mysql_query($sql, $link) or die("Couldn't execute SQL query 2");
if($a_row = mysql_fetch_array( $sql_result )){
//hittade iaf koden så vi kollar om den fortfarande är giltlig dvs mindre än dagens datum och tid
if(($a_row[valid] > time()) || ($a_row[valid] =="1")){
//medlemsskapet gäller vi sätter sessions variabeln member till medlemsnummret. Detta kommer fungera som kontroll så ingen icke behörig kommer åt sidan.
$_SESSION["member"] = $_POST['kod'];
$_SESSION["sess_nick"] = $a_row['nick'];
}else $msg = "Ditt medlemskap har slutat gälla!";
}else $msg = "Okänd kod!";
}
if(!$_SESSION["member"]){
Försköker att lägga till ett ytterliggare fält, aktiv i vilkoret.
Om fältet aktiv innehåller en etta, så ska man kunna logga in, om det innehåller något annat så ska man inte kunna logga in.
Men får det inte att fungera,
Så här hade jag tänkt mig att det ska vara,
if(($a_row[valid] > time()) || ($a_row[valid] =="1") && ($a_row[aktiv] == "1")){
SoiDog...
Då har du nog postat fel.
Be moderator flytta till php-forumet.
Jag skulle tänka mig att du måste sätta lite parenteser så att du får villkoren rätt.
(a eller b) och c
Jag löste det genom att göra så här, kanske lite omständigt och kanske för mycket kod. Men det funkar iallafall.
if(is_numeric($_POST['kod'])){
//kollar om denna koden överhuvudtaget finns med i tabellen
$sql="select valid,nick,aktiv from member where kod='{$_POST['kod']}' order by ID desc limit 1";
$sql_result = mysql_query($sql, $link) or die("Couldn't execute SQL query 2");
if($a_row = mysql_fetch_array( $sql_result )){
// kollar om koden är aktiv
if($a_row['aktiv'] == '1'){
//hittade iaf koden så vi kollar om den fortfarande är giltlig dvs mindre än dagens datum och tid
if(($a_row[valid] > time()) || ($a_row[valid] =="1")){
//medlemsskapet gäller vi sätter sessions variabeln member till medlemsnummret. Detta kommer fungera som kontroll så ingen icke behörig kommer åt sidan.
$_SESSION["member"] = $_POST['kod'];
$_SESSION["sess_nick"] = $a_row['nick'];
}else $msg = "Ditt medlemskap har slutat gälla!";
}else
header("location: ../aktivera.php");
}else $msg = "Okänd kod!";
}
if(!$_SESSION["member"]){
SoiDog...