2016-02-03 2 views
0

Я уже искал ответы здесь или в Google, но я не нашел кого-то с этой проблемой. (или я глуп)Переменные не передавались в файле include

У меня есть страница, которая создает переменную, которая получает массив из sql-запроса, а затем эта страница включает другую страницу. Но включенный говорит мне, что переменная не определена. Вот мой код:

/controller/page1.php

include_once("../model/database_connection.php"); 
include_once("../model/members.php"); 

$membersList = selectAllMembers(); 

foreach ($membersList as $key => $member) 
{ 
    $membersList[$key]['pseudo_member'] = htmlspecialchars($member['pseudo_member']); 
} 

include_once("../view/page1.php"); 

/view/page1.php

<?php foreach ($membersList as $member) 
{ ?> 
    <div class="table_row"> 
     [...] 
    </div> 
<?php } ?> 

Ошибка:

Notice: Undefined variable: membersList in C:\wamp\www\project\view\page1.php 

/model/members.php

function selectAllMembers() 
{ 
    global $mysqli; 
    $queryString = 'SELECT * FROM `members`'; 
    $queryResult = $mysqli->query($queryString); 
    $resultArray = false; 

    if (!$queryResult) 
    { 
     echo "selectAllMembers query failed: (" . $mysqli->errno . ") " . $mysqli-error; 
    } 
    else 
    { 
     $resultArray = $queryResult->fetch_all(MYSQLI_ASSOC); 
    } 

    return $resultArray; 
} 

Заранее спасибо :)

+0

Где именно 'selectAllMembers()'? Что он делает? – fusion3k

+0

Показать код 'include_once (" ../ model/members.php ");' –

+0

Так что '$ memberList' является Null, если' selectAllMembers() 'не возвращает никакого значения – fusion3k

ответ

0

Я совсем тупой! Проблема возникла из моего перезаписи URL ... Я использовал свое представление в своем правиле rewrite вместо моего контроллера.

Перед

RewriteRule ^members/list.html$ view/page1.php [L] 

После

RewriteRule ^members/list.html$ controller/page1.php [L] 

Но спасибо за ваши комментарии. :)

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