2012-03-31 2 views
0

У меня возникли проблемы с использованием переменной, хранящейся в сеансе в другой таблице, в качестве идентификатора.Использование данных из одной таблицы в другой mysql/php

У меня есть таблица под названием пользователей системы и один под названием userpage:

**userbase** 
id   int(15) 
username Varchar(15) 
password Varchar(15) 
email  Varchar(40) 

**userpage** 
id   int(15) 
name  Varchar(30) 
info  Varchar(300) 
userID  Varchar(15) 

, когда пользователь входит в систему на странице индекса они отправляются на другую страницу с именем пользователя, хранящегося в URL, как так

"location: myPage.php?message=$message?UserName=$UserName" 

На этой странице я хочу использовать присваивать userID значению имени пользователя. Я пробовал следующее:

session_start(); 
include "common.php"; 
$message = $_GET['message']; 
$UserName = $_SESSION['UserName']; 
.... 
$agentID = $_SESSION['userID']; 
.... 
$Query = "INSERT INTO $Test_Table VALUES ('0', 
    '".mysql_escape_string($formValue["name"])."', 
    '".mysql_escape_string($formValue["info"])."', 
     '".mysql_escape_string($UserName)."') 

, но это просто оставляет поле userID пустым. Где я ошибся?

EDIT: Я попытался заменить $ _SESSION ['UserName'] на $ GET ['UserName'], но все равно не повезло, я думаю, что проблема должна назначать значение $ _SESSION ['userID'], поскольку это единственное упоминание о нем, которое я делаю в коде, но я не знаю, что я должен делать

+0

Установили ли вы '$ _SESSION ['UserName']' на предыдущей странице? – MichaelRushton

+0

Убедитесь, что вы используете session_start() для каждого файла, который должен использовать сеансы. – Bono

+0

Кроме того, убедитесь, что у вас есть капители в правильных местах и ​​т. Д. $ UserName - это не то же самое, что $ UserName (может случиться иногда при использовании капиталов в переменные, я знаю, что я сделал эту ошибку пару раз: P) – Bono

ответ

1

Вы отправляете имя пользователя через GET и в код, который вы получаете через SESSION, который не будет работать.

правый путь:

$UserName = $_GET['UserName']; 

Также, пожалуйста, покажите код, где вы присваивая значение $_SESSION['userID']

+0

Я попытался заменить $ _SESSION на $ _GET, но все равно не повезло Я думаю, что проблема должна присваивать значение $ _SESSION ['userID'] as это единственное упоминание о нем, которое я делаю в коде, но я не знаю, что я должен сделать после этого. –

0

UserName не может быть инициализирован в индекс страницы ..looks как у пытаются пройти неинициализированное значение для другой страницы.

Смежные вопросы