bcs_ptx 0 Denunciar post Postado Novembro 28, 2013 ai pessoal, a minha ideia é listar todas as colunas da tabela que vem do banco e o conteudo, mas queria que visse assim id nome idade 1 maicom 18 2 pedro 24 mas está vindo assim id 1 nome maicom idade 18 id 2 nome pedro idade 24 oque tenho que mudar para mostrar dessa forma? abraços $returnId = array_keys($index); $values = array_values($index[$returnId[0]]); $html = "<table border='1'><tr>"; for($i = 0; $i < count($values); $i++) { $where = $returnId[0]." = '".$values[$i]."'"; $select = "SELECT * FROM tbl_teste WHERE ".$where; $this->query($select); $dados = $this->result(); $campos = array_keys($dados); $value = array_values($dados); for($j=0; $j < count($campos); $j++) { if($j == 0 and $i != 0) { $html.= "</tr><tr>"; } $html.= "<td>".$campos[$j]."</td>"; $html.= "<td>".$value[$j]."</td>"; } } } $html.= "</tr></table>"; echo $html; Compartilhar este post Link para o post Compartilhar em outros sites
Célio A. 4 Denunciar post Postado Novembro 28, 2013 Bem eu quase não trabalho com PHP então não sou expert com PHP OO, mas da para fazer assim: $dados = array(); while($lista = mysql_fetch_array($query)){ $dados[] = $lista ['id']." ".$lista ['nome']." ".$lista['idade']; } Compartilhar este post Link para o post Compartilhar em outros sites
lex21 2 Denunciar post Postado Novembro 29, 2013 organiza esses dados dentro de uma tabela. Compartilhar este post Link para o post Compartilhar em outros sites
bcs_ptx 0 Denunciar post Postado Novembro 29, 2013 sim, mas a ideia é essa, mas não digitar um por um, e sim automático Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Novembro 29, 2013 É intencional rodar várias queries ? Pq vc não faz tudo em uma query só ? Seu código está bem bagunçado. Qual é o valor da variavel $index ? Compartilhar este post Link para o post Compartilhar em outros sites
bcs_ptx 0 Denunciar post Postado Novembro 29, 2013 a variavel index vem com os ID de cada registro, exemplo vem como id 38 e id 39 Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Novembro 29, 2013 Então faça tudo numa query só, dessa forma aqui: SELECT * FROM tabela WHERE id IN(38, 39, 40) Compartilhar este post Link para o post Compartilhar em outros sites
bcs_ptx 0 Denunciar post Postado Dezembro 2, 2013 beleza, mas a partir disso tenho que fazer ficar em ordem, e foi isso que eu não consegui. id nome idade 1 joao 21 2 pedro 24 e estava ficando assim id nome idade 1 joao 21 id nome idade 2 pedro 24 $returnId = array_keys($index); $values = "'".implode("', '", array_values($index[$returnId[0]]))."'"; $select = "SELECT * FROM tbl_teste WHERE id_usuario IN (".$values.")"; $this->query($select); $html = "<table>"; $html.= "</html>"; echo $html; exit(); Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Dezembro 2, 2013 Não conheço bem o seu sistema, e nem sei como ele retorna, mas seria algo assim: $returnId = array_keys($index); $values = implode(',', array_values($index[$returnId[0]])); $select = "SELECT * FROM tbl_teste WHERE id_usuario IN ('".$values."')"; $this->query($select); $html = '<table>'; $hmlt .= '<tr><th>id</th><th>nome</th><th>idade</th></tr>'; $dados = $this->result(); for($j=0; $j < count($dados); $j++) { $html.= '<tr><td>'.$dados['id'].'</td><td>'.$dados['nome'].'</td><td>'.$dados['idade'].'</td></tr>'; } $html.= '</html>'; echo $html; exit(); Compartilhar este post Link para o post Compartilhar em outros sites
bcs_ptx 0 Denunciar post Postado Dezembro 2, 2013 beleza, seria essa a ideia, mas quero que os dados venham automático, e não que eu escreva um por um nas linhas, entende? <tr><td>'.$dados['id'].'</td><td>'.$dados['nome'].'</td><td>'.$dados['idade'].'</td></tr> dessa forma mas varrendo tudo oque tem na tabela e mostrando todos Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Dezembro 2, 2013 automaticamente tipo, todos os campos da tabela sem saber qual o nome das colunas ? Compartilhar este post Link para o post Compartilhar em outros sites
bcs_ptx 0 Denunciar post Postado Dezembro 2, 2013 sim, isso mesmo, retornar todos os campos, por enquanto está assim: $returnId = array_keys($index); $values = implode("', '", array_values($index[$returnId[0]])); $select = "SELECT * FROM tbl_teste WHERE id_usuario IN ('".$values."')"; $this->query($select); $html = ""; $html.= "<table border='1'>"; while($dados = $this->result()) { $key = array_keys($dados); $value = array_values($dados); for($i=0;$i<count($dados);$i++) { if($i % count($dados) == 0) { if($i == 0) { $html.= "<tr>"; } else { $html.= "</tr><tr>"; } } $html.= "<td>".$key[$i]."</td>"; $html.= "<td>".$value[$i]."</td>"; } } $html.= '</tr></table>'; echo $html; exit(); e o resultado esta assim ID 1 NOME BRUNO ID 2 NOME PEDRO mas a ideia é ficar assim ID NOME 1 BRUNO 2 PEDRO Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Dezembro 2, 2013 @bcs_ptx, vc precisa de 2 loops. Um para listar primeiro os títulos das colunas, e outro para os valores. Compartilhar este post Link para o post Compartilhar em outros sites
bcs_ptx 0 Denunciar post Postado Dezembro 2, 2013 sim, isso mesmo, mas tentei e não deu igual Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Dezembro 2, 2013 algo mais ou menos assim: $j = 0; while($dados = $this->result()) { $key = array_keys($dados); $value = array_values($dados); if( $j==0 ) { //só rodar no primeiro loop $html.= '<tr>'; for($i=0;$i<count($dados);$i++) { $html.= "<th>".$key[$i]."</th>"; } $html.= '</tr>'; } $html.= '<tr>'; for($i=0;$i<count($dados);$i++) { $html.= "<td>".$value[$i]."</td>"; } $html.= '</tr>'; $j++; } Compartilhar este post Link para o post Compartilhar em outros sites
bcs_ptx 0 Denunciar post Postado Dezembro 2, 2013 isso mesmo cara, valeu Compartilhar este post Link para o post Compartilhar em outros sites