致命错误:require_once()[function.require]:无法打开所需的'languages / Array.php'(include_path ='。:/ usr / share / pear /')

时间:2019-06-24 13:55:32

标签: php

我在此处发布链接: 项目网站 http://www.stolarstvofatura.sk/

我位于索引页面php标签的顶部

我检查了路径和所有内容。一切都还好,我不知道问题出在哪里

这是在索引页面上-

<?php
   include 'config.php';
?>

这是在配置页面上,该页面位于与索引相同的目录上

<?php  
session_start();

if (!isset($_SESSION['lang'])) {
    $_SESSION['lang'] = "sk";
} else if (isset($_GET['lang']) && $_SESSION['lang'] != 
$_GET['lang'] && !empty($_GET['lang']) ) {
    if ($_GET['lang'] == "sk") {
        $_SESSION['lang'] = "sk";
    } else if($_GET['lang'] == "en") {
        $_SESSION['lang'] = "en";
    }
}

require_once "languages/" . $_SESSION['lang'] . ".php";
?>

我希望没有错误

1 个答案:

答案 0 :(得分:0)

您可能可以简化用于选择语言的逻辑,只要您在每页的开头(如此处)开始会话,然后单击“关于我们”或任何不影响所选语言的内容即可。

<?php 

    /* config.php */
    session_start();


    $qvar='lang';
    $svar='language';

    $default='sk';
    $languages=array('en','sk','de'); # 3 language options


    if( !isset( $_SESSION[ $svar ] ) )$_SESSION[ $svar ]=$default;
    if( isset( $_GET[ $qvar ] ) && in_array( strtolower( $_GET[ $qvar ] ), $languages ) ) $_SESSION[ $svar ]=strtolower( $_GET[ $qvar ] );



    $languagefile = sprintf( '%s/languages/%s.php', $_SERVER['DOCUMENT_ROOT'], $_SESSION[ $svar ] );
    require realpath( $languagefile );

?>