Muskt 0 Denunciar post Postado Agosto 9, 2006 Olá a todos, Estou tentando fazer uma combobox se encher com o nome dos diretorios de uma pasta. Estou tendo o seguinte erro: Parse error: parse error, unexpected T_VARIABLE in /var/www/colecoes/index.php on line 16 O meu código é o seguinte: <?phprequire_once("scripts/header.php");if ($dir=opendir("colecoes")){ $i=0; while(($arquivos=readdir($dir)) !== false){ if($arquivos=="." or $arquivos==".." or $arquivos=="scripts") continue; { if(is_dir($arquivos)) { $dirs[$i] = "Coleção " . $arquivo; $i++; } } } };?><form action="scripts/direcionador.php"> <p>Escolha uma coleção: <select name="cmb_colecao"> <?php for($i=0; $dirs[$i] == NULL; $i++) { print("<option value="$i">$dirs[$i]</option>"); } ?> </select> <input type="submit" name="btn_ok" value=" OK " /> </p></form><?phprequire_once("scripts/rodape.php");?> Alguem pode me ajudar ? Compartilhar este post Link para o post Compartilhar em outros sites
Void : 0 Denunciar post Postado Agosto 9, 2006 na hora de montar a select, o correto seria print "<option value='$i'>".$dirs[$i]."</option>"; Compartilhar este post Link para o post Compartilhar em outros sites
Muskt 0 Denunciar post Postado Agosto 9, 2006 Nuss ... que erro infantil http://forum.imasters.com.br/public/style_emoticons/default/assobiando.gif Mais ainda não está funcionando corretamente ... Warning: opendir(colecoes): failed to open dir: No such file or directory in /var/www/colecoes/index.php on line 3 E o pior que existem arquivos (index.php) e diretorios (11 e scripts) nessa pasta. Ai ele me enxe o combo com ".." eternamente e deixa minha maquina lenta ... Vo dar uma revisada no codigo, quem puder me ajudar ... eu agradeço :mellow: Resolvi em partes ... <?phprequire_once("scripts/header.php");if ($dir=opendir("[b].[/b]")){ $i=0; while(($arquivos=readdir($dir)) !== false){ if($arquivos=="." or $arquivos==".." or $arquivos=="scripts") continue; { if(is_dir($arquivos)) { $dirs[$i] = "Coleção " . $arquivo; $i++; } } } };?><form action="scripts/direcionador.php"> <p>Escolha uma coleção: <select name="cmb_colecao"> <?php for($i=0; $dirs[$i] == NULL; $i++) { print("<option value=" . $i . "> . $dirs[$i] . </option>"); } ?> </select> <input type="submit" name="btn_ok" value=" OK " /> </p></form><?phprequire_once("scripts/rodape.php");?> Como estou no mesmo diretorio em que quero buscar as pastas, substitui o nome da pasta por . So que a combo não está enxendo ... o comportamento correto era na combo aparecer só "Coleção 11" mais nem isso tá ocorrendo ... agora ja não sei o que fazer :blink: Compartilhar este post Link para o post Compartilhar em outros sites
Muskt 0 Denunciar post Postado Agosto 9, 2006 Legal, deu certo ;D Mais ainda não completamente ... axo que é até por isso que estava dando erro na avaliação do for antes ... ele não tá concatenando o nome do diretorio com a palavra coleção, nessa linha: $dirs[$i] = "Coleção " . $arquivo; ai na combo aparece x Coleção onde x é igual ao numero de diretorios ai inves de aparecer Coleção dir1, Coleção dir2 e assim sucessivamente ... Compartilhar este post Link para o post Compartilhar em outros sites
Muskt 0 Denunciar post Postado Agosto 10, 2006 <?phprequire_once("scripts/header.php");if ($dir=opendir(".")){ $i=0; while(($arquivos=readdir($dir)) !== false){ if($arquivos=="." or $arquivos==".." or $arquivos=="scripts") continue; { if(is_dir($arquivos)) { $dirs[$i] = "Coleção " . $arquivo; $i++; } } } };?><form action="scripts/direcionador.php"> <p>Escolha uma coleção: <select name="cmb_colecao"> <?php for($i=0; $i<count($dirs); $i++) { echo "<option value=\"$i\">" . $dirs[$i] . "</option>"; } ?> </select> <input type="submit" name="btn_ok" value=" OK " /> </p></form><?phprequire_once("scripts/rodape.php");?> Sem ideia de onde possa estar o erro :wacko: Compartilhar este post Link para o post Compartilhar em outros sites
Muskt 0 Denunciar post Postado Agosto 10, 2006 Puts ... não acredito !Tô muito desatento ainda a essas pequenas coisas :/Por causa de um S isso tudo :@Mais valeu a ajuda rapaz !Muito obrigado mesmo !!! Compartilhar este post Link para o post Compartilhar em outros sites
Muskt 0 Denunciar post Postado Agosto 10, 2006 Voltei http://forum.imasters.com.br/public/style_emoticons/default/blush.gif Eu to com um problema diferente, mais como se trata do mesmo script, postei aqui mesmo ... o Script: <?phprequire_once("scripts/header.php");if ($dir=opendir(".")){ $i=0; while(($arquivos=readdir($dir)) !== false){ if($arquivos=="." or $arquivos==".." or $arquivos=="scripts") continue; { if(is_dir($arquivos)) { $dirs[$i] = "Coleção " . $arquivos; $i++; } } } };sort($dirs);?><form action="index.php?destino=<?php $destino ?>" method="post"> <p>Escolha uma coleção: <select name="cmb_colecao"><?php for($i=0; $i<count($dirs); $i++) { print " <option value=\"$i\">" . $dirs[$i] . "</option>\n"; } ?> </select> <input type="submit" name="btn_ok" value=" OK " /> </p></form><?php$destino = $_POST[cmb_colecao];require_once("scripts/rodape.php");?> Bom axo que só de ver o código já da pra ver o que eu tentei fazer http://forum.imasters.com.br/public/style_emoticons/default/blush.gif Eu sou iniciante am PHP ainda, mais juro que pesquisei e testei tudo que eu pensei q poderia dar certo. Pra quem não entendeu, eu queria passar o value da combo pelo link do formulario pra depois fazer um case de onde ele deve ir. Mais uma vez conto com a ajuda de voces http://forum.imasters.com.br/public/style_emoticons/default/assobiando.gif Desculpem qualquer coisa ... []'s Compartilhar este post Link para o post Compartilhar em outros sites
Muskt 0 Denunciar post Postado Agosto 10, 2006 Ainda não deu.O erro parou, so que a variavel da URL fica vazia ... Compartilhar este post Link para o post Compartilhar em outros sites
Muskt 0 Denunciar post Postado Agosto 10, 2006 Estamos trabalhando em \colecoes\index.php, que agora está com o seguinte código. <?phprequire_once("scripts/header.php");$destino = $_GET[cmb_colecao];if ($destino == NULL) { if ($dir=opendir(".")){ $i=0; while(($arquivos=readdir($dir)) !== false){ if($arquivos=="." or $arquivos==".." or $arquivos=="scripts") continue; { if(is_dir($arquivos)) { $dirs[$i] = "Coleção " . $arquivos; $i++; } } } }; sort($dirs);?><form action="index.php?destino=<?php $destino ?>" method="post"> <p>Escolha uma coleção: <select name="cmb_colecao"><?php for($i=0; $i<count($dirs); $i++) { print " <option value=\"$i\">" . $dirs[$i] . "</option>\n"; } ?> </select> <input type="submit" name="btn_ok" value=" OK " /> </p></form><?php$_POST[cmb_colecao]; }else { switch ($destino) { case "11" : /* Ir para index da pasta 11 */ break; default : /*Ir para aviso que não está ok */ break; }; };require_once("scripts/rodape.php");?> O que eu quero q esse script faça é o seguinte: 1. Carregar um combobox com o nome dos diretorios acrecido de "Coleção" no começo. 2. Pegar a escolha do usuario e leva-lo a pagina certa, como só irei desenvolver da coleção 11 para frente, quando escolher a coleção 11 ele deve levar o usuario a pagina localizada em /colecoes/11/index.php e assim sucessivamente. Qualquer outro esclarecimento é so me perguntar. Desculpe pelo incomodo, mais é o meu primeiro "grande" projeto em php http://forum.imasters.com.br/public/style_emoticons/default/blush.gif Compartilhar este post Link para o post Compartilhar em outros sites
Muskt 0 Denunciar post Postado Agosto 11, 2006 Mais ai quando ele entra na pagina pela primeira vez, http://ip/colecoes/index.php ele volta para para http://ip/index.php Não entendi por que ... Compartilhar este post Link para o post Compartilhar em outros sites
Muskt 0 Denunciar post Postado Agosto 11, 2006 Rá rá ! Perfeito !!!Agora eu so tenho que pegar o valor e aumentar 1, pois o primeiro valor da combo é 0 e da coleção é 1.Cara brigadão da ajuda !!! Valeu mesmo !!![]'s !!! Compartilhar este post Link para o post Compartilhar em outros sites
Muskt 0 Denunciar post Postado Agosto 11, 2006 Não, não daria certo assim, ele ia pular o primeiro item.Além disso vo ter que tratar para aparecer na url o 0 quando tiver um digito só:Ex. o item com valor 1 na url tem que aparecer 02se eu conseguir alguma colução eu posto ! Compartilhar este post Link para o post Compartilhar em outros sites