Непредсказуемое поведение JavaScript

У меня есть представление, которое использует холст для изменения изображения. Используя Аякс, я вызываю контроллер для вставки в базу данных информации об изображении, когда пользователь нажимает кнопку

var img = new Image();
img.src = "imagenes/uploadLookTemporal/<?php echo $url_foto_temporal;  ?>";
var path = "imagenes/uploadLookTemporal/<?php echo $url_foto_temporal;  ?>";

    window.location.replace("annadir_prenda");

    $.ajax({

        type: "post",
        url: "{{ url('/postajax') }}",
        contentType: 'multipart/form-data',
        processData: false,
        data: formData,
        cache: false,
        //success:  function (response) {
          //  alert(response);
          //  console.info(dataURL);
        //},


    });

// Контроллер

public function post(Request $request){


    // Identificamos al usuario

    $user= Auth::user();
    $userfind = User::find($user->id);

    $aleatorio = rand();
    $fototemporal = new Tablatemporal();
    $fototemporal->user = $userfind->id;
    $fototemporal->url_foto = $userfind->id.'_temporal'.'_'.$aleatorio.'.'.'png';
    $fototemporal->save();


    $file = $request;

    $fotobase64 = explode ('data:image/png;base64,',$file);
    $foto = base64_decode($fotobase64[1]);



    // Alamcenamos la foto temporal y guardamos su dirección en la base de datos temporal

    //file_put_contents('imagenes/uploadLookTemporal/'.'temporal_'.$userfind->id.'_temporal.png', $foto);

    file_put_contents('imagenes/uploadLookTemporal/'.$userfind->id.'_temporal'.'_'.$aleatorio.'.'.'png', $foto);

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

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
0
99
1

Ответы 1

Вы должны проверить результат работы вашей базы данных. Например, $fototemporal->save(); возвращает логическое значение. Также file_put_contents возвращает байты, записанные в файловой системе, или FALSE в случае сбоя.

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

Другие вопросы по теме