Модуль 'NewsSender v 1.0' (Отправить другу)

32
На сайте с 07.02.2011
Offline
76
875

Приветствую!

Модуль 'NewsSender v 1.0' http://jester-soft.ws/script/dle/dle_mod/103409-newssender-v-10-otpravit-drugu.html после отправки сообщения выдает ошибку:

Deprecated: Function eregi() is deprecated in Z:\home\localhost\www\engine\modules\sendfriend.ph p on line 42 Deprecated: Function eregi() is deprecated in Z:\home\localhost\www\engine\modules\sendfriend.ph p on line 42

если, кто знает, то прошу подсказать, как исправить данную ошибку.

Спасибо.

[umka]
На сайте с 25.05.2008
Offline
456
#1
323182:
Deprecated: Function eregi() is deprecated

Используйте функцию preg_match вместо eregi

Лог в помощь!
32
На сайте с 07.02.2011
Offline
76
#2

это нужно заменить в файле самого модуля?

[umka]
На сайте с 25.05.2008
Offline
456
#3
323182:
это нужно заменить в файле самого модуля?

Ну да. Он вам даже название файла говорит и строку.

Только там может быть немного другой синтаксис регулярных выражений, поэтому, придётся ещё и мануалы немного почитать.

http://php.net/manual/ru/function.preg-match.php

crailg
На сайте с 24.01.2010
Offline
98
#4

Все же вам ошибка написала: Ошибка на 42 строке в файле sendfriend.php, а именно функция eregi устарела. Как сказали выше - замените на preg_match

👀 Устал искать пп по пушам? Сливай PUSH на себя! ( https://searchengines.guru/ru/forum/1007827 ) 🔥Разработка любых проектов на JS, PHP ( https://searchengines.guru/ru/forum/1064450 )
32
На сайте с 07.02.2011
Offline
76
#5

менял, если только не правильно прописал.

До:

function check_email($value) {

return eregi("^([0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-wyz][a-z](fo|g|l|m|mes|o|op|pa|ro|seum|t|u|v|z)?)$", $value);

};

После:

function check_email($value) {

return preg_match("^([0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-wyz][a-z](fo|g|l|m|mes|o|op|pa|ro|seum|t|u|v|z)?)$", $value);

};

Ошибка:

Warning: preg_match(): No ending delimiter '^' found in Z:\home\localhost\www\engine\modules\sendfriend.php on line 42 Warning: preg_match(): No ending delimiter '^' found in Z:\home\localhost\www\engine\modules\sendfriend.php on line 42

32
На сайте с 07.02.2011
Offline
76
#6

Актуально.

[Удален]
#7
323182:
return preg_match("#^([0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-wyz][a-z](fo|g|l|m|mes|o|op|pa|ro|seum|t|u|v|z)?)$#i", $value);

так попробуйте.

32
На сайте с 07.02.2011
Offline
76
#8
seodude:
так попробуйте.

Seodude Спасибо огромное при огромное!...

[Удален]
#9

не за что при незачто)

32
На сайте с 07.02.2011
Offline
76
#10

аналогичный модуль выдает такую же ошибку:

Deprecated: Function ereg() is deprecated in Z:\home\localhost\www\engine\modules\friend_invite.php on line 39

хотел скопировать и решить данную ошибку кодом выше, но не тут то было код оказывается немного другой, а, по-моему, даже более.

для правки


if ((!ereg('^[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+'. '@'.'[-!#$%&\'*+\\/0-9=?A-Z^_`a-z{|}~]+\.'.'[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+$', $email)) or (empty($email)) or (strlen($email)>255)) {
msgbox('Ошибка' , $lang['reg_err_6'] );
return;
}

Можно ли исправить этот код?

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий