0

I used moveuploadfile for uploading files and I have following code in my controller:

$fsize = $_FILES[$key]['size'];
if ($fsize > 2621000) {
  echo "sizeError";
  return;
} else {
  if (move_uploaded_file($_FILES[$key]['tmp_name'], $name)) {
    echo 'Success';
  } else {
    echo 'fail';
  }
}

and in uploadWidget, I have following code for success and error functions:

success: function(response) {
    if (response = 'Success') {
      $('.' + input.id + ' .progress-bar').removeClass('active progress-bar-striped').addClass('progress-bar-success')
      console.log(response);
    } else {
      $('.' + input.id + ' .progress-bar').removeClass('active').addClass('progress-bar-danger');
    }

  },
  error: function(error) {
    $('.' + input.id + ' .progress-bar').removeClass('active').addClass('progress-bar-danger');
    $('.' + input.id + ' .percent').html(error);
    console.log(error)
  }

But, Success function is not working properly. To be more exact, when my controller returns sizeError response, it is loading following code:

if (response = 'Success') {
  $('.' + input.id + ' .progress-bar').removeClass('active progress-bar-striped').addClass('progress-bar-success')
  console.log(response);
}

instead of:

else {
  $('.' + input.id + ' .progress-bar').removeClass('active').addClass('progress-bar-danger');
}

Did I make a mistake? How can I fix this issues?

mplungjan
  • 169,008
  • 28
  • 173
  • 236
phpdev
  • 511
  • 4
  • 22
  • 1
    It should be response=='Success'. If it is = then it always evaluates to true – Rajashekhar Dec 29 '16 at 07:33
  • Thank you Rajashekhar, It is working – phpdev Dec 29 '16 at 07:34
  • just by echoing the message as "error", will not return a unsuccessfully response, in order to return unsuccessful response, you need to change the change before echoing the error message, eg., ` header("Status: 404 Not Found");`, refer this SO answer for more info,http://stackoverflow.com/a/12018482/1677272 – dreamweiver Dec 29 '16 at 08:18

0 Answers0