Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

brunosobral

Criar txt com número sequencial na descrição

Recommended Posts

Boa noite universitários,

preciso criar um TXT ref. a cada pedido, antes de criar verificar qual último número criado e acrescentar +1.

Até sei criar o TXT, só não sei como ver ultimo arquivo criado e aumentar 1, precisaria fazer isso ao carregar a página.

Perdidão

o que fiz até agora-------------------------------------------------------------------

$nPedido = '00001';

if(isset($_POST["btnFechar"])){

$query111 = mysql_query("SELECT * FROM $db.$tbVen");

while($data = mysql_fetch_array($query111)) {

$log = "$data[cod_produto] |$data[qtd_produto] |";

if (!$savelog = fopen('txt/'.$nPedido.'.txt', "a")) {exit;}

#if (!$savelog = fopen('txt/'.time().'.txt', "a")) {exit;}

if (!fwrite($savelog, $log)) {exit;}fclose($savelog); /**/

}

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

O ideal é fazer isso no banco, mesmo.

Se fizer com arquivo, terá de implementar uma restrição de acesso concorrente, pra evitar que dois processes tentem escrever no arquivo ao mesmo tempo, ou que um leia antes do outro escrever. O SGBD faz esse controle de concorrência.

PS: funções mysql_* estão obsoletas desde o PHP 5.5 e já foram removidas no PHP 7. Prefira usar MySQLi ou PDO. Veja mais aqui: http://rberaldo.com.br/mysql-obsoleto-php/

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma alternativa é salvar o nome do arquivo criado no banco.

Assim você da um select MAX no sql

O ideal é fazer isso no banco, mesmo.

Se fizer com arquivo, terá de implementar uma restrição de acesso concorrente, pra evitar que dois processes tentem escrever no arquivo ao mesmo tempo, ou que um leia antes do outro escrever. O SGBD faz esse controle de concorrência.

PS: funções mysql_* estão obsoletas desde o PHP 5.5 e já foram removidas no PHP 7. Prefira usar MySQLi ou PDO. Veja mais aqui: http://rberaldo.com.br/mysql-obsoleto-php/

então cogitei isso também, mas preciso criar o arquivo com nome por exemplo

(700001) aí o próximo seria (700002), sendo que o 7 se refere ao usuário logado.

fiz o seguinte, criei uma variável onde pega o id do usuário logado

$usuario = '7';

$nroPedido = $usuario.'00001';

já estou salvando no banco e criando o arquivo, mas como fazer gerar o próximo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual é o objetivo com isso? O ideal, como já citado, é salvar essa numeração no banco.

Se salvar só em arquivo, terá que pegar o arquivo mais recente e fazer um parse no nome dele, pegando os últimos dígitos do nome, para então somar uma unidade e ter o próximo número.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi Beraldo, me expliquei mal, vou fazer salvando no Banco, só to sem saber como fazer..seria um auto increment? Sendo que teria o ID do usuário no ID do pedido.

Esses txt's serão importados em um outro sistema, onde identificamos de qual é o vendedor pelo número do pedido

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.