Erro ao carregar pagina em php
Boa tarde à todos primeiramente.
Pessoal, se alguém puder me ajudar a desvendar esse mistério eu agradeço.
Tenho essa pagina produto.php
Pagina de menu.php
pagina index.php
Uso um método que recupera o ID e Nome das categorias de produto que cadastrei, porém ao clicar sempre dá erro de que a pagina não existe
Not Found
The requested URL /loja//produto/1/escritorio was not found on this server.
Apache/2.4.7 (Ubuntu) Server at localhost Port 80
sempre o apache me retorna esse erro.
Pessoal, se alguém puder me ajudar a desvendar esse mistério eu agradeço.
Tenho essa pagina produto.php
<?php //recuperar o id passado pela url $url = (isset($_GET['url'])) ? $_GET['url']:''; $explode = explode('/',$url); $categoria = $explode[1]; //Consultar a categoria conforme o id $resultado_cat=mysql_query("SELECT * FROM categorias WHERE id='$categoria' LIMIT 1"); $linhas_cat=mysql_fetch_assoc($resultado_cat); //Consultar os produtos conforme a categoria $resultado_prod=mysql_query("SELECT * FROM produtos WHERE categoria_id='$categoria' ORDER BY 'id'"); $linhas_prod=mysql_num_rows($resultado_prod); ?> <!-- Marketing messaging and featurettes ================================================== --> <!-- Wrap the rest of the page in another container to center all the content. --> <div class="container marketing"> <h1><?php echo $linhas_cat['nome']; ?></h1> <!-- Three columns of text below the carousel --> <div class="row"> <?php while($linhas_prod = mysql_fetch_array($resultado_prod)){ $imagem = pg.'/foto/'.$linhas_prod['imagem']; ?> <div class="col-xs-12 col-sm-6 col-md-3 col-lg-3"> <img class="img-circle" src="<?php echo $imagem; ?>" alt="Generic placeholder image" width="140" height="140"> <h2><?php echo $linhas_prod['nome']; ?></h2> <p><?php echo $linhas_prod['descricao_curta']; ?></p> <p><a class="btn btn-default" href="<?php echo pg.'/detalhe_produto/'.$linhas_prod['id'].'/'.$linhas_prod['slug']; ?>" role="button">Mais detalhes »</a></p> </div><!-- /.col-lg-4 --> <?php } ?> </div><!-- /.row --> <!-- START THE FEATURETTES --> <?php //Consultar os produtos conforme a categoria $resultado_prod_baix=mysql_query("SELECT * FROM produtos WHERE categoria_id='$categoria' ORDER BY 'id' LIMIT 3"); $linhas_prod_baix=mysql_num_rows($resultado_prod_baix); ?> <hr class="featurette-divider"> <?php //imprime produtos lista baixa destaque $controle = 0; while($linhas_prod = mysql_fetch_array($resultado_prod_baixo)){ $imagem = pg.'/foto/'.$linhas_prod['imagem']; if($controle == 0){ ?> <div class="row featurette"> <div class="col-md-7"> <h2 class="featurette-heading"><?php echo $linhas_prod['nome']; ?></h2> <p class="lead"><?php echo $linhas_prod['descricao_curta']; ?></p> </div> <div class="col-md-5"> <img class="featurette-image img-responsive center-block" src="<?php echo $imagem; ?>" alt="Generic placeholder image"> </div> </div> <hr class="featurette-divider"> <?php $controle = 1; }else{ ?> <div class="row featurette"> <div class="col-md-7 col-md-push-5"> <h2 class="featurette-heading"><?php echo $linhas_prod['nome']; ?></h2> <p class="lead"><?php echo $linhas_prod['descricao_curta']; ?></p> </div> <div class="col-md-5 col-md-pull-7"> <img class="featurette-image img-responsive center-block" src="<?php echo $imagem; ?>" alt="Generic placeholder image"> </div> </div> <hr class="featurette-divider"> <?php $controle = 0; } ?> <?php } ?> <!-- /END THE FEATURETTES --> <footer> <p>© AriusLojaFicticia.com.br</p> </footer> </div> <!-- /container -->
Pagina de menu.php
<?php $resultado=mysql_query("SELECT * FROM categorias ORDER BY 'id'"); $linhas=mysql_num_rows($resultado); ?> <nav class="navbar navbar-inverse navbar-fixed-top"> <div class="container"> <div class="navbar-header"> <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="#">AriusLoja</a> </div> <div id="navbar" class="navbar-collapse collapse"> <ul class="nav navbar-nav"> <li><a href="<?php echo pg.'/home'; ?>">Home</a></li> <li class="dropdown"> <a href="produto.php" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Produtos <span class="caret"></span></a> <ul class="dropdown-menu"> <?php //lista as categorias de produto while($linhas = mysql_fetch_array($resultado)){ ?><li><a href="<?php echo pg.'/produto/'.$linhas['id'].'/'.$linhas['slug']; ?>"><?php echo $linhas['nome']; ?></a></li> <?php } //fim lista as categorias de produto?> </ul> </li> <li><a href="<?php echo pg.'/empresa'; ?>">Empresa</a></li> <li><a href="<?php echo pg.'/contato'; ?>">Contato</a></li> </ul> </div><!--/.nav-collapse --> </div> </nav>
pagina index.php
<?php define('pg','http://localhost/loja'); session_start(); include_once("adm/conexao.php"); ?> <!DOCTYPE html> <html lang="pt-br"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="icon" href="adm/imagens/favicon.ico"> <title>Loja de Moveis</title> <!-- Bootstrap core CSS --> <link href="<?php echo pg ?>/css/bootstrap.css" rel="stylesheet"> <!-- Custom styles for this template --> <link href="<?php echo pg ?>/css/jumbotron.css" rel="stylesheet"> <!-- Custom styles for this template <link href="css/carousel.css" rel="stylesheet">--> <!-- Just for debugging purposes. Don't actually copy these 2 lines! --> <!--[if lt IE 9]><script src="../../assets/js/ie8-responsive-file-warning.js"></script><![endif]--> <script src="<?php echo pg ?>/js/ie-emulation-modes-warning.js"></script> <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries --> <!--[if lt IE 9]> <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script> <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> <![endif]--> </head> <body> <!-- Menu --> <?php include_once("menu.php"); ?> <!-- Marketing messaging and featurettes ================================================== --> <!-- Wrap the rest of the page in another container to center all the content. --> <?php $url = (isset($_GET['url'])) ? $_GET['url']:''; $explode = explode('/',$url); $paginas = array('home','produto','contato','empresa','detalhe_produto','proc_cad_contato'); if(isset($explode[0])&& $explode[0] == ''){ include "home.php"; }elseif($explode[0]!=''){ if(isset($explode[0]) && in_array($explode[0],$paginas)){ include $explode[0].".php"; }else{ include "home.php"; } } ?> <!-- Bootstrap core JavaScript ================================================== --> <!-- Placed at the end of the document so the pages load faster --> <script src="<?php echo pg ?>/js/jquery.min.js"></script> <script src="<?php echo pg ?>/js/bootstrap.min.js"></script> <!-- IE10 viewport hack for Surface/desktop Windows 8 bug --> <script src="<?php echo pg ?>/js/ie10-viewport-bug-workaround.js"></script> </body> </html>
Uso um método que recupera o ID e Nome das categorias de produto que cadastrei, porém ao clicar sempre dá erro de que a pagina não existe
Not Found
The requested URL /loja//produto/1/escritorio was not found on this server.
Apache/2.4.7 (Ubuntu) Server at localhost Port 80
sempre o apache me retorna esse erro.
Gabriel Rocha
Curtidas 0
Respostas
Fabio Rocha
21/06/2017
Olá Grabriel,
Pelo que vi esta utilizando URL amigáveis mas não vi o seu arquivo .htaccess
Tente criar este arquivo com este conteúdo dentro.
Abraços
Pelo que vi esta utilizando URL amigáveis mas não vi o seu arquivo .htaccess
Tente criar este arquivo com este conteúdo dentro.
RewriteEngine On RewriteCond % !-d RewriteCond % !-f RewriteCond % !-l RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]
Abraços
GOSTEI 0
Gabriel Rocha
21/06/2017
Não é esse o problema, infelizmente :/
GOSTEI 0
Fabio Rocha
21/06/2017
Olá Gabriel,
Tente postar seu .htaccess aqui para possa tentar lhe ajudar.
Verifique também a configuração do PHP se mod_rewrite esta habilitado.
Pois erro de 404 normalmente é quando esta relacionado ao servidor não encontrar uma página, o mod_rewrite faz com que isso não aconteça quando esta ativo normalmente.
Abraços
Tente postar seu .htaccess aqui para possa tentar lhe ajudar.
Verifique também a configuração do PHP se mod_rewrite esta habilitado.
Pois erro de 404 normalmente é quando esta relacionado ao servidor não encontrar uma página, o mod_rewrite faz com que isso não aconteça quando esta ativo normalmente.
Abraços
GOSTEI 0