Включить не работает?

Я хочу использовать переменную из файла в другом файле, но мое включение не работает. В моем файле index.php У меня есть переключатель:

switch ($_POST["Jaartal"]) {
case "2010":
$dir= "2010";
break;
case "2006":
$dir= "2006";
break;
case "2014":
$dir= "2014";
break;
default:
$dir= "2014";
}

И я хочу использовать переменную $dir в другом документе PHP с именем api.php:

include 'index.php';

$opts = array(
'http'=>array(
'method'=>"GET",
'header'=>"Accept-language: en\r\n" .
"Cookie: foo=bar\r\n")
);

$context = stream_context_create($opts);

// Open the file using the HTTP headers set above
$url = "http://kassiesa.home.xs4all.nl/bert/uefa/data/method4/crank2014.html";
$file = file_get_contents($url, false, $context);
print $file;

Я хочу изменить $url в конце /crank".$dir.".html";

Я пытался работать с require, include а также require_once ничего не работает Когда я использую один из них, код больше не работает в моем index.php,

Я надеюсь, что один из вас может помочь мне.

1

Решение

Выведите значение $ dir на страницу, которую вы пытаетесь использовать, чтобы увидеть, имеет ли оно значение:

echo $dir;

Если оно имеет значение и возвращает 404, потому что значение $ dir имеет дополнительные / или что-то еще (это случилось со мной, когда я форматировал строки, это боль).

Я надеюсь, что это помогло.

0

Другие решения

Здесь есть несколько возможностей.

  1. $dir должен быть определен вне оператора switch, поэтому он останется в области видимости.

  2. Если эти два файла не находятся в одном каталоге, используйте полный путь или измените ваш путь включения.

  3. использование require потому что это приведет к ошибке, которая даст вам больше информации.

  4. Разрешения могут быть проблемой; маловероятно, но стоит посмотреть.

0

По вопросам рекламы [email protected]