Comunidad de diseño web y desarrollo en internet online

Problema con script PHP

Citar            
MensajeEscrito el 05 Nov 2005 11:48 pm
Hola gente!

Bueno, les escribo para ver si me pueden ayudar con un script que estoy haciendo hace rato, que lo he desglozado, lo he probado pedazo por pedazo, pero al juntarlo todo sucede que al ejecutarlo se mete en un bucle infinito y me devuelve este mensaje:

SELECT piso FROM pisos WHERE Id_piso = 33SELECT epicco_ip FROM epiccos WHERE Id_epicco = 1 SELECT habitacion FROM habitacion WHERE Id_habitacion = 3 SELECT sector FROM sector WHERE Id_sector = 6 SELECT piso FROM pisos WHERE Id_piso =
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in d:\www\epicco\tree\testeo6.php on line 187

Y bueno, les dejo el script, para (si tienen tiempo) que lo lean, y vean en que me equivoque...

Código :

<?php

$conn = mysql_connect("localhost","root","andratx");

mysql_select_db("epicco",$conn);

$pisos = TomarPisos();

$indice_piso = count($pisos)-1;
echo '<?xml version="1.0"?>';
for($z = 0; z<= $indice_piso; $z++)
{
    $piso_name = TomarNombres($pisos[$z], 1);
    echo $pisos[$z];
    echo '<nodo label = "PISO'.$piso_name.'" indice = "'.$pisos[$z].'">';
    for($a = 0; $a <= $indice_piso; $a++){
        $epiccos = TomarEpiccos($pisos[$a]);

        $epicco_name = TomarNombres($epiccos[$a], 2);
echo '     <nodo label = "EPICCO'.$epicco_name.'" indice = "'.$epiccos[$a].'">';
        $indice_epicco = count($epiccos)-1;
        for($b = 0; $b <= $indice_epicco; $b++){
          $rooms = TomarRooms($epiccos[$b]);
          $room_name = TomarNombres($rooms[$b], 3);
echo '         <nodo label = "HABITACION'.$room_name[$b].'" indice = "'.$rooms[$b].'">';
          $indice_room = count($rooms)-1;
          for($c = 0; $c <= $indice_room; $c++){
            $sectores = TomarSector($rooms[$c]);
            $sector_name = TomarNombres($sectores[$c], 4);
echo '              <nodo label = "SECTOR'.$sector_name[$c].'" indice = "'.$sectores[$c].'">';
            $indice_sector = count($sectores)-1;
            for($d = 0; $d <= $indice_sector; $d++){
              $dispositivos = TomarDevice($sectores[$d]);

              $indice_device = count($dispositivos)-1;
                for($e = 0; $e <= $indice_device; $e++){
                    $tipo = TomarTipo($dispositivos[$e]);
                    echo '                   <nodo label = "'.$tipo.''.$devices[$d].'" indice = "'.$devices[$d].'"/>';

                    }
                    echo '              </nodo>';
                }
                echo '             </nodo>';
            }
            echo '             </nodo>';
        }
      }

      echo '             </nodo>';
    }


  function TomarPisos(){
     $x = 0;
    $ask = 'SELECT Id_piso FROM pisos';
    $consulta = mysql_query($ask);
    while($respuesta = mysql_fetch_array($consulta)){
        $resultado[$x] = $respuesta[0];
        $x = $x++;
    }
    return $resultado;
  }
  //Funcion que toma los Id_epicco para el Id_piso indicado...
  //Se ingresa el Id_piso del que se quiere obtener los Id_epicco...
  function TomarEpiccos($Id_piso){
     $x = 0;

    $ask = 'SELECT Id_epicco FROM epiccos WHERE piso = '.$Id_piso.'';
    $consulta = mysql_query($ask);
    while($respuesta = mysql_fetch_array($consulta)){
           $resultado[$x] =  $respuesta[0];
            $x = $x++;
    }
    return $resultado;
  }
    //Funcion que toma los Ids de habitacion para el epicco ingresado...
  //Se ingresa el Id_epicco del que se quiere obtener los Id_piso...
  function TomarRooms($Id_epicco){

     $x = 0;

    $ask = 'SELECT Id_habitacion FROM habitacion WHERE epicco = '.$Id_epicco.'';

    $consulta = mysql_query($ask);

    while($respuesta = mysql_fetch_array($consulta)){
            $resultado[$x] =  $respuesta[0];
            $x = $x++;
    }

    return $resultado;
  }
    //Funcion que toma los Ids de sector para la habitacion ingresada...
  //Se ingresa el Id_habitacion del que se quiere obtener los Id_habitacion...
  function TomarSector($Id_room){

    $x = 0;

    $ask = 'SELECT Id_sector FROM sector WHERE habitacion = '.$Id_room.'';

    $consulta = mysql_query($ask);

    while($respuesta = mysql_fetch_array($consulta)){
            $resultado[$x] =  $respuesta[0];
            $x = $x++;
    }

    return $resultado;
  }
   //Funcion que toma los Ids de dispositivo para el sector ingresado...
  //Se ingresa el Id_sector del que se quiere obtener los Id_dispositivo...
    function TomarDevice($Id_sector){

   $x = 0;

$ask = 'SELECT Id_dispositivos FROM dispositivos WHERE sector = '.$Id_sector.'';

    $consulta = mysql_query($ask);

    while($respuesta = mysql_fetch_array($consulta)){
            $resultado[$x] =  $respuesta[0];
            $x = $x++;
    }

    return $resultado;
  }
   function TomarTipo($id){

$ask = 'select dispositivo from dispositivos where Id_dispositivos = '.$id.'';

    $respuesta = mysql_query($ask);

   $resultado = mysql_fetch_array($respuesta);
   
    $result = $resultado[0];

   return $result;

  }
    function TomarNombres($id, $tabla){

    switch($tabla){
      case 1:

        $campo = "piso";

        $tabla = "pisos";

        $Id_tabla = "Id_piso";

      break;
      case 2:

        $campo = "epicco_ip";

        $tabla = "epiccos";

        $Id_tabla = "Id_epicco";

      break;
      case 3:

        $campo = "habitacion";

        $tabla = "habitacion";

        $Id_tabla = "Id_habitacion";

      break;
      case 4:

        $campo = "sector";

        $tabla = "sector";

        $Id_tabla = "Id_sector";

      break;
    }

$ask = 'SELECT '.$campo.' FROM '.$tabla.' WHERE '.$Id_tabla.' = '.$id.'';

$consulta = mysql_query($ask);

echo $ask;

$respuesta = mysql_fetch_array($consulta);

$resultado = $respuesta[0];

    return $resultado;

  }
