Renomear arquivo ápos upload [RESOLVIDO]

Estou usando o código abaixo para renomear o arquivo após upload, vi aqui mesmo no forum, mais ele não renomeia o arquivo. Uso xampp para teste da aplicação.

Fiz esse código numa pagina de teste php para ver se o caminho absoluto esta ok

rename(“pmc/_lib/file/doc04121491500184”."/".“ted.pdf”, “pmc/_lib/file/doc04121491500184”."/".“33.pdf”);

E funciona normal renomeia o arquivo provando que o caminho absoluto esta ok.
Mais no código abaixo não renomeia.

Código usado no OnAfterInsert e OnAfterUpdate

$extensao = array_reverse(explode(".",({documento})));
$ext = $extensao[0];

$caminhocompleto_nomearquivo_old = “pmc/_lib/file/doc04121491500184/”.{documento};
$arquivo_novo = {id}.".".$ext;
$caminhocompleto_nomearquivo_new = “pmc/_lib/file/doc04121491500184/”.$arquivo_novo;
rename($caminhocompleto_nomearquivo_old, $caminhocompleto_nomearquivo_new);

$update_table = ‘boletos’;
$update_where = “id= '”.{id}."’";
$update_fields = array(
“documento = '”.$arquivo_novo."’",

);

$update_sql = ‘UPDATE ’ . $update_table
. ’ SET ’ . implode(’, ', $update_fields)
. ’ WHERE ’ . $update_where;
sc_exec_sql($update_sql);

1 Curtida

Veja esse Post aqui, pode resolver seu caso:

Este Post que vc me passou foi um dois quais usei para fazer na minha aplicação.

Ele usa rename como eu, meu problema e que o rename funciona perfeito em uma pagina feita fora do scriptcase, mais o mesmo codigo dentro dele não funciona!.

Crie um controle ou blank e teste com o código do PHP: file_exists se o arquivo, existe
nesse local que você esta mandando renomear, as vezes ‘o caminho’ até o arquivo
esta incorreto, por isso que não renomeia:
https://www.php.net/manual/pt_BR/function.file-exists.php

2 Curtidas

Muito Obrigado, sua dica me valeu demais, como estou usando o xampp numa maquina Windows o caminho absoluto era assim “C:/xampp/htdocs/pmc/_lib/file/doc0512454554000184/”.{documento};
e não assim “/pmc/_lib/file/doc05121991000184/”.{documento};
Tudo funcionou certinho!.

1 Curtida