Foros del Web » Programando para Internet » PHP »

Problemas con consulta sql

Estas en el tema de Problemas con consulta sql en el foro de PHP en Foros del Web. Apenas iba a pedir ayuda para un problema que ya solucione, sin embargo, surgio otro. Primero, decir que estoy haciendo mi pagina a partir de ...
  #1 (permalink)  
Antiguo 02/02/2011, 05:26
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años
Puntos: 3
Problemas con consulta sql

Apenas iba a pedir ayuda para un problema que ya solucione, sin embargo, surgio otro.

Primero, decir que estoy haciendo mi pagina a partir de funciones que estan en otro archivo, tengo un index.php donde se muestra el contenido por medio del paso de parametros.

Ahora que hice este cambio, empece a tener problemas, primero que, al llamar la funcion, me mostraba el esqueleto de la funcion en texto plano (el error estaba en que no inclui en el bloque php, la palabra php al comienzo).

Cuando ya funciono, quice hacer pruebas con el login para ver si funcionaba bien y resulta que no. Una vez se da clic pongas bien o mal los datos, marca el error de que la consulta devuelve un booleano (en este caso $Q=$Usr->BuscarUsuario("",$nick);), pasa lo mismo con la funcion que crea el menu o menus a mostrar.

Aqui dejo el codigo y pues a ver si para mañana me dan una solucion, por ahora me voy a dormir que son las 5:25 am.

index.php

Código PHP:
Ver original
  1. <div id="cabecera">
  2.         <a href="index.php"><img src="imagenes/tituloventas.gif" alt="TITULO"></a> 
  3.         <div id="login">
  4.         <?php cabeceralogin();?>
  5.         </div>                                     
  6.     </div>
  7.    
  8.     <div id="menu">    
  9.         <?php menu();?>
  10.     </div>

funciones.php

Código PHP:
Ver original
  1. include('clases.php');
  2. function menu()
  3. {      
  4.     //echo "hola";
  5.     $objArticulo=new Articulo();
  6.     $Q=$objArticulo->ObtenerCategorias(); //por cada categoria se forma un menu principal
  7.                                             //y a partir de cada menu se forma su submenu, buscando los articulos que correspondan a esa categoria
  8.     echo '<ul>';
  9.     while($row=mysql_fetch_array($Q)) //$row contendra la categoria actual, por ejemplo juegos
  10.     {
  11.         $Q1=$objArticulo->CrearMenu($row[0]); //se crea el menu juegos por ejemplo
  12.         echo '<li>'.$row[0].'<ul>';
  13.         while($row1=mysql_fetch_array($Q1))
  14.         {
  15.             echo '<li>'.$row1[0].'</li>';
  16.         }
  17.         echo '</ul></li>';
  18.     }          
  19.     echo '</ul>';
  20. }
  21. function cabeceralogin()
  22. {                          
  23.     //if cuando se presiona boton de iniciar sesion
  24.     if(isset($_POST["entro"]))
  25.     {          
  26.         $nick=$_POST["nick"];
  27.         $pass=$_POST["pass"];
  28.         $Usr=new Usuario();
  29.         $Q=$Usr->BuscarUsuario("",$nick);
  30.         //echo $nick.$pass;
  31.        
  32.         if($row=mysql_fetch_array($Q))
  33.         {
  34.             if($row[1]==$pass)
  35.             {                          
  36.                 $_SESSION["nick"]=$row[0];
  37.                 $_SESSION["contraseña"]=$row[1];
  38.             }
  39.             else
  40.                 echo "<script type='text/javascript'>alert('La contraseña es incorrecta');</script>";
  41.             mysql_free_result($Q);
  42.         }              
  43.         else
  44.             echo "<script type='text/javascript'>alert('El nombre de usuario no existe');</script>";                   
  45.     }
  46.     //if cuando se presiona link de desconexion
  47.     if(isset($_GET["salir"]))
  48.     {  
  49.         if(isset($_SESSION["nick"]))
  50.             session_unset($_SESSION["nick"]);
  51.     }                  
  52.    
  53.     //si se ha iniciado sesion ($_SESSION["nick"] existe), entonces muestra la info de bienvenida, sino significa que no ha iniciado sesion y muestra el login de inicio de sesion
  54.     if(isset($_SESSION["nick"]))
  55.     {
  56.         echo '<div id="bordelogeado"><div id="logeado">Bienvenido <br><a class="nicklogin" href="pcu.php">'.$_SESSION['nick'].'</a><br><a href="index.php?salir=si">Desconectar</a></div></div>';
  57.     }
  58.     else{                              
  59.         echo '<form id="formlogin" action="index.php" method="post">
  60.         Usuario <input type="text" id="nick" name="nick" class="reducir2"> </br>
  61.         Contraseña <input type="password" id="pass" name="pass" class="reducir"></br>
  62.         <input type="hidden" id="entro" name="entro" value="si" class="centrar">
  63.         <input type="button" id="entrar" name="entrar" value="Entrar" class="centrar"></br></br>
  64.         <a href="registro.php">Reg&iacute;strate</a>
  65.         </form>';
  66.     }
  67. }
  #2 (permalink)  