?>


Espero no haberles causado mucha molestia, y gracias desde ya!!

Pablo

Por _pablito_

Claber

190 de clabLevel



Genero:Masculino  

Argentina

firefox
Citar            
MensajeEscrito el 06 Nov 2005 09:48 pm
Bueno, ya lo solucione... no tengo idea de cual era el error porque lo reprograme 3 veces hasta que anduvo. Y sinceramente no tengo ganas de ver cual era el error... jejeje... si en algun momento lo descubro lo posteo...

Por _pablito_

Claber

190 de clabLevel



Genero:Masculino  

Argentina

firefox
Citar            
MensajeEscrito el 07 Nov 2005 04:39 pm
Tu problema es que tenías esto:

Código :

$ask = 'SELECT Id_epicco FROM epiccos WHERE piso = '.$Id_piso.''; 


Cuando la adecuado era esto:

Código :

$ask = 'SELECT Id_epicco FROM epiccos WHERE piso = $Id_piso'; 


Los puntos dentro de la variable no eran necesarios por lo demás ya no revise, pues leí que ya lo habías solucionado... Eso considerando que $Id_piso es un entero...

Por Aoyama

BOFH

6224 de clabLevel

6 tutoriales
12 articulos

Genero:Masculino   Anime Bloggers Bastard Operators From Hell

Webdesigner & Developer, en mis ratos libres bebo café por litros.

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.