Function session_register() is deprecated

Sunrize

Registered
Здравейте,
Реших да правя смяна на езиците в сайт .. и това ми свърши идеална работа
http://web-tourist.net/login/login/view.php?st=1563

всичко е точно само че ми дава една грешка

Deprecated: Function session_register() is deprecated in ....\index.php on line 7

Код:
session_register("lang");

ако може малко помощ по отстраняването, че нещо немога да я махна ;s
 
Sunrize каза:
Здравейте,
Реших да правя смяна на езиците в сайт .. и това ми свърши идеална работа
http://web-tourist.net/login/login/view.php?st=1563

всичко е точно само че ми дава една грешка

Deprecated: Function session_register() is deprecated in ....\index.php on line 7

Код:
session_register("lang");

ако може малко помощ по отстраняването, че нещо немога да я махна ;s
Просто го изтрий и най-отгоре постави session_start(); и използвай глобалната променлива $_SESSION[]
 
Боцкай ги направо в $_SESSION[] масива.

Смени:
session_register("lang");
Със:
$_SESSION['lang'];
 
Аз не разбрах, дава ти грешка НО работи, така ли ?
Ако е така сложи само една @ пред функцията и готово.
Пример:
@session_регистер(..)

А ако имаш проблеми със запазването на сесии, използвай кукита, или пак сесии, но по стандартния начин на записване(като арей) :idea: :?:
 
joTunkiq каза:
Аз не разбрах, дава ти грешка НО работи, така ли ?

Е, то си пише - "Deprecated". Нормално е да работи :D

@ - е най-лошия съвет ever. Това само подтиска грешки/нотиси/warning-и...

Deprecated означава, че функцията ще бъде премахната в следващи версии на PHP и е силно непрепоръчително да се използва.

Този урок е доста остарял. По-добре намери някой "по-съвременен" :D

PS:
но по стандартния начин на записване(като арей)

Какво означава "по стандартния начин"? :shock:
 
Имаш суперглобален масив $_SESSION - ползвай него след стартиране на сесия. И недей да заглушаваш предупреждения с @ :)
 
Ето index.php малко в крак с времето : )


Код:
<?php
session_start();
?>
    
    <a href="index.php?p=<?= $_GET['p']; ?>&lang=bg"><img src="img/bg_icon.gif" border=0 alt="Български"></a>
    <a href="index.php?p=<?= $_GET['p']; ?>&lang=en"><img src="img/en_icon.gif" border=0 alt="English"></a>
    
<?php
if (isset($_GET['lang'])) {
    if (file_exists('translations/' . $_GET['lang'] . '.php')) {
        $_SESSION['lang'] = $_GET['lang'];
    }
}

if (!isset($_SESSION['lang'])) {
    include('translations/bg.php'); // Това е езика по подразбиране
} else {
    include('translations/' . $_SESSION['lang'] . '.php');
}

if (!isset($_GET['p'])) {
    // Ако е отворен просто Index.php отваря главната страница: main.php
    include('main.php');
} else {
    if (file_exists($_GET['p'] . '.php')) {
        // Ако файла съществува го отваря
        include($_GET['p'] . '.php');
    } else {
        // Ако файла не съществува отваряме извежда съобщение за грешка и отваря main.php
        print "<center><small><font color=red>" . $lang['page_not_exist'] . "</font></small></center>";
        include('main.php');
    }
}
?>


- $_REQUEST стана на $_GET
- Експлицитно се проверява съществуването на дадена променлива/ключ.
- И структурата ми изглежда малко по-подредена (поне за мен, дори бих сложила страниците в pages/ директория)

NBORe03.png
 
С $_SESSION['']; всичко е точно, но когато не е зададен език и трябва да използва този, който аз съм решил че ще ми е 'default language' ми дава

Код:
Notice: Undefined index: lang in ....\index.php on line 5

5#
Код:
if ($_REQUEST['lang']) {....
 
Sunrize каза:
С $_SESSION['']; всичко е точно, но когато не е зададен език и трябва да използва този, който аз съм решил че ще ми е 'default language' ми дава

Код:
Notice: Undefined index: lang in ....\index.php on line 5

5#
Код:
if ($_REQUEST['lang']) {....

Код:
if (isset($_REQUEST['lang'])) {.
 
dakata__92 каза:
Sunrize каза:
С $_SESSION['']; всичко е точно, но когато не е зададен език и трябва да използва този, който аз съм решил че ще ми е 'default language' ми дава

Код:
Notice: Undefined index: lang in ....\index.php on line 5

5#
Код:
if ($_REQUEST['lang']) {....

Код:
if (isset($_REQUEST['lang'])) {.
Много Ви благодаря на всички, daka +1, че като цяло ме открехна 1ви и последен ,благодаря ти..
 

Back
Горе