I have a problem is passing the values across in the SQL in the PHP code below. The $z variable will get a value from the session, the $z value will then be used in the SQL. However the value doesn't get passed across to the SQL code. PHP: <?$db_conn = new COM("ADODB.Connection"); $connstr = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=". realpath("./Database1.mdb").";"; $db_conn->open($connstr); $z = $_SESSION['user'];$MySql = "SELECT * FROM users_details WHERE user_id = (SELECT users_id FROM users_login WHERE Username ='$z')"; $rs = $db_conn->Execute($MySql);while(!$rs->EOF){ $user_id = $rs->Fields("user_id")->value; $surname = $rs->Fields("surname")->value; $forname = $rs->Fields("forname")->value; $DOB = $rs->Fields("DOB")->value; $gender = $rs->Fields("gender")->value; $email= $rs->Fields("email")->value;$rs->MoveNext();?> Any ideas how i can passed the value across, or is there another method of doing this? Thanks in advance for your help.
what happens when you print the contents of session? PHP: print_r($_SESSION); can you see the value you are looking for?
when i print $z to the screen it showed the varible i wanted, but won't keep this value in the SQL query??
try this PHP: $MySql = "SELECT * FROM users_details WHERE user_id = (SELECT users_id FROM users_login WHERE Username ='" . $z . "')"; where are you printing $z?
i tried that but no joy... i printed the SQL code out and found that a space has been added to the varible name (see code below) SELECT * FROM users_details WHERE user_id = (SELECT users_id FROM users_login WHERE Username = 'Richard ') Why has a space in the; 'Richard ') been added? ive checked my code over and no where dose it add a space (note this is doing the .$z. method)