XsTeAl Posted April 13, 2012 at 11:42 AM Report #448927 Posted April 13, 2012 at 11:42 AM Boas, num projecto que estou a desenvolver, ao registar um formulário tenho que seleccionar a categoria que quero para o que estou a inserir, fiz um query a BD par obter o nome e o id das categorias todas ate aqui tudo bem. Agora eu quero preencher o meu ficheiro tpl com as option da tag select só que não tou a conseguir chegar lá, sei que tenho que fazer um loop para "correr" os registo todos, so que nao consigo passar para o ficheiro tpl cumprimentos
HappyHippyHippo Posted April 13, 2012 at 02:40 PM Report #448961 Posted April 13, 2012 at 02:40 PM é impossivel responder com essa informação demasiado escassa ... 1º - usas alguma biblioteca para aceder à base de dados ? 2º - que template engine usas ? caso não saibas responder a estas perguntas, faz post do teu código para se poder analisar e responder correctamente IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
XsTeAl Posted April 13, 2012 at 03:03 PM Author Report #448973 Posted April 13, 2012 at 03:03 PM é impossivel responder com essa informação demasiado escassa ... 1º - usas alguma biblioteca para aceder à base de dados ? 2º - que template engine usas ? caso não saibas responder a estas perguntas, faz post do teu código para se poder analisar e responder correctamente 1º não 2º uso este template engine http://www.raelcunha.com/template.php
HappyHippyHippo Posted April 13, 2012 at 03:11 PM Report #448977 Posted April 13, 2012 at 03:11 PM presumo então que estás a usar as funções nativas do php : http://www.raelcunha.com/template.php#select_blocks http://pt.php.net/manual/en/ref.mysql.php while (($record = mysql_fetch_assoc ($rs)) !== false) { $tpl->VALUE = $record['id']; $tpl->TEXT = $record['text']; if($atual == $value) $tpl->SELECTED = "selected"; else $tpl->clear("SELECTED"); $tpl->block("BLOCK_OPTION"); } terás de alterar para ficar de acordo como teu código e template IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
XsTeAl Posted April 13, 2012 at 04:05 PM Author Report #449004 Posted April 13, 2012 at 04:05 PM presumo então que estás a usar as funções nativas do php : http://www.raelcunha.com/template.php#select_blocks http://pt.php.net/manual/en/ref.mysql.php while (($record = mysql_fetch_assoc ($rs)) !== false) { $tpl->VALUE = $record['id']; $tpl->TEXT = $record['text']; if($atual == $value) $tpl->SELECTED = "selected"; else $tpl->clear("SELECTED"); $tpl->block("BLOCK_OPTION"); } terás de alterar para ficar de acordo como teu código e template tenho por exemplo assim $sql2 = mysql_query("SELECT * FROM subcategoria WHERE idCategoria IS NOT NULL ORDER BY id ASC"); while(($linhasql2 = mysql_fetch_assoc($sql2)) != false){ $tpl->CATEGORIA = $linhasql2[nome]; $tpl->IDC = $linhasql2[id]; $tpl->block("CATEGORIA"); } e no ficheiro tpl tenho <!-- BEGIN CATEGORIA --> categoria <select><option value="{IDC}">{CATEGORIA}</option></select><br /> <!-- END CATEGORIA --> e aparece os valores tipo assim VivendasApartamentosCarros , nao aparece a combo
HappyHippyHippo Posted April 13, 2012 at 04:21 PM Report #449015 Posted April 13, 2012 at 04:21 PM viste bem o link do exemplo de como preencher uma combobox ?!?!?! eu coloquei exactamente por essa razão .... lé o que está no primeiro link que fiz post e vê a diferênca com o teu código IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
XsTeAl Posted April 13, 2012 at 05:09 PM Author Report #449040 Posted April 13, 2012 at 05:09 PM viste bem o link do exemplo de como preencher uma combobox ?!?!?! eu coloquei exactamente por essa razão .... lé o que está no primeiro link que fiz post e vê a diferênca com o teu código Já sei o que fiz mal, mas agora aparece a combo vazia :S
HappyHippyHippo Posted April 13, 2012 at 05:52 PM Report #449052 Posted April 13, 2012 at 05:52 PM como é que tens agora ? IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
XsTeAl Posted April 13, 2012 at 05:59 PM Author Report #449056 Posted April 13, 2012 at 05:59 PM $actual = 1; while(($linhasql2 = mysql_fetch_assoc($sql2)) != false){ $valor = $linhasql2[id]; $tpl->CATEGORIA = $linhasql2[nome]; $tpl->IDC = $linhasql2[id]; if($actual == $valor){ $tpl->SELECTED = "selected"; }else{ $tpl->clear("SELECTED");} $tpl->block("CATEGORIA"); } <select name="categoria"><!-- BEGIN CATEGORIA --> <option value="{IDC}" {SELECTED}>{CATEGORIA}</option> <!-- END CATEGORIA --></select>
HappyHippyHippo Posted April 13, 2012 at 06:03 PM Report #449057 Posted April 13, 2012 at 06:03 PM quantos warnings tens na página ?!?!? não são erros mas é como se fosse .... $linhasql2[nome]; $tpl->IDC = $linhasql2[id]; >> $linhasql2['nome']; $tpl->IDC = $linhasql2['id']; tens de começar a identar o código ... IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
XsTeAl Posted April 16, 2012 at 11:17 AM Author Report #449396 Posted April 16, 2012 at 11:17 AM quantos warnings tens na página ?!?!? não são erros mas é como se fosse .... $linhasql2[nome]; $tpl->IDC = $linhasql2[id]; >> $linhasql2['nome']; $tpl->IDC = $linhasql2['id']; tens de começar a identar o código ... Tinha desactivado e nao via os "erros" já activei e só mostrava os warnings da falta das "" corrigido isso não mostra nenhum warning
XsTeAl Posted April 20, 2012 at 01:39 PM Author Report #450172 Posted April 20, 2012 at 01:39 PM Resolvido depois de ter batalhado, vi o erro que tinha! O block não pode ter o mesmo nome que uma variavel de template
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now