Foros del Web » Programando para Internet » PHP »

error 404

Estas en el tema de error 404 en el foro de PHP en Foros del Web. Hola que tal, lo que trato de hacer es que se muestre un error 404 en una pagina que tiene variables por ejemplo: http;//miweb.com/page.php?id=xxx-xxx-xxx El ...
  #1 (permalink)  
Antiguo 16/04/2012, 11:59
 
Fecha de Ingreso: agosto-2009
Mensajes: 292
Antigüedad: 15 años, 3 meses
Puntos: 5
error 404

Hola que tal, lo que trato de hacer es que se muestre un error 404 en una pagina que tiene variables por ejemplo: http;//miweb.com/page.php?id=xxx-xxx-xxx

El id se saca de una base de datos y si no se encuentran resultados en la base de datos quiero se se produzca un error 404 y lo he intentado de esta manera

Código PHP:
Ver original
  1. if(!mysql_fetch_assoc($pages)) {
  2. header("HTTP/1.0 404 Not Found");
  3. }

Y si accedo con un id de la pagina que no existe me muestra la pagina sin ningún error ni tampoco ningún resultado.

Si alguien me pudiera ayudar se lo agradecería bastante.

Saludos.
  #2 (permalink)  
Antiguo 16/04/2012, 14:07
Avatar de cuasatar  
Fecha de Ingreso: junio-2011
Ubicación: Bogotá Rock City
Mensajes: 1.230
Antigüedad: 13 años, 4 meses
Puntos: 181
Respuesta: error 404

Si no encuentras ningún registro simplemente redirecciona con un location a la pagina que quieres que sea la pagina de error por defecto.

Código PHP:
if(!mysql_fetch_assoc($pages)) { 
header('Location: error.php');

__________________
Blog de humor http://elcuasatar.net63.net/
  #3 (permalink)  
Antiguo 16/04/2012, 14:35
 
Fecha de Ingreso: agosto-2009
Mensajes: 292
Antigüedad: 15 años, 3 meses
Puntos: 5
Respuesta: error 404

Cita:
Iniciado por cuasatar Ver Mensaje
Si no encuentras ningún registro simplemente redirecciona con un location a la pagina que quieres que sea la pagina de error por defecto.

Código PHP:
if(!mysql_fetch_assoc($pages)) { 
header('Location: error.php');

Hola que tal cuasatar, gracias por responder, hace rato que estaba buscando por el internet encontré en un foro, comentaban que si redirecciona hacia pudieran haber pobremas con la penalizacion de google o algo así y la solución que daban era algo así

Código PHP:
Ver original
  1. header("HTTP/1.0 404 Not Found");
  2. header("Status: 404 Not Found");
  3. include("error/404.php");
  4. exit();

y lo intente pero no me sale nanda

Saludos y gracias de antemano
  #4 (permalink)  
Antiguo 17/04/2012, 09:25
Avatar de cuasatar  
Fecha de Ingreso: junio-2011
Ubicación: Bogotá Rock City
Mensajes: 1.230
Antigüedad: 13 años, 4 meses
Puntos: 181
Respuesta: error 404

¿Nos podrias mostrar que pusiste en tu código en 404.php?

Por otro lado lo de penalización es parte del SEO y del tema escasamente se lo que he leido por ahi, sin embargo hasta donde tengo entendido (y si es necesario que me corrijan los que saben) el error se presenta cuando tu al tener una pagina en google indexada ejemplo: www.mipagina/articulo.php?id=20 al tratar de acceder a ella no se encuentra dicho articulo porque de pronto lo borraste entonces eso genera desconfianza en la pagina y pierde posiciones. En ese caso si aplica usar una manera amigable de decirle al usuario que esa pagina no esta disponible.

Segun entiendo el caso que planteas es mostrar mensajes en caso de ids que no existen aun y que de pronto un usuario metiera manualmente. Yo te aconsejo que en esos casos simplemente creas un condicional donde en caso de no hallar resultados en la búsqueda simplemente le insertas un div con un mensaje donde se indica que no existe ninguna noticia con ese número.

Igual si sabes manejar un poco de apache podrias usar .htaccess para que te haga esa redirección de manera automática.
__________________
Blog de humor http://elcuasatar.net63.net/

Etiquetas: 404, sql, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:13.