Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Gustavo Santos Lima

Problema no Site

Recommended Posts

Estou com um problema muito estranho no meu site e gostaria muito de ajuda.Eu criei um site e um banco de dados e tem apenas uma tabela usuario nesse banco de dados (mysql) e eu criei também um tabela (table html) no meu site que eu adiciono e excluo os usuários diretamente pelo site, essa tabela (html) é montada através da consulta no banco.Agora o problema: Exemplo eu adiciono usuários teste1, teste2, teste3 A tabela no site mostra uma hora que tem o usuário teste1 aí outra hora mostra que eu tenho apenas o teste2 ou o teste3. A tabela no site não está apresentando a tabela do banco corretamente.O curioso é que em localhost não acontece esse problema funciona tudo normalmente mais quando subo os arquivos para os servidores da HostNet aí acontece isso, se alguém puder me ajudar agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Segue o código da página que monta a tabela.

<?php @session_start();
include("restrito.php");
include("abrir-conexao.php");
@$info = $_REQUEST['info'];
@$erro = $_REQUEST['erro'];
?>
<!DOCTYPE html>
<html>
<head>
<title>Data Base | Digital Hunters</title>
<?php require "head.php" ?>
</head>
<body>
<div id="interface">
<?php require "cabecalho.php" ?>
<?php require "navegacao.php" ?>
<section id="feed">
<article id="artigo">
<?php if($info == "adicionado"): ?>
<section class="info"><strong>Adicionado com Sucesso!</strong></section>
<?php endif; ?>
<?php if($info == "editado"): ?>
<section class="info"><strong>Editado com Sucesso!</strong></section>
<?php endif; ?>
<?php if($info == "excluido"): ?>
<section class="info"><strong>Excluído com Sucesso!</strong></section>
<?php endif; ?>
<?php if($erro == "existe"): ?>
<section class="erro"><strong>Edição NÃO Concluída!</strong><br>O usuário digitado já existe, tente novamente.</section>
<?php endif; ?>
<table class="tabela-bd">
<caption class="tabela-bd">Tabela do Banco de Dados</caption>
<tr class="titulo"><td rowspan="2">ID</td><td rowspan="2">NOME</td><td rowspan="2">USUÁRIO</td><td rowspan="2">SENHA</td><td rowspan="2">PRIVILÉGIOS</td><td colspan="3">MANIPULAR</td></tr>
<tr class="titulo"><td colspan="2"><a class="titulo" href="inserir-usuario.php#interface"> + Adicionar</a></td></tr>
<?php
$i=1;
$sql = "SELECT * FROM usuario";
$consulta = $conexao->prepare($sql);
$consulta->execute();
$resultado = $consulta->fetchAll();
foreach($resultado as $linha):
?>
<tr><td><?php echo $i++; ?></td><td><?php echo $linha['nome']; ?></td><td><?php echo $linha['user']; ?></td><td><?php echo $linha['senha']; ?></td><td><?php echo $linha['privilegio']; ?></td><td><a class="link" href="editar-usuario.php?id=<?php echo $linha['id']; ?>#interface">Editar</a></td><td colspan="2"><a class="link" href="deletar.php?id=<?php echo $linha['id']; ?>">Excluir</a></td></tr>
<?php
endforeach;
$conexao=null;
?>
</table>
</article>
</section>
<?php require "rodape.php" ?>
</div>
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Os "@" são só pra não da WARNING quando a faviarel de sessão ainda não estiver setada.

Use isset com operador ternário

$retVal = (condition) ? a : b ;
$info = isset($_REQUEST['info']) ? !empty($_REQUEST['info']) : null;

Assim evita esses @s

Compartilhar este post


Link para o post
Compartilhar em outros sites

O "@" só deve ser usado em situações bem específicas, de exceção. Veja: http://rberaldo.com.br/boas-praticas-programacao-php/#arroba

 

Essa e outras dicas: http://www.ultimatephp.com.br/guia/

 

Além de remover os "@", habilite todas as exibições de erro, como mostrado neste tópico. Em seguida teste novamente e veja se aparecem erros

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.