[Resolvido] Sistema de Pastas ( Conceito e desenvolvimento )
Boa tarde a todos,
Não sei se estou postando no local certo, porém estou desenvolvendo em PHP e achei mais correto postar aqui.
Não sei como é feito, e gostaria de saber de vocês como é feito a organização de imagens. Exemplo um E-commerce, onde tem o produto e as imagens do produto, porém se as imagens estiverem em pastas diferentes ?
Vou tentar ser bem claro na minha dúvida, tenho um sistema onde cadastro produtos, e esse produto tem diversas imagens, e essas imagens ficam em pastas diferentes. Como faço para criar um sistema de pastas com subpastas ?
Eu consegui fazer com array recursivo onde pego o id_pai e id_principal. Porém quando chego na penúltima pasta, não sei identificar qual é a pasta correta.
Abaixo Exemplo:
function localiza_pasta( array $menuTotal , $idPai = 3, $nivel = 0, $caminho = "", $fim = 8 )
{
if(empty($caminho))
{
/*
se caminho for vazio
id pasta principal sempre vai ser => 0
pega o nome da pasta principal e passa para caminho
sintaxe: arrayDados[id pasta principal][id da pasta pai][nome da pasta] + separador de pastas
*/
$caminho = $menuTotal[0][$idPai]["nm_pasta"].'/';
}
foreach( $menuTotal[$idPai] as $idMenu => $menuItem){
$caminho .= $menuItem['nm_pasta'] . '/';
/*
se id pasta for igual ao id pasta final
se não verifica se há mais subpastas
*/
if($menuItem['id_pasta'] == $fim)
{
echo $caminho;
break;
}
else
{
if( isset( $menuTotal[$idMenu] ) ) localiza_pasta( $menuTotal , $idMenu , $nivel + 2, $caminho);
}
}
}
$query = mysql_query('SELECT * FROM pasta_arquivo ORDER BY id_pasta');
while($row = mysql_fetch_object($query))
{
$menuItens[$row->id_pasta_principal][$row->id_pasta] = array('id_pasta' => $row->id_pasta,'id_pasta_principal' => $row->id_pasta_principal,'nm_pasta' => $row->nm_pasta);
}
localiza_pasta($menuItens);
tabela SQL:
id_pasta, id_pasta_principal, nm_pasta
1 3 Pasta 2
2 0 Desconto
3 0 Principal
5 1 Pasta 3
6 2 Desconto 1
7 1 Pasta 4
8 1 Pasta 5
9 1 Pasta 6
Eu forçei na função localiza_pastas a variavel idPai e Fim para ver se funciona, é apenas um teste, idPai e da onde começa a pasta e Fim e aonde termina, porém se houver mais subpastas não sei como localizar a correta.
Espero que tenham entendido, aguardo ajuda de vocês.
Desde já agradecimentos e obrigado.
Discussão (2)
Carregando comentários...