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