Непредсказуемое поведение JavaScript - PullRequest
0 голосов
/ 21 января 2019

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

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.log(dataURL);
        //},


    });

// Controller

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);

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

1 Ответ

0 голосов
/ 21 января 2019

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...