isset true, value lig ingenting
Jeg har et lidt mystisk problem med min php kode. Først tjekker jeg en post variabel $user, og senere en sessions variabel, hvorefter jeg kører en if som returnerer true hvis en af variablerne har en værdi. Problemet er bare at den returnerer true selvom variablerne ikke har noget værdi. Min kode ser sådan ud:$user = isset($HTTP_POST_VARS["useruid"]) ? $HTTP_POST_VARS["useruid"] : '';
print ($user . " first.<br/>");
if (isset($_SESSION["user"]) AND $user == "") { $user = $_SESSION["user"]; }
print ($user . " second.<br/>");
if (!$user == "") { session_register($user); } else { print ("Session not registered.<br/>"); }
// Get user name:
if (isset($_SESSION["user"]) || isset($user)) {
print ("isset<br/>");
$conn = mysql_connect(DB_HOST, DB_USER, DB_PASS)
or die ("Could not connect: ".mysql_error());
$sql = "SELECT fornavn_VC, efternavn_VC, fødselsdag_DT FROM " . DB_NAME . ".Brugere_T";
$sql .= " WHERE primarykey_IN = '";
if (isset($_SESSION["user"])) { $sql .= $_SESSION["user"]; } else { $sql .= $user; }
$sql .= "'";
print ($sql . "<br/>"); ...
Mit output ser sådan ud:
first.
second.
Session not registered.
isset
SELECT fornavn_VC, efternavn_VC, fødselsdag_DT FROM net_db.Brugere_T WHERE primarykey_IN = ''
Hvad er der galt?