[Erik] Problema no Ajax, variável $name está trazen... | Fórum | School of Net

Deseja poder participar de nosso fórum e tirar todas as suas dúvidas?
Clique aqui e assine nosso plano de acesso ilimitado. Saiba mais.

por Leonardo

2 meses, 4 semanas atrás Leonardo

[Erik] Problema no Ajax, variável $name está trazendo o PHP

Boa tarde equipe SON Ao fazer a aula Barra de progresso de upload Fiz a rota em admin\routes ``` elseif(resolve('/admin/upload/image')){ //echo 'deu certo'; //echo json_encode($_FILES); //Se o arquivo não estiver vazio eu o trago senão considero null $file = !empty($_FILES['file'])? $_FILES['file'] : NULL; if(!$file){ (422); //echo json_encode(['status' => 'Nenhum arquivo enviado']); echo 'Nenhum arquivo enviado'; exit; } $allowedType =[ 'image/gif', 'image/jpg', 'image/jpeg', 'image/png', ]; //Se não estiver nos tipos permitidos if(!in_array($file['type'], $allowedType)){ http_response_code(422); //echo json_encode(['status' => 'Arquivo não permitido, utilize arquivos: gif, jpg, jpeg ou png']); echo 'Arquivo não permitido, utilize arquivos: gif, jpg, jpeg ou png'; exit; } //Criando um nome randomico para o arquivo $name = uniqid(rand(), true) . '.' . pathinfo($file['name'], PATHINFO_EXTENSION); //Movendo a imagem para o diretorio no servidor //move_uploaded_file($file['tmp_name'], __DIR__.'/../public/upload/'. $name); //print_r($file); echo '/upload/'. $name; //return 'teste'; ``` E o ajax em ``` document.addEventListener('trix-attachment-add', function(){ const attachment = event.attachment; if(!attachment.file){ return; } const form = new FormData(); form.append('file', attachment.file)//'file' nome do arquivo renderizado $.ajax({ url:'/admin/upload/image', method: 'POST', data: form, contentType: false, processData: false, //Pegando o recurso de progresso nativo do JQUERY para o javascript xhr: function(){ const xhr = $.ajaxSettings.xhr(); xhr.upload.addEventListener('progress', function (e){ //calculando a porcentagem let progress = e.loaded / e.total * 100; //Passando a porcentagem carregada attachment.setUploadProgress(progress); }); return xhr; } }).done(function(resp){ //console.log('resp'); console.log(resp); console.log(status); // attachment.setAttributes({ // url: response, // href: response // }); }).fail(function(){ console.log('Erro'); }) }); ``` Porem no console quando insiro a imagem está retornando : edit:111 /upload/213645d2f75e42ac948.52223020.jpg<!-- php -S localhost:8080 -t public/ --> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> </body> </html> e acredito que deveria vir somente /upload/213645d2f75e42ac948.52223020.jpg

6 Respostas