Ir para conteúdo

Arquivado

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

ewersonsv

[Resolvido]Url Amigavel (PARA USAR ERRO404)

Recommended Posts

<?php
$rP = $_GET['rP'];

//Pages
if ($rP == "inicio") {
$jogo = "1";
}
if ($rP == "contato") {
$jogo = "2";
}


//Erros
if ($rP == "404") {
$jogo = "404";
}
?>


<?php
	//Pages
  if ($jogo  ==  "1") { include "./pages/inicio.php"; } //Inicio - ?rP=inicio ou /inicio
  elseif ($jogo == "2") { include "./pages/contato.php"; } //Pagina De Contato - ?rP=contato ou /contato
  
  //Erros
  elseif ($jogo == "404") { include "./errors/404.php"; } // Caso A Pagina Não Existir.
  
  /*home*/
  else { include "./pages/inicio.php"; }

   
?>

Pessoal, Preciso de uma ajuda :D eu tou usando esse modo para definir a paginação do meu site porém queria por erro 404 quando nao existir a pagina... mais nao consigo, quando nao existe ele ta mostrando a pagina INICIO, porem se eu troca na *else* se entra sem a paginação /inicio ou ?rP=inicio ele vai fica mostrando erro 404...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Precisa trabalhar um pouco mas na lógica deste script mano.

esta uma solução bem simples, que ainda não e a ideal. mas serve como base para aprimorar.

espero ter ajudado!!

<?php

$rp		= $_GET['rP'];

$dir	= './pages/';

$pages	= [
	'inicio' => '1',
	'contato' => '2',
	'404' => '404'
];

if (empty($rp)) {
	
	include_once $dir . $pages['inicio'] . ".php";
	
} elseif (!array_key_exists($rp, $pages)) {
	
	include_once $dir . $pages['404'] . ".php";

} else {
	
	include_once $dir . $pages[$rp] . ".php";
	
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Precisa trabalhar um pouco mas na lógica deste script mano.

esta uma solução bem simples, que ainda não e a ideal. mas serve como base para aprimorar.

espero ter ajudado!!

<?php

$rp		= $_GET['rP'];

$dir	= './pages/';

$pages	= [
	'inicio' => '1',
	'contato' => '2',
	'404' => '404'
];

if (empty($rp)) {
	
	include_once $dir . $pages['inicio'] . ".php";
	
} elseif (!array_key_exists($rp, $pages)) {
	
	include_once $dir . $pages['404'] . ".php";

} else {
	
	include_once $dir . $pages[$rp] . ".php";
	
}

não intendo bem esses sintax :( queria usar o meu padrão mesmo; tou bem acostumado :/

mais agradeço pela atenção :D se puder me passa onde posso aprende sobre o mesmo ficarei mais grato :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já que você tem valores fixos do seu $_GET['rP'], o switch vai te ajudar porque você para cada condição inclui a pagina especifica e caso nenhuma das condições citadas não coincidir, o script direciona para a pagina default que pode ser a sua 404.

<?php
$pagina = $_GET['rP'];

switch($pagina ){
case '1':
include("pagina1.php");
break;
case '2':
include("pagina2.php");
break;
default:
include("erro404.php");
break;
}
?>

O metodo que o amigo fez acima é parecido com este, a diferença é que ele utilizou arrays para fazer essa mesma verificação que te mostrei acima.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já que você tem valores fixos do seu $_GET['rP'], o switch vai te ajudar porque você para cada condição inclui a pagina especifica e caso nenhuma das condições citadas não coincidir, o script direciona para a pagina default que pode ser a sua 404.

<?php
$pagina = $_GET['rP'];

switch($pagina ){
case '1':
include("pagina1.php");
break;
case '2':
include("pagina2.php");
break;
default:
include("erro404.php");
break;
}
?>

O metodo que o amigo fez acima é parecido com este, a diferença é que ele utilizou arrays para fazer essa mesma verificação que te mostrei acima.

Ta funcionando da mesma forma do que mandei; se eu coloca como default ao acessa www.meuprojeto.com ele mostra o erro404, mais se eu acessar www.meuprojeto.com/inicio ou www.meuprojeto.com/?rP=inicio mostra a pagina mais o problema que nem todo mundo acessaria por esses que acima citei e sim pelo www.meuprojeto.com :) intendeu oque quero fazer ^^ e se não existir um chamado para um certa pagina exemplo: www.meuprojeto.com/exemplo, ele vá direto para a 404, caso exista ele vá a pagina existente... e quando acessa www.meuprojeto.com ele mostre o inicio que ficará como default.

Agradeço a sua resposta, me ajudou a conhecer mais uma forma de trabalha com essa repartição de php :)

