Контактная форма электронной почты не работает после обновления php 5.4

Форма обратной связи на моем сайте была в порядке до недели назад. Php на моем хостинге был обновлен до 5.4, и теперь я получаю следующую ошибку.

Неустранимая ошибка: вызов неопределенной функции session_is_registered () в /homepages/17/d182268414/htdocs/contact_us.php в строке 3

Я не написал код для страницы сайта и не очень знаком с php. Пожалуйста, дайте мне знать, если есть простой способ заставить это работать снова.

Вот код php —

<?
session_start();
if (!session_is_registered('enquiry_form'))
{
session_register("enquiry_form");
$_SESSION['title']="";
$_SESSION['contact_name']="";
$_SESSION['email']="";
$_SESSION['telephone']="";
$_SESSION['subject']="";
$_SESSION['enquiry']="";
$_SESSION['address1']="";
$_SESSION['address2']="";
$_SESSION['town']="";
$_SESSION['county']="";
$_SESSION['postcode']="";
$_SESSION['country']="";
$_SESSION['marbleCat']="unchecked";
$_SESSION['contempCat']="unchecked";
$_SESSION['stoneCat']="unchecked";
$_SESSION['traditCat']="unchecked";
}
if(isset($contact)){$_SESSION['subject']=$contact;}
?>

-1

Решение

Функции session_register, session_is_registered был удален в PHP 5.4

Вам нужно реорганизовать свой код следующим образом:

session_start();
if (empty($_SESSION['enquiry_form']))
{
$_SESSION['enquiry_form'] = 1;
$_SESSION['title']="";
$_SESSION['contact_name']="";
$_SESSION['email']="";
$_SESSION['telephone']="";
$_SESSION['subject']="";
$_SESSION['enquiry']="";
$_SESSION['address1']="";
$_SESSION['address2']="";
$_SESSION['town']="";
$_SESSION['county']="";
$_SESSION['postcode']="";
$_SESSION['country']="";
$_SESSION['marbleCat']="unchecked";
$_SESSION['contempCat']="unchecked";
$_SESSION['stoneCat']="unchecked";
$_SESSION['traditCat']="unchecked";
}
if(isset($contact)){$_SESSION['subject']=$contact;}
?>
0

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

Функция session_is_registered и session_register была удалена из php 5.4

используйте вместо этого isset ($ _ SESSION [«enquiry_form»])

<?php
session_start();
if(!isset($_SESSION["enquiry_form"]) ){
$_SESSION["enquiry_form"] = //Value;
$_SESSION['title']="";
$_SESSION['contact_name']="";
$_SESSION['email']="";
$_SESSION['telephone']="";
$_SESSION['subject']="";
$_SESSION['enquiry']="";
$_SESSION['address1']="";
$_SESSION['address2']="";
$_SESSION['town']="";
$_SESSION['county']="";
$_SESSION['postcode']="";
$_SESSION['country']="";
$_SESSION['marbleCat']="unchecked";
$_SESSION['contempCat']="unchecked";
$_SESSION['stoneCat']="unchecked";
$_SESSION['traditCat']="unchecked";
}
if(isset($contact)){$_SESSION['subject']=$contact;}
?>

Вы также должны использовать <?php вместо <?

0

измени свой код: —

if (!session_is_registered('enquiry_form'))
{
session_register("enquiry_form");

в

if (!isset($_SESSION['enquiry_form']))
{
$_SESSION["enquiry_form"]= 'myvalue';

session_register() has been removed from php 5.4

ты можешь использовать $_SESSION[]

для установки переменной в сеансе: —

session_start()
$_SESSION['myvar'] = $myvar;

для получения переменной из сессии: —

$myvar = $_SESSION['myvar'];

для проверки переменной сеанса: —

if( isset($_SESSION["myvar"]) ){
0
По вопросам рекламы [email protected]