2013-04-19 3 views
-1

Для пользователя я тестирование с их org_ID значение столбца «student_life»PHP: Где условие не будет выполняться при использовании переменной

Я пытаюсь иметь эту функцию отображения независимо от строки имеют столбец student_life = 1 (так что да, есть столбец student_life, который является логическим, и тогда у меня также есть отдельный столбец с именем org_id и в этом случае имеет значение student_life)

Я уверен, что есть синтаксическая ошибка, но я не могу понять это из.

function org_id_users_table() 
{ 
$org_id = mysql_real_escape_string($_POST["org_id"]); 

$sql = $this->query("SELECT * FROM ".DBTBLE." WHERE '$org_id' = '1'"); 
$result = $sql['sql']; 
$num_rows = $sql['num_rows']; 
$this->create_table($result, $num_rows); 
} 

(когда я заменить $ org_ID в "$ SQL = ..." линия с student_life код работает.

+0

Таким образом, '$ org_id' содержит имя столбца, которое вы просматриваете в своей таблице, для значения' 1' –

+0

Истина, если я положил '$ org_id =' student_life ';' он работает, но текущий код не работает. – user2296393

ответ

0

Изменение котировок.

$sql = $this->query("SELECT * FROM ".DBTBLE." WHERE `$org_id` = '1'"); 

PS Why shouldn't I use mysql_* functions in PHP?

+0

Ни один из них не работал для меня, больше предложений? – user2296393

+0

@ user2296393, есть ли у вас какие-либо ошибки? – sectus

+0

Нет, база данных просто пуста, но у меня много пользователей, у которых есть student_life = 1 – user2296393

1

Вы цитируете имя столбца, которое заставляет MySQL думать, что это строка.

$sql = $this->query("SELECT * FROM ".DBTBLE." WHERE $org_id = '1'"); 

Edit:

на основе ваших комментариев, я думаю, что вы на самом деле хотите это:

$sql = $this->query("SELECT * FROM ".DBTBLE." WHERE org_id = '$org_id'"); 
+0

Ни один из них не работал для меня, больше предложений? – user2296393

+0

Это запустит запрос как ожидалось (предполагается, что 'DBTBLE' определен и' $ org_id' имеет ожидаемое значение). То, что эта функция действительно возвращает, будет зависеть от того, что такое '$ this'. Вы видите ошибки? Когда вы говорите, что это не работает, что именно это означает? Какая часть не работает? –

+0

Я сузил проблему до первой части, где я даю значение «$ org_id». Для пользователя, в который я подключен, столбец org_id в mysql - student_life. Когда я вручную вводим '$ org_id =' student_life '', он работает. – user2296393

0

Где это приходит? $ _POST ["org_id"]

У вас есть форму на этой странице? Или вы просто пытаетесь получить это из базы данных? Если да, не нужен ли вам другой запрос для его получения?

$ row_MyFirstQuery [ 'org_ID']

В противном случае, если она составляет $ _POST [ "org_ID"], не будет ли одиночные кавычки не двойные? $ _POST ['org_id']

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