Hola!!
Bueno domingo a todos :)
Tengo un problema bastante sencillo pero parece ser que ando algo seco :/
Les explico un poco:
Tengo 1 tabla llamada inmuebles_renta_rooms la cual tiene los campos recamara_id, irid, bano, armario, etc... donde recamara_id es el identificador de cada recamara y irid que es el identificador de la propiedad.
Ahora, lo que pasa es que necesito modificar todas las recamaras que existan con X irid para lo cual tengo el siguiente código
$rooms = mysql_query("SELECT * FROM inmuebles_renta_rooms WHERE irid = '$irid' ORDER BY recamara_id");
if(!$rooms){
print("No hay habitaciones registradas con ese irid(<b>$irid</b>)\n");
}else{
$room = mysql_fetch_array($rooms);
$recamaras = mysql_num_rows($rooms); // 6
$r_recamaras = $recamaras;
$turno = 1;
if($recamaras >= $turno){
$unic_room = mysql_fetch_array(mysql_query("SELECT * FROM inmuebles_renta_rooms WHERE irid = '$irid' AND recamara_id = '".$room['recamara_id']."'"));
echo '<form action="action.php?a=renta&modify&step2&irid='.$_GET['irid'].'&roomId='.$room['recamara_id'].'" method="POST" >';
echo '<table bgcolor="#D5FAFD" align="center">';
{
echo '<tr><td> Baño </td><td><select name="bano">';
echo '<option>'.$unic_room['bano'].'</option>';
echo '<option>Si</option><option>No</option></select></td></tr>';
}
{
echo '<tr><td> Armario </td><td><select name="armario">';
echo '<option>'.$unic_room['armario'].'</option>';
echo '<option>Sin armario</option><option>Chico</option><option>Mediano</option><option>Muy Grande</option></select></td></tr>';
}
{
echo '<tr><td> Television </td><td><select name="television">';
echo '<option>'.$unic_room['television'].'</option>';
echo '<option>Sin television</option><option>Normal</option><option>Plasma / LCD</option></select></td></tr>';
}
{
echo '<tr><td> Tipo de Cama </td><td><select name="cama">';
echo '<option>'.$unic_room['tipo_cama'].'</option>';
echo '<option>Sin cama</option><option>Individual</option><option>Doble</option><option>Matrimonial</option><option>Doble Matrimonial</option><option>King Size</option></select></td></tr>';
}
{
echo '<tr><td> Aire Acondicionado </td><td><select name="aa">';
echo '<option>'.$unic_room['aire_acondicionado'].'</option>';
echo '<option>Si</option><option>No</option></select><br /></td></tr>';
}
echo '<tr><td colspan="2"><p align="right"><input type="submit" value=" Continuar " name="submit" /></p></td></tr>';
echo '</table></form>';
echo '<h1>faltan: '.$recamaras.' recamaras a registrar</h1>';
if(isset($_POST['submit'])){
$step2 = new inmuebles;
$step2 -> doModificaRentaStep2( $irid, $_POST['bano'], $_POST['armario'], $_POST['television'], $_POST['cama'], $_POST['aa'], $_GET['roomId']);
$turno++;
$r_recamaras--;
}
}
Como podrán ver este script muestra el formulario donde se harán los cambios y muestra los valores originales que ya estaban guardados en la tabla.
Supongamos que son 6 recamaras, HAB1 = 40, HAB2 = 42, HAB3 = 43, HAB4 = 46, HAB5 = 47 y HAB7 = 48. (Notese que HAB2 no es 41, es 42 (a lo que voy con esto es que HAB1++ no me serviria ya que sería 41 y 41 no existe)).
El problema que tengo es que no se como hacerle para que una vez actualizado la primera recamara(HAB1) $room['recamara_id'] ahora sea = HAB2, ya que en mi script $room['recamara_id'] siempre es 40 y siempre modifico la fila con recamara_id = 40 :(
*Pense en usar un foreach para guardar en un array cada id con un identificador numero pero $room['recamara_id'] "is not a valid recourse".
*También pensé en usar un while, pero esto haria que se mostraran todos los formularios de las diferentes recamaras en vez de 1 en 1 y es justo lo que no quiero.
Alguna idea?
Muchas gracias :D
Hola,
Podrías cambiar el code para que en vez de [code]codigo...[/code] use [code=php][/code].. lo digo porque se hace muy pesado leer el código así (no coloreado y con lineas demasiado largas..).
A lo que vamos..
He entendido que quieres modificar "paso a paso" todas las $room['recamara_id'].
Para eso, podrías hacer algo tipo paginacion.
Me explico:
Obtienes un parámetro GET que podría ser $_GET['recamara_id']. Si dicho parámetro no existe, lo defines como el primer resultado que pillas con la primera consulta que haces en ese código.
Luego, haces un while que obtenga todas las recamara_id que haya en la base de datos MENOS el que tienes actualmente. Escoges la siguiente opción y vas cambiándolas. Debes hacer un while. Foreach no funciona con mysql_fetch_array ni nada de eso.
Si necesitas mas explicación o un ejemplo practico solo avisa :)
Saludos
Cita de: drvy | BSM en 19 Marzo 2012, 20:26 PM
Hola,
Podrías cambiar el code para que en vez de [code]codigo...[/code] use [code=php][/code].. lo digo porque se hace muy pesado leer el código así (no coloreado y con lineas demasiado largas..).
A lo que vamos..
He entendido que quieres modificar "paso a paso" todas las $room['recamara_id'].
Para eso, podrías hacer algo tipo paginacion.
Me explico:
Obtienes un parámetro GET que podría ser $_GET['recamara_id']. Si dicho parámetro no existe, lo defines como el primer resultado que pillas con la primera consulta que haces en ese código.
Luego, haces un while que obtenga todas las recamara_id que haya en la base de datos MENOS el que tienes actualmente. Escoges la siguiente opción y vas cambiándolas. Debes hacer un while. Foreach no funciona con mysql_fetch_array ni nada de eso.
Si necesitas mas explicación o un ejemplo practico solo avisa :)
Saludos
Me ha quedado perfecto ;) Muchas gracias, creo que solo necesitaba un poco de creatividad :D
De verdad muchas gracias :D