За последние 24 часа нас посетили 18785 программистов и 1593 робота. Сейчас ищут 1145 программистов ...

Обновление скрипта с 7.4.33 на 8.3.1

Тема в разделе "PHP для новичков", создана пользователем denis920, 27 мар 2024.

  1. denis920

    denis920 Новичок

    С нами с:
    26 мар 2024
    Сообщения:
    1
    Симпатии:
    0
    Добрый день.

    Прошу подсказать. Есть самописный скрипт, писал его не я, я не программист, связи с программистом нет.

    Хостер обновляет php с 7.4.33 на 8.3.1 принудительно. На версии 7.4.33 скрипт работает, все хорошо, при смене на 8.3.1 перестал загружаться сайт вообще, с помощью журнала ошибок хостинга обнаружил, что проблема с функцией которая больше не поддерживается в php 8.3.1
    замена
    PHP:
    1. <?php
    2. function __autoload($className){
    3. if(file_exists(dirname(__FILE__).'/'.str_replace('\\', '/', $className).'.php')){
    4. require_once dirname(__FILE__).'/'.str_replace('\\', '/', $className).'.php';
    5. return true;
    6. }
    7. return false;
    8. }
    9. ?>
    на
    Код (Text):
    1. <?php
    2. function my_autoloader($className) {
    3.     $classFile = dirname(__FILE__) . '/' . str_replace('\\', '/', $className) . '.php';
    4.     if (file_exists($classFile)) {
    5.         require_once $classFile;
    6.         return true;
    7.     }
    8.     return false;
    9. }
    10. spl_autoload_register('my_autoloader');
    11. ?>
    решила проблему.

    Осталась одна страница, которая не загружает весь функционал страницы, а именно отзывы и footer , вот ее код, подскажите, что заменить, что бы на php 8.3.1 страница загружалась корректно:

    Вот код

    Код (Text):
    1. <?php include_once 'init.php'; ?>
    2. <?php
    3. $item=mysql_fetch_assoc($check);
    4. $currentReviewsRatingFilter=intval($_GET['rating']);
    5. ?>
    6. <?php
    7. if(trim($_POST['action'])=='review'){
    8. header('Content-Type: application/json; charset=utf-8');
    9. $result=array();
    10. $result['errors']=array();
    11. if(trim($_POST['name'])==''){
    12. $result['errors']['name']='Заполните это поле!';
    13. }
    14. if(trim($_POST['text'])==''){
    15. $result['errors']['text']='Заполните это поле!';
    16. }
    17. if(trim($_POST['rating'])==''){
    18. $result['errors']['rating']='Выставьте оценку!';
    19. }
    20. if(count($result['errors'])==0){
    21. mysql_query("INSERT INTO `reviews` SET `good`='".$item['id']."', `recommend`='".intval(trim($_POST['recommend']))."', `rating`='".intval(trim($_POST['rating']))."', `name`='".mysql_real_escape_string(trim($_POST['name']))."', `text`='".mysql_real_escape_string(trim($_POST['text']))."', `pros`='".mysql_real_escape_string(trim($_POST['pros']))."', `cons`='".mysql_real_escape_string(trim($_POST['cons']))."', `time`='".time()."';");
    22. $result['status']='success';
    23. $result['itemid']=$item['id'];
    24. $result['message']='Благодарим за отклик! Ваш отзыв появится на сайте после проверки модератором!';
    25. } else {
    26. $result['status']='error';
    27. }
    28. echo json_encode($result);
    29. exit;
    30. }
    31. ?>
    в котором по мнению GPT проблема, загрузить весь код страницы сюда не получается, ограничение на количество символов.

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

    Заранее большое спасибо!