Antiguo 02/02/2011, 07:43
 
Fecha de Ingreso: febrero-2005
Mensajes: 187
Antigüedad: 19 años, 2 meses
Puntos: 2
Respuesta: Problemas con consulta sql

Lo primero que te sugiero es devolver un valor y no imprimir desde la funcion, asi haces mas manipulable la informacion:


Código PHP:
function menu()
{      
    
//echo "hola";
    
$html "";
    
$objArticulo=new Articulo();

    
$Q=$objArticulo->ObtenerCategorias(); //por cada categoria se forma un menu principal

     //y a partir de cada menu se forma su submenu, buscando los articulos que correspondan a esa categoria

    
$html '<ul>';

    while(
$row=mysql_fetch_array($Q)) //$row contendra la categoria actual, por ejemplo juegos
    
{

        
$Q1=$objArticulo->CrearMenu($row[0]); //se crea el menu juegos por ejemplo
        
$html .= '<li>'.$row[0].'<ul>';

        while(
$row1=mysql_fetch_array($Q1))
        {
            
$html .= '<li>'.$row1[0].'</li>';
        }

        
$html .= '</ul></li>';

    }          
    
$html .= '</ul>';
     return 
$html;


Para imprimir lo haces asi:

Código PHP:
echo menu(); 
__________________
___________________________
Hosting y Dominios en colombia
Blog de Cubica
  #3 (permalink)  
Antiguo 02/02/2011, 09:07
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años
Puntos: 3
Respuesta: Problemas con consulta sql

Cita:
Iniciado por jossmorenn Ver Mensaje
Lo primero que te sugiero es devolver un valor y no imprimir desde la funcion, asi haces mas manipulable la informacion:


Código PHP:
function menu()
{      
    
//echo "hola";
    
$html "";
    
$objArticulo=new Articulo();

    
$Q=$objArticulo->ObtenerCategorias(); //por cada categoria se forma un menu principal

     //y a partir de cada menu se forma su submenu, buscando los articulos que correspondan a esa categoria

    
$html '<ul>';

    while(
$row=mysql_fetch_array($Q)) //$row contendra la categoria actual, por ejemplo juegos
    
{

        
$Q1=$objArticulo->CrearMenu($row[0]); //se crea el menu juegos por ejemplo
        
$html .= '<li>'.$row[0].'<ul>';

        while(
$row1=mysql_fetch_array($Q1))
        {
            
$html .= '<li>'.$row1[0].'</li>';
        }

        
$html .= '</ul></li>';

    }          
    
$html .= '</ul>';
     return 
$html;


Para imprimir lo haces asi:

Código PHP:
echo menu(); 
Ya lo hice pero sigue marcandome el mismo error.
  #4 (permalink)  
Antiguo 02/02/2011, 09:35
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años
Puntos: 3
Respuesta: Problemas con consulta sql

Problema corregido, era una tonteria.

Como cree nuevamente la base de datos, le puse otro nombre y no lo cambie en el archivo de conexion, ahi estaba el error.

Gracias y disculpen que los moleste con errores tontos.

Etiquetas: sql
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 14:53.