Autor Zpráva
German
Profil *
Ahojte, Delam si prave soubor v kterym prekladam texty do jinych jazyku

Tu je soubor v kterym prekladam texty (de.php)
<?php
$lng = "";
$server_name = "http://".$_SERVER['SERVER_NAME']."/paypal/";
$lng = array(

// include_data/left_menu.php
1 => 'Unterstützen Sie uns', 
2 => 'Partner', 
3 => 'Partner werden?',
.....
?>


ale porad se mi zobrazujou tyhle chyby
Notice: Uninitialized string offset: 0 in D:\wamp\www\paypal\functions\language.php on line 28

Notice: Uninitialized string offset: 0 in D:\wamp\www\paypal\functions\language.php on line 28


Tu sou cody z language.php
<?php
function ulang() {

if(!empty($_SESSION['user_id'])){
$sqls=mysql_query("SELECT sprache FROM mitglieder WHERE user_id = '".$_SESSION['user_id']."'") or die (mysql_error()); 
$res = mysql_fetch_array($sqls);
$sprache_u = $res['sprache'];

$_SESSION[language] = sprache($sprache_u);

return($_SESSION[language]);

}elseif(empty($_SESSION['user_id'])){

if(!empty($_GET['language1235'])){
$_SESSION['language'] = $_GET['language1235'];
}elseif(empty($_GET['language1235']) AND empty($_SESSION['language'])){
$_SESSION[language]="de";
}
return($_SESSION[language]);
}
}

    if (!ulang()) { $_SESSION[language]="de"; } // default german 
   
function lang($lang_id) {
$lng = "";
        if (!$lng[0]) { include('./language/'.ulang().'.php'); }
        return($lng[$lang_id]);
    } 
?>


Moc vam dekuju za kazdou odpoved.
Joker
Profil
German:
function lang($lang_id) {
$lng = "";
        if (!$lng[0]) { include('./language/'.ulang().'.php'); }
        return($lng[$lang_id]);
    } 

K čemu má tohle sloužit? Respektive nemá v $lng být něco jiného než prázdný řetězec?
German
Profil *
No stym
$lng = "";


definuju lng a pak chci includovat soubor s prekladem ....
AM_
Profil
German:

$lng = ""; !!!!!!!!!!
if (!$lng[0])

tohle je zdroj problémů.
Zaprvé, když si na prvním řádku $lng smažeš, tak bude smazané a na dalším řádku v něm rozhodně nic nebude
Zadruhé, $lng bys měl mít deklarováno jako global
další řádek:
jednak pole s jazykovými texty máš indexované od 1 a tady se pokoušíš číst hodnotu z pozice 0 - to nemůže dopadnout dobře
druhak pokud chceš ověřit, zda pole existuje a není prázdné, je lepší if(empty($lng)) než ověřování nějakého konkrétního prvku

function lang($lang_id) {
global $lng;
//vyhodit $lng = "";
        if (empty($lng)) { include('./language/'.ulang().'.php'); }
        return($lng[$lang_id]);
    } 

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: