Ir para conteúdo
Fórum Script Brasil
  • 0

Pegar tipo de campo e montar form


Ricardo T. do Prado

Pergunta

Pessoal tenho o código abaixo que monta um tabela/grid:

function grid($tabela){
  
   $query="SELECT  FROM $tabela";
   //executa query de seleção
   $result=mysql_query($query);
   
   //se encontrar registros
   if(mysql_num_rows($result)){
      //preenchimento da Array com o nome dos campos
      for($i=0;$i < mysql_num_fields($result);$i++){
         $campos[$i]=mysql_field_name($result,$i);
      }
      
      //inicio do grid
      $grid="<table cellspacing='1' cellpadding='3' style='border: 1px solid;'>";
      
      //cabecalho do grid
      $grid.="<tr>";
      for($i=0;$i < sizeof($campos);$i++){
         $grid.="<td align='center' style='border: 1px solid;'><b>".$campos[$i]."</b></td>";
      }
      $grid.="</tr>";   
   
      //corpo do grid
      while($row=mysql_fetch_object($result)){
         $grid.="<tr>";
         for($i=0;$i < sizeof($campos);$i++){
            $grid.="<td>".$row->$campos[$i]."</td>";
         }
         $grid.="</tr>";
      }
      //fim do grid
      $grid.="</table>";
      
      echo $grid;
   }
   //se não encontrar registros
   else
      echo "não foi encontrado nenhum registro";
   
   mysql_free_result($result);
}

Só que gostaria de pegar o tipo de cada campo e montar um formulário. tipo: se o campo é tipo varchar imprimisse: <input type="text"> se fosse LONGTEXT, imprimisse o valor dentro de um textarea, deu pra manjar ae?

Abs.

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

cara, faz assim, não sei se vai ajudar mas se é como estou pensando:

Na pagina que você insere os dados no mysql, coloca do lado da <input type="text" > uma hidden assim

<input type="hidden" value="<?php echo "<input type="text" value="$valor retornado da consulta mysql">"?> ">
para textarea, coloca do lado da <textarea ...> uma hidden assim
<input type="hidden" value="<textarea>$valor retornado da consulta mysql</textarea>">

ai você salva as duas no banco de dados. Quando você for buscar seu texto você pega por linha e verifica se é varchar ou textarea.

axo que é isso! vai postando que vou te ajudando...

Link para o comentário
Compartilhar em outros sites

  • 0

beuleal,

valeu amigão pelo ajuda, mas essa idéia ai eu já tinha testado. Acho que talvez faltou clareza no que quis expor.

É que tipo. Tenho um painel CMS, só que quando crio uma tabela, exemplo: "noticias", eu tenho que fazer o formulário de LISTAGEM, ISERÇÃO, DELETE, ATUALIZAÇÃO, ex: inserirnoticias.php, listarnoticias.php, delnoticias.php.

A minha idéia é fazer um pequeno framework baseado em dicionário de dados para que, quando eu cadastre uma tabela, exemplo "noticias" ai cadastro ela em outra tabela "DicTable", e cadastro os campos/tipo da mesma no "DicField". Ai finalmente quando chamo a tabela "noticia" no DicTable, ela vai no DicField, pega os tipos dos campos (Varchar/Int, Bool, etc) e na DicField, tem a opção: "ISLOOKUP", se for lookup eu informo a tabela/chave/descrição.

É meio complicado mesmo isso, mas como o framework pronto você adapta o CMS a qualquer website, sem precisar mexer no codigo fonte. Você só irá parametrizar no banco.

Abs.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...