Gustavuh 0 Denunciar post Postado Dezembro 18, 2015 Saudações. Quero carregar dados de uma tabela numa table mas o problema não é nem esse mas sim na lógica do código, no qual não estou conseguindo. <?php require '../Connections/conexao.php'; require '../Connections/database.php'; ?> <table class="table table-hover"> <tr> <th>ID</th> <th>Login</th> <th>Nome</th> <th>Permissão</th> <th>E-mail</th> </tr> <?php $consulta = DBRead('adminis', "LIMIT 5", 'administradorID, login, nome, permissao, email'); ?> <tr> <td><?php echo $consulta ["administradorID"];?></td> <td><?php echo $consulta ["login"];?></td> <td><?php echo $consulta ["nome"]; ?></td> <td><span class="label label-success"><?php echo $consulta ["permissao"]; ?></span></td> <td><?php echo $consulta ["email"]; ?></td> </tr> </table> <?php // Deleta Registros function DBDelete($table, $where = null){ $table = DB_PREFIX.'_'.$table; $where = ($where) ? " WHERE {$where}" : null; $query = "DELETE FROM {$table}{$where}"; return DBExecute($query); } // Altera Registros function DBUpDate($table, array $data, $where = null, $insertId = false){ foreach ($data as $key => $value){ $fields[] = "{$key} = '{$value}'"; } $fields = implode(', ', $fields); $table = DB_PREFIX.'_'.$table; $where = ($where) ? " WHERE {$where}" : null; $query = "UPDATE {$table} SET {$fields}{$where}"; return DBExecute($query, $insertId); } // Ler Registros function DBRead($table, $params = null, $fields = '*'){ //$table = DB_PREFIX.'_'.$table; $params = ($params) ? " {$params}" : null; $query = "SELECT {$fields} FROM {$table}{$params}"; $result = DBExecute($query); if(!mysqli_num_rows($result)) return false; else { while ($res = mysqli_fetch_assoc($result)){ $data[] = $res; } return $data; } } // Grava Registros function DBCreate($table, array $data, $insertId = false){ //$table = DB_PREFIX.'_'.$table; $data = DBEscape($data); $campos = implode(', ', array_keys($data)); $values = "'".implode("', '", $data)."'"; $query = "INSERT INTO {$table} ( {$campos} ) VALUES ( {$values} )"; return DBExecute($query, $insertId); } // Executa Querys function DBExecute($query, $insertId = false){ $link = DBConnect(); $result = @mysqli_query($link, $query) or die(mysqli_error($link)); if($insertId) $result = mysqli_insert_id($link); DBClose($link); return $result; } // Protege contra SQL Injection function DBEscape($data){ $link = DBConnect(); if(!is_array($data)) $data = mysqli_real_escape_string($link, $data); else { $arr = $data; foreach ($arr as $key => $value){ $key = DBEscape( $key ); $value = DBEscape( $value ); $data[$key] = $value; } } DBClose($link); return $data; } // Fecha Conexão com MySQL function DBClose($link){ @mysqli_close($link) or die(mysqli_error($link)); } // Abre com Conexão com MySQL function DBConnect(){ $link = @mysqli_connect(DB_HOSTNAME, DB_USERNAME, DB_PASSWORD, DB_DATABASE) or die(mysqli_connect_error()); mysqli_set_charset($link, DB_CHARSET) or die(mysqli_error($link)); return $link; } <?php define( 'DB_HOSTNAME', 'localhost' ); define( 'DB_USERNAME', 'root' ); define( 'DB_PASSWORD', null ); define( 'DB_DATABASE', 'bdteste' ); define( 'DB_CHARSET', 'utf8' ); ?> Alguem pode ajudar ae? Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Dezembro 18, 2015 As <tr>'s devem estar no loop: <table> <thead> cabeçalhos </thead> <tbody> // faz a query while (fetch()) { <tr> adiciona as <td> </tr> } </tbody> </table> Compartilhar este post Link para o post Compartilhar em outros sites
Gustavuh 0 Denunciar post Postado Dezembro 18, 2015 Eu fiz assim e não deu certo <table class="table table-hover"> <tr> <th>ID</th> <th>Login</th> <th>Nome</th> <th>Permissão</th> <th>E-mail</th> </tr> <?php $consulta = DBRead('adminis', "LIMIT 5", 'administradorID, login, nome, permissao, email'); while(mysqli_fetch_array($consulta)){?> <tr> <td><?php echo $consulta["administradorID"];?></td> <td><?php echo $consulta["login"];?></td> <td><?php echo $consulta["nome"]; ?></td> <td><span class="label label-success"><?php echo $consulta["permissao"]; ?></span></td> <td><?php echo $consulta["email"]; ?></td> </tr> <?php } ?> </table> Da o seguinte erro: mysqli_fetch_array() expects parameter 1 to be mysqli_result, array given in C:\wamp\www\Site\Administracao\Usuario.php on line Eu usei tanto mysqli_fetch_array quanto mysqli_fetch_assoc Compartilhar este post Link para o post Compartilhar em outros sites
Wesley Inacio 6 Denunciar post Postado Dezembro 18, 2015 Um exemplo: echo " <tr> <td>consultadoid</td> <td>consultadalogin</td> <td>consultadanome</td> <td>etc...</td>"; Só 1 echo, cada conta gera uma linha somente. Compartilhar este post Link para o post Compartilhar em outros sites
Gustavuh 0 Denunciar post Postado Dezembro 18, 2015 Desculpa a ignorância mas comecei em php tem poucos dias. Fiz assim: <table class="table table-hover"> <tr> <th>ID</th> <th>Login</th> <th>Nome</th> <th>Permissão</th> <th>E-mail</th> </tr> <?php $consulta = DBRead('adminis', "LIMIT 5", 'administradorID, login, nome, permissao, email'); while(mysqli_fetch_array($consulta)){ echo "<tr> <td>$consulta(\"administradorID\")</td> </tr>"; }?> </table> Deu seguinte erro: mysqli_fetch_array() expects parameter 1 to be mysqli_result, array given in C:\wamp\www\Site\Administracao\Usuario.php on line Compartilhar este post Link para o post Compartilhar em outros sites
TutiJapa 2 Denunciar post Postado Dezembro 18, 2015 $consulta = DBRead('adminis', "LIMIT 5", 'administradorID, login, nome, permissao, email'); Nessa linha está escrito adminis você tem certeza que o nome da tabela é assim ? não seria admins ? Compartilhar este post Link para o post Compartilhar em outros sites
Wesley Inacio 6 Denunciar post Postado Dezembro 18, 2015 E no mysqli, não teria que ter a variável da conexão junto a consulta? Compartilhar este post Link para o post Compartilhar em outros sites
Gustavuh 0 Denunciar post Postado Dezembro 18, 2015 Consegui resolver assim <table class="table table-hover"> <tr> <th>ID</th> <th>Login</th> <th>Nome</th> <th>Permissão</th> <th>E-mail</th> </tr> <?php $consulta = DBRead('adminis', "LIMIT 5", 'administradorID, login, nome, permissao, email'); foreach($consulta as $data) : ?> <tr> <td><?php echo $data["administradorID"];?></td> <td><?php echo $data["login"];?></td> <td><?php echo $data["nome"]; ?></td> <td><span class="label label-success"><?php echo $data["permissao"]; ?></span></td> <td><?php echo $data["email"]; ?></td> </tr> <?php endforeach?> </table> Obrigado pela ajuda! Compartilhar este post Link para o post Compartilhar em outros sites