2012-02-28 8 views
0

Почему я не могу вставить сеанс в мою базу данных? Я уверен, что я использовал ту же строку кода в другом месте много раз, и до сих пор она работала на меня.Почему не входит ли сессия в базу данных?

<?php 
$id = $_GET['election']; 
$vote = mysql_real_escape_string($_REQUEST['vote']); 
$vote = mysql_real_escape_string($_REQUEST['vote']); 

$sql= "INSERT INTO votes (election_id, ni) VALUES ('$id', '". $_SESSION['ni']."')"; 

if (!mysql_query($sql)) 
    { 
     die('Error: ' . mysql_error()); 
    } 
    else 
    { 

     echo '<hr><h4>Your Vote Has Now Been Casted </h4><hr><h5> <a href = "votenow.php">My Account</a></h5>'; 

    } 
?> 

любые идеи? поле п выходит с номером 0

+0

Если MySQL Ошибка 1064 является ошибка вы получаете, может быть, вы должны смотреть на это ... не – animuson

+0

им не ПОЛУЧАТЬ нет ошибки –

ответ

1

Try используя

session_start(); 

в начале файла, так что переменная сеанса будет установлен и инициализирован.

+0

IV уже получил, что в верхней части моего документа –

+0

ли вам запустите сеанс в файле, который определяет $ _SESSION ['ni']? Кроме того, вы очищаете файлы cookie между ними или вызываете session_destroy()? – Odinn

+0

да, я сделал, и я вызываю session_destroy, когда пользователь хочет выйти из системы –

1

Я не думаю, что это не имеет ничего общего с бытием конкретным вопросом базы данных, если перед запуском, что код, если вы вставите:

var_dump($_SESSION['ni']); 
exit; 

содержат ли $_SESSION['ni'] что-нибудь другое, чем 0? Также вы вызывали session_start(), прежде чем пытаться получить доступ к объекту $ _SESSION?

http://php.net/manual/en/function.session-start.php

+0

он дает мне следующее сообщение: string (8) «HP45896S» –

+0

, и если вы выполните 'var_dump ($ sql)' после того, как вы определите свою переменную $ sql, вы не видите 'HP45896S' в сгенерированный SQL? –

+0

он говорит null ??? –

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