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

Paginacao+Tabela+Php


tuxjpa

Pergunta

Boa Noite Amigos.

Estou me aventurando no aprendizado do PHP e já comecei com uma pergunta meio dificil. Estou montando um sistema em php+mysql, quero montar uma grid (uma tabela) com os dados que eu puxar do mysql e que sejam exibidas em forma de tabela, e dentre esses dados obtidos, gostaria de clickar com o botão na linha que quiser e abrir uma nova janela para a pessoa alterar os dados da linha especificada. Outra coisa também sem querer já explorar a boa vontade é sobre as tabelas, existe algum modo de "fixar" o tamanho das colunas? Pois como no meu banco temos muitas colunas, acaba saindo tudo igual escrita japonesa, ou seja, tudo na vertical.rs.rs.rs...(nem que tenha q colocar uma scrol abaixo da tabela para a pessoa ir verificando os dados) Será muito dificil fazer isso? se puderem me mandar algum exemplo ou coisa do tipo seria interessante. To tentando com o EyeDataGrid Class mas zero de emoção.

Abraços e Obrigado pelo apoio.

Leonardo Duarte.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Uma coisa de cada vez,

1. Selecionar dados: você executa uma instrução sql no seu banco usando mysql_query()

$resultado = mysql_query("select * from table");
2. Criar lista: exibe com while usando mysql_fetch_assoc ou mysql_fetch_array. Vou dar um exemplo mostrar a lógica, mas você pode fazer isso usando bem menos linhas. Exemplo :
$tags= array(
 "abre_grid" => "<table>",
 "fecha_grid" => "</table>",
 "abre_linha" => "<tr>",
 "fecha_linha" => "</tr>",
 "abre_col" => "<td>",
 "fecha_col" => "</td>"
  )
      while($linha = mysql_fetch_array($resultado) )

        echo $tags["abre_grid"];
            echo $tags["abre_linha"];
                echo $tags["abre_col"].$linha["id"].$tags["fecha_col"];
                echo $tags["abre_col"].$linha["nome"].$tags["fecha_col"];
            echo $tags["fecha_linha"];
        echo $tags["fecha_grid"];

}
3. Depois de feito isso você implementa na lista os links de edição. Exemplo:
fuction LinkEditar($id,$nome){
    $link = "<a href=\"editar.php?id=".$id.">".$nome."</a>";
    return $link;
}
      
 $tags= array(
 "abre_grid" => "<table>",
 "fecha_grid" => "</table>",
 "abre_linha" => "<tr>",
 "fecha_linha" => "</tr>",
 "abre_col" => "<td>",
 "fecha_col" => "</td>",
  )
  

      while($linha = mysql_fetch_array($resultado) )

        echo $tags["abre_grid"];
            echo $tags["abre_linha"];
                echo $tags["abre_col"].$linha["id"].$tags["fecha_col"];
                echo $tags["abre_col"].LinkEditar($linha["id"],$linha["nome"]).$tags["fecha_col"];
            echo $tags["fecha_linha"];
        echo $tags["fecha_grid"];

}
4. Você cria a página editar.php que vai pegar o parâmetro de ur id e jogar numa instrução sql filtrando os dados através da cláusula WHERE
session_start();
$_SESSION["ID"] = $_GET["id"];
$PegaId = (int)$_SESSION["ID"];
$resultado = mysql_query("select * from table WHERE".$PegaId);
5. Depois você vai construir o formulário de edição imprimindo em cada campo os valores da base
<form action="" method="POST">
<input type="text" name="nome" value="<?= $linhas["nome"] ?>">
<input type="SUBIMIT" name="nome" value="vai">
</form>
6. Executar o comando de update
if($_SESSION["ID"] AND $_POST != ""){
    
    preg_replace(sql_regcase("/(from|select|insert|delete|where|drop table|show tables|#|\*|--|\\\\)/"),"",$_POST);
    $ID = preg_replace(sql_regcase("/(from|select|insert|delete|where|drop table|show tables|#|\*|--|\\\\)/"),"",$_SESSION["ID"]);
    
    mysql_query("UPDATE table SET nome = ".$_POST["nome"]." WHERE id = ".(int)$ID);
}

Quanto a paginação dá uma pesquisada no fórum deve ter uns mil tópicos relacionados

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
      652k
×
×
  • Criar Novo...