Foros del Web » Programando para Internet » PHP »

Duda v.2?

Estas en el tema de Duda v.2? en el foro de PHP en Foros del Web. otra duda: Código PHP: $sql = "SELECT * FROM $seccion WHERE titulo LIKE '%" . $palabra . "%' " ;  $result = mysql_query ( $sql , $conexio ); if ( $row = mysql_fetch_array ( ...
  #1 (permalink)  
Antiguo 02/02/2003, 07:15
Avatar de WyLY  
Fecha de Ingreso: enero-2002
Ubicación: Cancun, México.
Mensajes: 506
Antigüedad: 22 años, 2 meses
Puntos: 6
Duda v.2?

otra duda:
Código PHP:
$sql="SELECT * FROM $seccion WHERE titulo LIKE '%".$palabra."%' "
$result=mysql_query($sql,$conexio);
if (
$row=mysql_fetch_array($result));
if (
$seccion==articulos) {
echo 
"articulos";
}
if (
$seccion==reportajes) {
echo 
"<div align=center>
  <p><font size=2 face=tahoma, arial, verdana>Resultados de la busqueda de 
    <b>$palabra</b>:</font></p>
  <table width=100% border=0 cellspacing=1 cellpadding=2 bgcolor=#003366>
    <tr> 
      <td bgcolor=#FFCC00> 
        <div align=center><font size=2 face=Verdana, Arial, Helvetica, sans-serif><img src=imagenes/iconspc/go.gif width=12 height=9><a href=reportaje.php?sec="
.$row["seccion"].">".$row["titulo"]."</a></font></div>
      </td>
    </tr>
  </table> 
</div><br><font face=tahoma size=2 color=black><a href=buscadorpc.php>Buscar Mas.</a></font>"
;
}
elseif(
$seccion==directorio) {
echo 
"<div align=center>
  <p><font size=2 face=tahoma, arial, verdana>Resultados de la busqueda de 
    <b>$palabra</b>:</font></p>
  <table width=100% border=0 cellspacing=1 cellpadding=2 bgcolor=#003366>
    <tr> 
      <td bgcolor=#FFCC00> 
        <div align=center><font size=2 face=Verdana, Arial, Helvetica, sans-serif><img src=imagenes/iconspc/go.gif width=12 height=9><a href=dir.php?sec="
.$row["seccion"].">".$row["titulo"]."</a></font></div>
      </td>
    </tr>
  </table> 
</div><br><font face=tahoma size=2 color=black><a href=buscadorpc.php>Buscar Mas.</a></font>"
;

Bueno este codigo me mostrara los resultados de una busqueda pero digamos que en alguna de las $secciones no se encontro nada? intente agregar un else pero no funcionar
muchas gracias de nuevo
__________________
I do techy stuff for a living and practice MMA with my dog... He always wins.
  #2 (permalink)  
Antiguo 02/02/2003, 14:41
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

¿Que pretende ser esto?
Código PHP:
if ($row=mysql_fetch_array($result)); 
tal como esta es lo mismo que:
Código PHP:
$row=mysql_fetch_array($result); 
Pero para lo que quieres tendria que ser:
Código PHP:
if ($row=mysql_fetch_array($result))
{
  
//el codigo que tienes
} else
{
  
//lo que quieres mostrar si no ha habido resultados

Aunque con el codigo que tienes solo muestras un resultado. Si quieres mostrar todos los resultados tienes que usar un while. Y en ese caso te es mejor comprobar el numero de resultados con mysql_num_rows().

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 02/02/2003, 15:24
Avatar de WyLY  
Fecha de Ingreso: enero-2002
Ubicación: Cancun, México.
Mensajes: 506
Antigüedad: 22 años, 2 meses
Puntos: 6
bueno pense en lo mismo antes de que me respondieras pero nada, acerca del else ya lo habia intentado, mira como quedo:
Código PHP:
$row=mysql_fetch_array($result);
if (
$seccion==articulos) {
echo 
"articulos";
}
if (
$seccion==reportajes) {
echo 
"<div align=center>
  <p><font size=2 face=tahoma, arial, verdana>Resultados de la busqueda de 
    <b>$palabra</b>:</font></p>
  <table width=100% border=0 cellspacing=1 cellpadding=2 bgcolor=#003366>
    <tr> 
      <td bgcolor=#FFCC00> 
        <div align=center><font size=2 face=Verdana, Arial, Helvetica, sans-serif><img src=imagenes/iconspc/go.gif width=12 height=9><a href=reportaje.php?sec="
.$row["seccion"].">".$row["titulo"]."</a></font></div>
      </td>
    </tr>
  </table> 
</div><br><font face=tahoma size=2 color=black><a href=buscadorpc.php>Buscar Mas.</a></font>"
;
}
elseif(
$seccion==directorio) {
echo 
"<div align=center>
  <p><font size=2 face=tahoma, arial, verdana>Resultados de la busqueda de 
    <b>$palabra</b>:</font></p>
  <table width=100% border=0 cellspacing=1 cellpadding=2 bgcolor=#003366>
    <tr> 
      <td bgcolor=#FFCC00> 
        <div align=center><font size=2 face=Verdana, Arial, Helvetica, sans-serif><img src=imagenes/iconspc/go.gif width=12 height=9><a href=dir.php?sec="
.$row["seccion"].">".$row["titulo"]."</a></font></div>
      </td>
    </tr>
  </table> 
</div><br><font face=tahoma size=2 color=black><a href=buscadorpc.php>Buscar Mas.</a></font>"
;
}
mysql_close ($conexio); 
bueno, para que veas que no te miento ve:
http://www.portalcancun.com/buscadorpc.php
No eligas articulos por que no lo he programado, pero en el caso de reportajes o paginas, busca algo que sabes que no exista y veras que pasa, saludos y muchas gracias por su tiempo.
__________________
I do techy stuff for a living and practice MMA with my dog... He always wins.
  #4 (permalink)  
Antiguo 02/02/2003, 15:49
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Yo a lo que refiero es hacer:
Código PHP:
if ($row=mysql_fetch_array($result))

{

if (
$seccion=='articulos') {

echo 
"articulos";

}

if (
$seccion=='reportajes') {

echo 
"<div align=center>

  <p><font size=2 face=tahoma, arial, verdana>Resultados de la busqueda de 

    <b>$palabra</b>:</font></p>

  <table width=100% border=0 cellspacing=1 cellpadding=2 bgcolor=#003366>

    <tr> 
      <td bgcolor=#FFCC00> 
        <div align=center><font size=2 face=Verdana, Arial, Helvetica, sans-serif><img src=imagenes/iconspc/go.gif width=12 height=9><a href=reportaje.php?sec="
.$row["seccion"].">".$row["titulo"]."</a></font></div>

      </td>

    </tr>

  </table> 
</div><br><font face=tahoma size=2 color=black><a href=buscadorpc.php>Buscar Mas.</a></font>"
;

}

elseif(
$seccion=='directorio') {

echo 
"<div align=center>

  <p><font size=2 face=tahoma, arial, verdana>Resultados de la busqueda de 

    <b>$palabra</b>:</font></p>

  <table width=100% border=0 cellspacing=1 cellpadding=2 bgcolor=#003366>

    <tr> 
      <td bgcolor=#FFCC00> 
        <div align=center><font size=2 face=Verdana, Arial, Helvetica, sans-serif><img src=imagenes/iconspc/go.gif width=12 height=9><a href=dir.php?sec="
.$row["seccion"].">".$row["titulo"]."</a></font></div>

      </td>

    </tr>

  </table> 
</div><br><font face=tahoma size=2 color=black><a href=buscadorpc.php>Buscar Mas.</a></font>"
;

}
} else

{

  
//lo que quieres mostrar si no ha habido resultados
  
echo "No se ha encontrado nada en la seccion $seccion";

}
mysql_close ($conexio); 
Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #5 (permalink)  
Antiguo 02/02/2003, 15:54
Avatar de WyLY  
Fecha de Ingreso: enero-2002
Ubicación: Cancun, México.
Mensajes: 506
Antigüedad: 22 años, 2 meses
Puntos: 6
Mensaje hay dios

aver aver aver segun comprendo el else no funcionaba por que no habia cerrado con un }?, dios no puede ser, la verdad no me di cuenta de la diferencia, gracias
__________________
I do techy stuff for a living and practice MMA with my dog... He always wins.
  #6 (permalink)  
Antiguo 02/02/2003, 20:22
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Para esa estructura de $variable .. e IF dependiendo de su valor .. mi voto va para:

switch .. case ...
http://www.php.net/manual/en/control...res.switch.php

Es mas facil de comprende q un monton de if .. else ... elseif ..
Incluso tienes el default: .. para definir un estado "si no es ninguno de los anteriores" por defecto de forma facil y comprensiva..

Un saludo,
  #7 (permalink)  
Antiguo 02/02/2003, 21:35
Avatar de WyLY  
Fecha de Ingreso: enero-2002
Ubicación: Cancun, México.
Mensajes: 506
Antigüedad: 22 años, 2 meses
Puntos: 6
Muy bueno, empezare a utilizar switch.
__________________
I do techy stuff for a living and practice MMA with my dog... He always wins.
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 06:27.