При попытке изменить индексную страницу eyeos для поддержки мультиязычности методом gettext мне не удалось решить проблему с индексной страницей.
ВЫПУСК:
На индексной странице 4шаги
Можно изменить главную страницу на язык, который мы выбираем
, но когда я пытаюсь щелкнуть следующий шаг, он показывает язык по умолчанию, а не выбранный
а также сообщить об ошибке как "Неопределенный индекс: отправить в /var/www/html/install/index.php в строке 78"
Как я могу ее исправить ...
файл index.php:
<?php
ob_start();
if(!isset($_GET['step']))
{
$step = 'introduction';
}
else
{
$step = basename($_GET['step']);
}
require_once('steps/'.$step.'.php');
echo '<?xml version="1.0" encoding="UTF-8" ?>';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<link rel="stylesheet" type="text/css" media="all" href="style.css"/>
<title>eyeOS 2 installation</title>
</head>
<body>
<form action="" method="post">
<select name="language">
<option value="en">English</option>
<option value="es">Spanish</option>
</select>
<input type="submit" name="submit" value="change language"/>
</form>
<div id="wrapper" class="wrapper">
<div id="topbar" class="topbar">
<img src="logo-eyeos.png" id="logo" class="logo" />
<div id="logotext" class="logotext">
<? echo toptext(); ?>
</div>
</div>
<span id="sidebar" class="sidebar">
<ul class="sidelist">
<?php
if ($_POST['submit'])
{
bindtextdomain('messages', './');
textdomain('messages');
$lang=$_POST['language'];
if ($lang)
{
switch ($lang)
{
case 'es':
putenv('LC_ALL=es_ES');
setlocale(LC_ALL,'es_ES');
break;
case 'en':
default:
setlocale(LC_ALL,'en_GB');
break;
}
}
if($step == 'introduction') {
echo _('<li class="selected">Introduction</li>');
} else {
echo _('<li>Introduction</li>');
}
if($step == 'requirements') {
echo _('<li class="selected">Requirements</li>');
} else {
echo _('<li>Requirements</li>');
}
if($step == 'configuration') {
echo _('<li class="selected">Configuration</li>');
} else {
echo _('<li>Configuration</li>');
}
if($step == 'end') {
echo _('<li class="selected">End</li>');
} else {
echo _('<li>End</li>');
}
}
?>
</ul>
</span>
<span id="content" class="content">
<?php getContent(); ?>
</span>
</div>
</body>
, и я отредактировал некоторую строку в файле messages.po
Строки:
1. "Content-Type: text / plain; charset = UTF-8 \ n"
2.
: index.php: 81Msgstr "Введение " msgstr "Введение " : index.php: 83
msgid "
Введение " msgstr " Вступление" * 10Msgstr "Требования " msgstr "Requisitos "
: index.php: 89 * 1056 msgstr "Требуется *1053*"* msgid " Требования " msgstr " Реквизиты " 4. : index.php: 92
msgstr "Конфигурация " msgstr "Конфигурация "
: index.php: 94
msgid "
Конфигурация " msgstr " Конфигурация * 1077Msgstr "End " msgstr "Final "
: индекс index * php: * " 5. : index.php: 98
msgstr "
Конец " msgstr " Финал "
2. #: index.php: 81 msgid "Введение"msgstr" Введение"
: index.php: 83
msgid"
Введение"msgstr" Введение"