Deus te abençoe, t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode fazer de duas formas...

Mexer na configuração do servidor para que o servidor direcione para uma página a sua escolhe de acordo com o erro. Seja ele 404, 500, 403

Ou então

Utiliza um isset junto com o código que te passei.

Pesquise no manual do php: ISSET

Depois de pesquisado, acople ao código que te passei

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode fazer de duas formas...

Mexer na configuração do servidor para que o servidor direcione para uma página a sua escolhe de acordo com o erro. Seja ele 404, 500, 403

Ou então

Utiliza um isset junto com o código que te passei.

Pesquise no manual do php: ISSET

Depois de pesquisado, acople ao código que te passei

Acho que vou tenta no servidor mesmo pq nao sei mexer com PHP :3 e ISSET ainda novo pra min ^^

Agradeço Pela Atenção Que Deus O Abençoe :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por JoaoVituBR
      Olá. eu estou refazendo meu sistema de login só que eu me deparei com um problema e eu não estou conseguindo resolver!
      eu estou tentando fazer o callback na função de fora da pesquisa do mysql.

      Codigo:
      socket.on('auth_login', (data, callback) => { if (!data['user']) callback('user_fail'); if (!data['pass']) callback('pass_fail'); var Query = "SELECT * FROM usuarios WHERE user = ? OR email = ?" mysql.query(Query, [data['user'], data['user']], function(error, results) { if (error) return console.log(error); // [...] callback('value'); // [...] }); }); Quando eu dou callback dentro do mysql.query está dando o erro: this._callback.apply is not a function
      Obrigado!
    • Por André Severino
      Boa tarde,
       
      Guys eu criei a integração com o PagSeguro e o sistema do meu cliente, nesse momento utilizei a minha conta do PagSeguro, enfim tudo certo no sandbox. 
       
      Agora que o cliente aprovou a integração eu criei uma conta para ele no PagSeguro e estou configurando os dados da nova conta do cliente no meu sistema, e mesmo informando o token,appid e appkey e o e-mail dele estou recebendo o erro de página não encontrada após digitar a senha do comprador de teste gerado pelo pagseguro(logar), a ação correta seria o pagseguro redirecionar para a tela de pagamento após o login, mas ele retorna um erro de página não encontrada, conforme a print em anexo
       
      O link de erro na imagem é https://sandbox.pagseguro.uol.com.br/checkout/v2/pre-approvals/nc/sender-login-confirmed.jhtml?t=5cbdacfbd3c99de5bf66e92af9859d8a
       
      Alguém já passou por isso ? Sabe como posso resolver esse problema, pois tentei postar um tópico na comunidade do pagseguro e faz mais de 1 semana que não obtive nenhuma resposta :(
       
      Obrigado
       

    • Por B4RCODE
      Fala ae galera, o seguinte, fiz um simples php, de geolocation, tem um porém kkk, quero assim, quando o cara acessa o site sem pesquisar ip nenhum aparece o ip padrão dele como já esta, mas caso ele acesse e bote na area de pesquisar ip um certo ip e ele clicar em pesquisar, ele vai pesquisar tal ip, e não sei como fazer isto, se puderem me ajudar, desde já agradeço, segue abaixo o codigo, eu sei que o codigo tem um monte de gambiarra mas depois arrumo, o importante é ser funcional kk.
       
      <title>PEGADOR DE IP</title> <head> <style> body{ background-color: #34495e; } body { color: fff; } .startcheck{ background-color: #55C34D; border: none; resize: none; outline: none; width: 250px; height: 25px; color: white; } .listcc{ width: 300px; height: 40px; background-color: #353C3E; border: none; outline: none; resize: none; color: white; text-align: center; } #dados { width: 400px; margin: 0 auto; border: 1px solid #000; text-align: center; } #dados ul { margin: 0; padding: 0; list-style: none; } #dados ul li { padding: 5px 5px; } #dados p { text-align: center; } </style> </head> <br> <center><input type="text" class="listcc" class="text" placeholder="PESQUISAR IP"></center> <br> <center><input type="submit" value="PESQUISAR" class="startcheck"></center><br><br><br> <?php header("Content-type: text/html; charset=utf-8"); //Seta o padrão como utf-8 error_reporting(0); //Bloqueia o sistema de mostrar algum erro inutil //Inicio Vars $user_ip = getenv('REMOTE_ADDR'); //Vai Puxar o ip do usuario $geo = unserialize(file_get_contents("http://www.geoplugin.net/php.gp?ip=$user_ip")); //Entra no site e puxa os dados $city = $geo["geoplugin_city"]; //Vai puxar a cidade $region = $geo["geoplugin_regionName"]; //Vai puxar o estado $country = $geo["geoplugin_countryName"]; //Vai puxar o país $browser =$_SERVER['HTTP_USER_AGENT']; //Vai puxar o navegador date_default_timezone_set('America/Sao_Paulo'); //Vai definir a hora padrão de São paulo - America $data =date("Y-m-d"); //Vai puxar a data $hora =date("H:i:s"); //Vai puxar a hora $useragent = $_SERVER['HTTP_USER_AGENT']; //Vai puxar o navegador utilizado if (preg_match('|MSIE ([0-9].[0-9]{1,2})|',$useragent,$matched)) { $browser_version=$matched[1]; $browser = 'IE'; } elseif (preg_match( '|Opera/([0-9].[0-9]{1,2})|',$useragent,$matched)) { $browser_version=$matched[1]; $browser = 'Opera'; } elseif(preg_match('|Firefox/([0-9\.]+)|',$useragent,$matched)) { $browser_version=$matched[1]; $browser = 'Firefox'; } elseif(preg_match('|Chrome/([0-9\.]+)|',$useragent,$matched)) { $browser_version=$matched[1]; $browser = 'Chrome'; } elseif(preg_match('|Safari/([0-9\.]+)|',$useragent,$matched)) { $browser_version=$matched[1]; $browser = 'Safari'; } else { // browser not recognized! $browser_version = 0; $browser= 'other'; } //Fim Vars ?> <div id="dados"> <ul> <li>IP: <?php echo $user_ip; ?></li> <li>CIDADE: <?php echo $city; ?></li> <li>ESTADO: <?php echo $region; ?></li> <li>PAÍS: <?php echo $country; ?></li> <li>NAVEGADOR: <?php echo $browser; ?></li> <li>DATA: <?php echo $data; ?></li> <li>HORA: <?php echo $hora; ?></li>  
    • Por gabrieldarezzo
      Salve galera.
       
       
      Alguem sabe uma maneira de listar todas as urls de um site:
       
       
      Ex: se no google eu utilizar a técnica:
      site:http://meusite.com.br/ Ele vai listar varias paginas indexadas.
       
       
      Queria isto de uma maneira mais agressiva / automatizada.
      Seria para entender melhor a estrutura do site.
       
      Abraços.
       
    • Por gabrieldarezzo
      Olá pessoal,
      alguém já enfrentou esse erro no composer?
       
       
      composer.json:
      { "repositories": [ { "type": "git", "url": "https://github.com/gabrieldarezzo/colorizzar" } ], "require": { "gabrieldarezzo/colorizzar": "dev-master" } }  
      Executo o composer update e....
      [UnexpectedValueException] Error while installing gabrieldarezzo/colorizzar, composer-plugin packages should have a class defined in their extra key to be usable. ------
       
      E ao mesmo tempo se eu tento uma abordagem como:
      composer require gabrieldarezzo/colorizzar:"*" Me retorna esse erro:
      Problem 1 - The requested package gabrieldarezzo/colorizzar * is satisfiable by gabrieldarezzo/colorizzar[dev-master] but these conflict with your requirements or minimum-stability.  
       
      Basicamente quero puxar um package do packagist.
      https://packagist.org/packages/gabrieldarezzo/colorizzar
       
      composer.json atual do projeto:
      { "name": "gabrieldarezzo/colorizzar", "description": "Change the colors of an image from RGB you want", "license": "MIT", "type": "composer-plugin", "keywords": ["image", "gd", "rgb", "color", "alpha"], "homepage": "https://github.com/gabrieldarezzo/colorizzar", "authors": [ { "name": "Gabriel Darezzo", "email": "darezzo.gabriel@gmai.com", "homepage": "https://inwork.com.br" } ], "minimum-stability": "dev", "require": { "php": ">=5.3.0" }, "require-dev": { "phpunit/phpunit": "5.5.7" }, "autoload": { "psr-0": { "Colorizzar": "src/" } } }  
      Url direta do github:
      https://github.com/gabrieldarezzo/colorizzar
       
       
      Qualquer luz será bem vinda haha.
       
×

Informação importante

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