2013-09-08 4 views
0

У меня есть включаемый файл для управления разрешениями пользователей (в том числе/permission.php)Включить файл генерировать предупреждения

// PERM 
$result = mysql_query("SELECT * FROM mod_permission WHERE usuer_id=".$_SESSION['user_id']); 
$row = mysql_fetch_array($result, MYSQL_BOTH) or die(mysql_error()); 

$perm_add = $row['perm_add'];  
$perm_edit = $row['perm_edit'];  
$perm_del = $row['perm_del']; 

Но когда я пытаюсь включить я ошибка:

Предупреждение: mysql_fetch_array() ожидает параметр 1, чтобы быть ресурсом, логический приведены в

Я хотел сделать что-то в этом:

Файл: example.php

<?php 
include_once "include/db_conn.php"; 
include_once "include/permission.php"; 

if ($perm_add != "1") { 
    header("Location: $url/dash.php?error=1"); exit; 
} 
?> 

Где я ошибаюсь? Спасибо ВСЕ за помощь !!!

+2

Ваш запрос не работает и возвращает Boolean 'FALSE' –

+2

, вероятно, потому что' usuer_id' не является именем поля ... –

+2

Когда 'mysql_query()' возвращает false, вам нужно 'die ($ mysql_error()) ; ', чтобы увидеть сообщение об ошибке. Посмотрите на все ** связанные ** вопросы. – Barmar

ответ

1

Возможно, у вас будет ошибка синтаксиса MySQL, возможно, как указано в комментариях, потому что user_id ошибочно принят.

$result = mysql_query(
     "SELECT * FROM mod_permission WHERE usuer_id=".$_SESSION['user_id'] 
     ) or die(mysql_error()); 
$row = mysql_fetch_array($result, MYSQL_BOTH) or die(mysql_error()); 

также воздержаться от использования этого устаревший mysql_ * расширение, как это не будет поддерживаться в ближайшем будущем версиях PHP!

+0

Обратите внимание, что 'die' не всегда является лучшим способом обработки ошибок после завершения отладки. Это немного ... фатально ... – IMSoP

+0

его немного debug =) – worenga

+0

Да, это означало, что это совет для OP, а не критика ответа; просто редактировал комментарий, чтобы уточнить :) – IMSoP