• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

portofino

verificar id, melhor maneira

4 mensagens neste tópico

Viva.

Tenho um sistema que insere varias linhas numa BD mysql e esta a incrementar automaticamente um id. Agora, quero introduzir uma maneira de enviar uma imagem associada ao id, e colocar na pasta imagens as imagens com o nome do id, mas para verificar o id do novo a introduzir tenho que verificar o ultimo que esta la. Por ex, verificar o ultimo que eh 9, e enviar a imagem e a a informacao para a table que vai automaticamente incrementar o id para 10, nao sou eu que vou introduzir. Mas no caso da imagem, como a antiga era a 9 e agora quero que envie a imagem e renomeie para 10.jpg, vou ter um problema no caso de entretanto ter outro user introduzido um novo id, entre a verificacao do ultimo e o envio e introducao do novo...Alguem tem solucoes ?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Isso é uma questão de estruturares bem a tabela e se necessário criares uma outra para ir busca parametros associados para poderes fazer um SELECT baseado nesses parametros.

Se bem que a explicação que deste é muito vaga... Quantas tabelas tens, a info que tens em cada tabela, como estás a processar a informação, etc seriam aspectos que contribuiriam para receberes uma resposta mais fiável do que aquela que te estou a dar.

Portanto, isso está um bocado confuso, mas se ajudar, para saberes o ultimo valor inserido numa tabela num campo AUTO INCREMENT utilizas a função mysql_insert_id();

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Sim, isso era o que eu iria fazer. Atribuir a uma var o ultimo ID e inseriir o conteudo nas fields, incluindo o nome da var.jpg. Mas por ex, ao atribuir o last ID para a VAR, pode ser id 9, e enquanto processa o resto do file.php, alguem mais, outro utilizador, pode ter inserido uma nova linha ( ou seja, vai haver uma nova last id 10)e entao vou inserir no id 10, um field com o nome 9.jpg....nao sei se estas a perceber

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

para mim a forma de garantires que tens sempre ficheiros com nomes diferentes é teres um campo na tabela para guardar o nome da imagem

e renomeias a imagem para por exemplo md5(microtime())

Assim acabas com essas verificações e chamadas desnecessárias (extras) á base de dados para alem de que com o mysql_insert_id tens que enviar tambem o link da ligação para garantires resultados correctos, e se a query de insersão falhar ele retorna 0, o que pode ou ão ser um problema

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora