Ir al contenido


Foto

pasar parametro por url (pagina detalle)


  • Por favor identifícate para responder
4 respuestas en este tema

#1 nikos25

nikos25

    Newbie

  • Miembros
  • Pip
  • 7 mensajes

Escrito 17 julio 2014 - 04:08

Hola amigos, queria ver si me podian ayudar en esto: tengo una pagina php que hace un listado de todas las noticas de una bd, en cada una de ellas hay un link del tipo noticias.php?cod_noticia=1, que me lleva a una pagina detallenoticia.php.

Ahora, hago uso de una variable get, con la cual recogo en la pagina detallenotica.php el id de la noticia, y muestro la notica a full, me funciona bien, pero mi problema es:

si yo en la barra de navegacion, cambio el cod_noticia=1, y coloco cualquier numero, por ejemplo 8, y no tengo esa noticia, quiero hacer que muestre un mensaje o redireccione, o sea que si modifican el id, y si ese numero no tiene contenido, que rediriga o muestre un mensaje.

probe hacer una condicional asi if(!empty($_get['cod_aviso'])){codigo de conexion, foreach para mostrar filas,etc}
y no me funciona

Agradeceria si alguien me puede ayudar, debe ser una tontera pero no doy con la solucion, estoy trabajando con PDO..

Saludos y gracias

Pagina detallenoticia.php


php
  1. <?php
  2.  
  3. /*error_reporting(E_ALL ^ E_NOTICE);*/
  4. require ('crud/conexionDB.php');
  5. require ('crud/funcionesCrud.php');
  6.  
  7.  
  8.  
  9. if($_GET['cod_aviso']){
  10. /*echo "cargar la consulta";*/
  11. $cod_aviso= $_GET['cod_aviso'];
  12. $modelo= new Operaciones;
  13. $modelo->select='*';
  14. $modelo->from='avisos';
  15. $modelo->condition= "cod_aviso= $cod_aviso";
  16. $modelo->Seleccionar();
  17. $filas=$modelo->rows;
  18.  
  19. foreach($filas as $fila)
  20. {
  21. $cod_aviso=$fila['cod_aviso'];
  22. $comuna=$fila['comuna'];
  23. $titulo_aviso=$fila['titulo_aviso'];
  24. $categoria_aviso=$fila['categoria_aviso'];
  25. $valor_producto=$fila['valor_producto'];
  26. $aviso=$fila['aviso'];
  27. $nombre=$fila['nombre'];
  28. $tel_celular=$fila['tel_celular'];
  29. $tel_fijo=$fila['tel_fijo'];
  30. $correo_electronico=$fila['correo_electronico'];
  31. $direccion=$fila['direccion'];
  32. }
  33. }else{
  34. echo "redirigir porque no existe cod_aviso";
  35. }



php de la pagina noticias.php (litsado de todas las noticias)


php
  1. require ('crud/conexionDB.php');
  2. require ('crud/funcionesCrud.php');
  3.  
  4.  
  5.  
  6.  
  7. $modelo= new Operaciones;
  8. $modelo->select='*';
  9. $modelo->from='avisos';
  10. /*$modelo->condition='cod_aviso= $cod_aviso';*/
  11. $modelo->Seleccionar();
  12. $filas=$modelo->rows;
  13.  
  14. $total_avisos=count($filas);


  • 0

#2 Delphius

Delphius

    Advanced Member

  • Administrador
  • 6.295 mensajes
  • LocationArgentina

Escrito 17 julio 2014 - 06:00

Hola niko25,
No te puedo dar una mano en PHP, lamentablemente.
Te informo que edité tu post para corregir el etiquetado php. Puedes usarlo de 2 formas:

[nobbc]


php
  1. tu script php


[/nobbc]
[nobbc]

tu script php

[/nobbc]

Saludos,
  • 0

#3 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 17 julio 2014 - 06:37

Hola, lo mas logico en toda consulta a bases de datos es verificar que devuelva datos, por ejemplo:



php
  1. $noticia = int $_REQUEST['cod_noticia'];
  2. $query = mysql_query("select * from noticias where noti_id = " . $noticia);
  3. $total = mysql_num_rows($query);
  4.  
  5. if ($total > 0)
  6. {
  7.   //mostramos la noticia
  8. } else {
  9.   //mostramos el aviso que no existe contenido con ese id
  10. }



Con eso tienes una idea y la aplicas a tu codigo.

Saludos.
  • 0

#4 nikos25

nikos25

    Newbie

  • Miembros
  • Pip
  • 7 mensajes

Escrito 17 julio 2014 - 07:07

Hola, lo mas logico en toda consulta a bases de datos es verificar que devuelva datos, por ejemplo:



php
  1. $noticia = int $_REQUEST['cod_noticia'];
  2. $query = mysql_query("select * from noticias where noti_id = " . $noticia);
  3. $total = mysql_num_rows($query);
  4.  
  5. if ($total > 0)
  6. {
  7.   //mostramos la noticia
  8. } else {
  9.   //mostramos el aviso que no existe contenido con ese id
  10. }



Con eso tienes una idea y la aplicas a tu codigo.

Saludos.


muchas gracias estimado, justamente me estaba saltando ese paso, novato que mas....gracias por la ayuda...saludos cordiales
  • 0

#5 nikos25

nikos25

    Newbie

  • Miembros
  • Pip
  • 7 mensajes

Escrito 17 julio 2014 - 07:08

Hola niko25,
No te puedo dar una mano en PHP, lamentablemente.
Te informo que edité tu post para corregir el etiquetado php. Puedes usarlo de 2 formas:

[nobbc]


php
  1. tu script php


[/nobbc]
[nobbc]

tu script php

[/nobbc]

Saludos,


muchas gracias estimado, consulta resuelta...
  • 0




IP.Board spam blocked by CleanTalk.