Foros del Web » Programando para Internet » PHP »

Problema if ($result)

Estas en el tema de Problema if ($result) en el foro de PHP en Foros del Web. Hola ! amigos soy nuevo en la comunidad ! pues bueno tengo un pequeño problema.. el cual es que eh creado un buscador en mi ...
  #1 (permalink)  
Antiguo 11/02/2009, 14:03
 
Fecha de Ingreso: febrero-2009
Mensajes: 3
Antigüedad: 15 años, 2 meses
Puntos: 0
Problema if ($result)

Hola ! amigos soy nuevo en la comunidad ! pues bueno tengo un pequeño problema.. el cual es que eh creado un buscador en mi bd.. pues y que bien que me busca, mi problema es este.. cuando el resultdo de busqueda no se encuentra en la bd no me vota nada..y quisiera que me bote un resultado diciendo.. que "nose encontro ningun registro" o alguna frase parecida.. pues este es mi codigo..

Código PHP:
<?php
                    $buscar
=$_REQUEST['name'];        
                    
//$base = "moncada_db";
                    //$conec = mysql_connect("localhost","root","");
                    
$tabla "yacht";
                    
mysql_select_db("mhispania",$searchcn);
                    
$result mysql_query("Select * from $tabla where nameYacht like '%$buscar%' order by idYacht",$searchcn);
                    
?>
                    <ul class="trescol">
                    <?php 
                    
while($row=mysql_fetch_array($result))
                    {
                    
?>
                    <li>
                    <div id="recuadro">
                    <div id="image"><a href="#" title="<?php echo $row[nameYacht?> - Moncada Hispania Yachts"><img src="<?php echo $row[imageYacht]?>"  width="193" height="135" border="0" onclick="ventanaNueva('for-charter/moncada-hispania-yachts-<?php echo $row[idYacht]?>.php', 750, 600,'ventana<?php echo $row[idYacht]?>moncada','scrollbars=1')"/></a></div>

                    <div id="recuadro-details">
                    <span class="name-yachts"><?php echo $row[nameYacht?></span>
                    <span class="details-yachts"><a href="#" onclick="ventanaNueva('for-charter/moncada-hispania-yachts-<?php echo $row[idYacht]?>.php', 750, 600,'ventana<?php echo $row[idYacht]?>moncada','scrollbars=1')">View Details</a></span>
                    </div>    
                    </div>
                    </li>
                    <?php 
                    
}
                    
?>
Necesito ayuda urgente !
  #2 (permalink)  
Antiguo 11/02/2009, 14:06
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Problema if ($result)

Hola drxeme,

Usa mysql_num_rows() para validar la cantidad de filas que te devuelve, si es igual a 0, entonces no hay resultados y puedes validar.

Saludos
  #3 (permalink)  
Antiguo 11/02/2009, 14:09
 
Fecha de Ingreso: febrero-2009
Mensajes: 3
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Problema if ($result)

GatorV , gracias por la respuesta pero como iria eso en el codigo.. realmente nose donde colocarlo o como colocarlo eh ahi mi problema soy nuevo en php y estoy aprendiendo por eso mi pregunta..!
  #4 (permalink)  
Antiguo 11/02/2009, 14:14
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Problema if ($result)

Con un if (pseudocódigo):

if( las_filas_son_cero() ) {
imprimir_mensaje_no_filas()
} else {
desplegar_resultados()
}

Saludos
  #5 (permalink)  
Antiguo 11/02/2009, 14:14
Avatar de rodno  
Fecha de Ingreso: enero-2009
Ubicación: En algun lugar de Cuba
Mensajes: 426
Antigüedad: 15 años, 2 meses
Puntos: 43
De acuerdo Respuesta: Problema if ($result)

Como dice GastorV,

Cojes
Código PHP:
if (mysql_num_rows($result)==0)
echo 
"No se encontro nada"
else
{
//Escribes el resultado


Cuando trabajes con consultas verifica si la consulta se ejcuto bien, para que no te muestre errores el mysql
  #6 (permalink)  
Antiguo 11/02/2009, 14:23
 
Fecha de Ingreso: febrero-2009
Mensajes: 3
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Problema if ($result)

Listo amigo.:! Muchas gracias..! estube probando y recien acabo de recordar que en php se pone doble "=" para igual ^^
pero tambien lo hice de esta forma..

if (mysql_num_rows($result)<1)
echo "No se encontro nada"
else
{
//Escribes el resultado

}
y me salio
:)

Saludos Gracias..!
  #7 (permalink)  
Antiguo 12/02/2009, 06:22
 
Fecha de Ingreso: febrero-2009
Ubicación: Santa fe
Mensajes: 16
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Problema if ($result)

A mi nunca me anduvo esa funcion (mysql_num_rows($result)), tuve que hacer algo mas loco... Pero me gustaria saber porque a mi no me andubo...


Código php:
Ver original
  1. $query = "SELECT * FROM animes WHERE 1=1 ";
  2.     if(empty($tituloB))
  3.         {   if(empty($generoB)) { message('vacio',"");
  4.             //echo "No se ha ingresado una cadena a buscar";
  5.             } else {
  6.             //titulo vacio genero no
  7.                 if($tituloB or $generoB) $query.= " and genero LIKE '$generoB'";           
  8.                 $sql= $conexionA->Execute($query);
  9.                 foreach ($sql as $res)
  10.                 {
  11.                  setAll($res,"listAnime");
  12.                 }
  13.         $find= (int) buscar($sql);
  14.         limpio($tituloB,$generoB);
  15.         if($find==0) message('buscar',$tituloB);



y el setAll hace lo siguiente:

function setAll($ar,$blo)
{

foreach($ar as $clave=>$valor)
{
set_var($clave,$valor);

}

parse($blo);

}

y el buscar lo siguiente, es lo mismo que el de arriba pero con un contador :S:

function buscar($add){

foreach ($add as $res)
{
//setAll($res,"listAnime");
$cont++;
}
return $cont;

}
  #8 (permalink)  
Antiguo 12/02/2009, 12:22
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Problema if ($result)

Pues a lo mejor el problema es que estas usando una libreria aparte de las funciones nativas de mysql, por lo que vas a tener que ver si la libreria que usas tiene el soporte para darte el numero de filas.

Saludos
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 09:55.