rivaufa
@rivaufa

Как задать переменную в require?

Переменная задается в основном файле кода php.
Например, $id = 1;
Потом подгружается require. В нем есть код:
$result = mysql_query ("SELECT * FROM images WHERE hotel_id = '$id'",$db);
и далее вывод картинок в зависимости от этого $id
но код так не работает, в require $id не попадает, соответственно выборки не происходит и картинки не выводятся.
как правильно передать переменную в require?
Надеюсь, понятно объяснила.

switch ($url)
{
case 'sanatorii-assy': $hotel_id = 463; break;
case 'sanatorii-yangantau': $hotel_id = 457; break;
}

$path =$_SERVER['DOCUMENT_ROOT'].'/jumi/jumi1.php';
$path2 =$_SERVER['DOCUMENT_ROOT'].'/jumi/jumi2.php';
function GetContents($path)
{
ob_start();
require($path);
$result = ob_get_contents();
ob_end_clean();

return $result;
}
$jumi1= GetContents($path);
$jumi2= GetContents($path2);
$text = $myrow['text'];
$text = str_replace('{jumi[*1]}', $jumi1, $text);
$text = str_replace('{jumi[*2]}', $jumi2, $text);
echo $text; ?>

//jumi1.php
include ($_SERVER['DOCUMENT_ROOT']."/blocks/bd.php");
$result4 = mysql_query ("SELECT * FROM images WHERE hotel_id = '$hotel_id'",$db);
$myrow4 = mysql_fetch_array ($result4);
if (mysql_num_rows($result4)>0)
{

do {
echo "img";

}
}
while ($myrow4 = mysql_fetch_array ($result4));

}
  • Вопрос задан
  • 635 просмотров
Решения вопроса 1
romy4
@romy4
Exception handler
Внутри require другая область видимости уже, так как он подключается внутри функции, соответственно ему недоступна переменная $hotel_id. Передавайте её как параметр в функцию.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
ant1vit
@ant1vit
include подключается после того как объявлена $id?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы