F-gos 0 Denunciar post Postado Agosto 23, 2011 Pessoal boa tarde! preciso gerar uma sequencia numerica que vai servir como um numero do pedido. a numeração começa com 00001 .. e conforme forem sendo gerando os pedidos essa numeração vai almentando.. 00002... 00234... como fazer isso no php??? Compartilhar este post Link para o post Compartilhar em outros sites
Leozitho 81 Denunciar post Postado Agosto 23, 2011 Você quer saber como colocar os zeros à esquerda? Se for use a função str_pad. Compartilhar este post Link para o post Compartilhar em outros sites
SnakeX 1 Denunciar post Postado Agosto 23, 2011 ou com sprintf('%06d', 1); Compartilhar este post Link para o post Compartilhar em outros sites
F-gos 0 Denunciar post Postado Agosto 23, 2011 na verdade quero saber como fazer mesmo.... tipo vai funcionar junto com o cadastro dos dados... tipo na hora que a pessoa clicar em enviar cadastro... vai gravar os dados dele no banco e grava tbm essa numeração. Compartilhar este post Link para o post Compartilhar em outros sites
KMRodrigo 1 Denunciar post Postado Agosto 23, 2011 use o IF, se o numero menor q 10 salva 00000$numero se maior 0000$numero se maior que 100 000$numero etc. Foi como eu fiz, mas no meu caso existem apenas 3 digitos (0-999) se for fazer assim comece do maior pro menos e usando Senão Se (else if) que você economiza processamento. Se N >10000{ }Senao Se N > 1000 { } Senão Se N >100{ }Senão Se N >10{ } Senão { } Compartilhar este post Link para o post Compartilhar em outros sites
SnakeX 1 Denunciar post Postado Agosto 23, 2011 Pode fazer de forma automática no mysql, é simples, no campo ID estipulo nos atributos "UNSIGNED ZEROFILL" http://awesomescreenshot.com/0eaj2tg7d Compartilhar este post Link para o post Compartilhar em outros sites
F-gos 0 Denunciar post Postado Agosto 23, 2011 pensei em usar uma variavel... tipo $codigo = "00001" e ai cada vez que for gravar os dados no banco... utilizo um if para ver o valor dela e adicionar +1.. é por ai mesmo??? Compartilhar este post Link para o post Compartilhar em outros sites
SnakeX 1 Denunciar post Postado Agosto 23, 2011 Pode usar as funções str_pad ou sprintf para gerar esses números de forma "manual" ou então como eu referi atraves do mysql ele gera automaticamente Compartilhar este post Link para o post Compartilhar em outros sites
F-gos 0 Denunciar post Postado Agosto 23, 2011 Pode usar as funções str_pad ou sprintf para gerar esses números de forma "manual" ou então como eu referi atraves do mysql ele gera automaticamente OK atraves do mysql acho que é bem melhor.. mas é só mudar o atributo para zerofill?? como controlar a quantidade de casas? Compartilhar este post Link para o post Compartilhar em outros sites
SnakeX 1 Denunciar post Postado Agosto 23, 2011 Altere o valor do "Tamanho/Definir" na imagem que coloquei tenho 8, por exemplo meta 5 ou 6 dependendo do tamanho do numero que quiser retornar Compartilhar este post Link para o post Compartilhar em outros sites
Cristiano Cordeiro 0 Denunciar post Postado Agosto 23, 2011 auto_incremente da tabela e para controlar o numero de casas altere o tamanho do int no proprio banco de dados Compartilhar este post Link para o post Compartilhar em outros sites
F-gos 0 Denunciar post Postado Agosto 23, 2011 Altere o valor do "Tamanho/Definir" na imagem que coloquei tenho 8, por exemplo meta 5 ou 6 dependendo do tamanho do numero que quiser retornar beleza valeu... obrigado a todos pelas respostas rápidas.... Compartilhar este post Link para o post Compartilhar em outros sites
Andrey Knupp Vital 136 Denunciar post Postado Agosto 23, 2011 Se ainda estiver interessado, pegando a idéia dada acima, você pode fazer assim: <?php function zerofill( $number , $zeros = null ){ $string = sprintf( '%%0%ds' , is_null( $zeros ) ? 6 : $zeros ); return sprintf( $string , $number ); } echo zerofill( 2 ); Saída: 000002 Saída para o número 200 000200 Você também pode definir a quantidade de zeros que será adicionado: echo zerofill( 200 , 12 ); Saída: 000000000200 Compartilhar este post Link para o post Compartilhar em outros sites