Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] Ocultar un div si no existen registros.

Estas en el tema de Ocultar un div si no existen registros. en el foro de Javascript en Foros del Web. Estoy intentando ocultar un div sin no existe ningún registro, pero no se como hacerlo. Por favor podeis ayudarme: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código Javascript : Ver ...
  #1 (permalink)  
Antiguo 10/05/2013, 16:51
Avatar de satjaen  
Fecha de Ingreso: septiembre-2012
Ubicación: Jaén (Andalucía)
Mensajes: 893
Antigüedad: 11 años, 8 meses
Puntos: 10
Ocultar un div si no existen registros.

Estoy intentando ocultar un div sin no existe ningún registro, pero no se como hacerlo. Por favor podeis ayudarme:

Código Javascript:
Ver original
  1. <script>
  2. function esconderDiv(){
  3.    
  4.         var eldiv=document.getElementById('div_3');
  5.        if(eldiv.innerHTML == ""){
  6.               eldiv.style.display = none;
  7.        
  8. }
  9. }
  10.  
  11. </script>  
  12. </head>
  13. <body onload="esconderDiv();">
  14.            
  15. <div id="div_3">
  16.  
  17. <ul data-role="listview" data-divider-theme="b" data-inset="true">
  18. <li data-role="list-divider" role="heading">[<?php echo $row_Recordset1['tecnico']; ?>]</li>
  19. <?php do { ?>
  20. <?php
  21.  
  22.  
  23. $fecha1 = strtotime($row_Recordset4['hora_entrada']);
  24. $fecha2 = strtotime($row_Recordset4['hora_salida']);
  25.  
  26. $diferencia_minutos = ($fecha2-$fecha1)/60;$min = ($fecha2-$fecha1)/60;  
  27.  
  28. ?>
  29. <li data-role="list-divider" role="heading"><?php echo $row_Recordset4['fecha']; ?></li>
  30. <li data-theme="c">
  31. De&nbsp;<?php echo $row_Recordset4['hora_entrada']; ?>&nbsp;a&nbsp;<?php echo $row_Recordset4['hora_salida']; ?><span class="ui-li-count"><?php echo ceil($diferencia_minutos);  ?>&nbsp;minutos</span></li>
  32. <?php } while ($row_Recordset4 = mysql_fetch_assoc($Recordset4)); ?>
  33.  
  34.  
  35.  
  36.                                   </ul>
  37.  
  38. </div>

Muchas gracias
  #2 (permalink)  
Antiguo 10/05/2013, 17:29
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Ocultar un div si no existen registros.

Sí el div contiene otras etiquetas su innerHTML nunca va a ser ""
simplemente sí la consalta no arroja resultados dale un valor a una variable y antes del cierre del body según ese valor le das display none al div. Además podés efectuar el while solo sí hay resultados ni habría porque generar el div y su contenido.
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #3 (permalink)  
Antiguo 10/05/2013, 17:56
Avatar de satjaen  
Fecha de Ingreso: septiembre-2012
Ubicación: Jaén (Andalucía)
Mensajes: 893
Antigüedad: 11 años, 8 meses
Puntos: 10
Respuesta: Ocultar un div si no existen registros.

Cita:
Iniciado por emprear Ver Mensaje
Sí el div contiene otras etiquetas su innerHTML nunca va a ser ""
simplemente sí la consalta no arroja resultados dale un valor a una variable y antes del cierre del body según ese valor le das display none al div. Además podés efectuar el while solo sí hay resultados ni habría porque generar el div y su contenido.
Hola, emprear gracias. Por favor me podrias decir como se haría? yo la recuperación de datos la hago así:

Código PHP:
$id_aviso=$_GET['id_aviso'];

mysql_select_db($database_conexion$conexion);
$query_Recordset4 "SELECT * FROM contador_avisos where id_aviso = '$id_aviso'";
$Recordset4 mysql_query($query_Recordset4$conexion) or die(mysql_error());
$row_Recordset4 mysql_fetch_assoc($Recordset4);
$totalRows_Recordset4 mysql_num_rows($Recordset4); 
  #4 (permalink)  
Antiguo 10/05/2013, 18:27
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Ocultar un div si no existen registros.

Cita:
Iniciado por satjaen Ver Mensaje
Hola, emprear gracias. Por favor me podrias decir como se haría? yo la recuperación de datos la hago así:

Código PHP:
$id_aviso=$_GET['id_aviso'];

mysql_select_db($database_conexion$conexion);
$query_Recordset4 "SELECT * FROM contador_avisos where id_aviso = '$id_aviso'";
$Recordset4 mysql_query($query_Recordset4$conexion) or die(mysql_error());
$row_Recordset4 mysql_fetch_assoc($Recordset4);
$totalRows_Recordset4 mysql_num_rows($Recordset4); 
eso
Código:
$totalRows_Recordset4 = mysql_num_rows($Recordset4);
te dice el numero de filas afectadas por la consulta, ya con eso podés establecer una condicion

si es > 0
echo "<div>"
//recorres la tabla
echo "</div>";

si no directamente no te va a imprimir nada
SAludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #5 (permalink)  
Antiguo 11/05/2013, 14:49
Avatar de satjaen  
Fecha de Ingreso: septiembre-2012
Ubicación: Jaén (Andalucía)
Mensajes: 893
Antigüedad: 11 años, 8 meses
Puntos: 10
Respuesta: Ocultar un div si no existen registros.

Cita:
Iniciado por emprear Ver Mensaje
eso
Código:
$totalRows_Recordset4 = mysql_num_rows($Recordset4);
te dice el numero de filas afectadas por la consulta, ya con eso podés establecer una condicion

si es > 0
echo "<div>"
//recorres la tabla
echo "</div>";

si no directamente no te va a imprimir nada
Ok, pero como haría el while para repetir todos los registros?

Código Javascript:
Ver original
  1. mysql_select_db($database_conexion, $conexion);
  2. $query_Recordset1 = "SELECT * FROM contador_avisos where id_aviso='$id_aviso'";
  3. $Recordset1 = mysql_query($query_Recordset1, $conexion) or die(mysql_error());
  4. $row_Recordset1 = mysql_fetch_assoc($Recordset1);
  5. $totalRows_Recordset1 = mysql_num_rows($Recordset1);
  6. if($totalRows_Recordset1 == 0){
  7. echo 'No hay resultados';
  8. }else{
  9. echo " hay registros";
  10.   }
  11.  ?>
  12. <?php
  13. mysql_free_result($Recordset1);
  14. ?>

EDITO:

Creo que es así no?

Código Javascript:
Ver original
  1. mysql_select_db($database_conexion, $conexion);
  2. $query_Recordset1 = "SELECT * FROM contador_avisos where id_aviso='$id_aviso'";
  3. $Recordset1 = mysql_query($query_Recordset1, $conexion) or die(mysql_error());
  4. $row_Recordset1 = mysql_fetch_assoc($Recordset1);
  5. $totalRows_Recordset1 = mysql_num_rows($Recordset1);
  6. if($totalRows_Recordset1 == 0){
  7. echo 'No hay resultados';
  8. }else{
  9. echo "
  10. <table>
  11.  <tr>
  12.    <td>id_contador</td>
  13.  </tr>";
  14.  
  15.     }
  16.  ?>
  17.   <?php do { ?>
  18.     <tr>
  19.       <td><?php echo $row_Recordset1['id_contador']; ?></td>
  20.     </tr>
  21.     <?php } while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)); ?>
  22. </table>
  23.  
  24. <?php
  25. mysql_free_result($Recordset1);
  26. ?>

Última edición por satjaen; 11/05/2013 a las 15:02
  #6 (permalink)  
Antiguo 11/05/2013, 15:30
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Ocultar un div si no existen registros.

si, te lo estaba por pegar desde otro ejemplo

Código PHP:
<?php
$sqlhostname 
"localhost";
$login "root";
$password "";
$base "xxx";

$db_connect mysql_connect($sqlhostname,$login,$password);
$selecciona_base mysql_select_db($base,$db_connect);

$consulta "SELECT * FROM alumnos";
$query mysql_query($consulta);

if (!
$query){
echo 
"<B>Error ".mysql_errno()." :</B> ".mysql_error()."";
exit;
}
$res mysql_num_rows($query);

if (
$res == 0){
echo 
"No imprimo nada";
}else{
// creo el div
echo "<div>\n";
// hago el while
while($fila mysql_fetch_array($query)){
$id $fila['id'];
$nombre $fila['nombre'];
$domicilio $fila['domicilio'];
echo
"$id - $nombre - $domicilio <hr>";
}
echo 
"\n</div>";
mysql_free_result($query);
}

?>
Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #7 (permalink)  
Antiguo 11/05/2013, 16:27
Avatar de satjaen  
Fecha de Ingreso: septiembre-2012
Ubicación: Jaén (Andalucía)
Mensajes: 893
Antigüedad: 11 años, 8 meses
Puntos: 10
Respuesta: Ocultar un div si no existen registros.

Cita:
Iniciado por emprear Ver Mensaje
si, te lo estaba por pegar desde otro ejemplo

Código PHP:
<?php
$sqlhostname 
"localhost";
$login "root";
$password "";
$base "xxx";

$db_connect mysql_connect($sqlhostname,$login,$password);
$selecciona_base mysql_select_db($base,$db_connect);

$consulta "SELECT * FROM alumnos";
$query mysql_query($consulta);

if (!
$query){
echo 
"<B>Error ".mysql_errno()." :</B> ".mysql_error()."";
exit;
}
$res mysql_num_rows($query);

if (
$res == 0){
echo 
"No imprimo nada";
}else{
// creo el div
echo "<div>\n";
// hago el while
while($fila mysql_fetch_array($query)){
$id $fila['id'];
$nombre $fila['nombre'];
$domicilio $fila['domicilio'];
echo
"$id - $nombre - $domicilio <hr>";
}
echo 
"\n</div>";
mysql_free_result($query);
}

?>
Saludos
Ok, siempre gracias emprear
  #8 (permalink)  
Antiguo 11/05/2013, 16:49
Avatar de satjaen  
Fecha de Ingreso: septiembre-2012
Ubicación: Jaén (Andalucía)
Mensajes: 893
Antigüedad: 11 años, 8 meses
Puntos: 10
Respuesta: Ocultar un div si no existen registros.

Tengo un problema con el formulario que no me lo manda:

Código Javascript:
Ver original
  1. echo"<form action='<?php echo $editFormAction; ?>' method='post' name='form3'>
  2. <input type='hidden' name='id_contador' value='$id_contador' />
  3.  
  4.  <input type='hidden' name='MM_update' value='form3' />
  5.  <button type='submit' data-icon='custom' id='form3btn'  data-theme='c' data-ajax='false'>Para contador</button>    
  6.                        
  7. </form>\n";


Código Javascript:
Ver original
  1. <?php
  2. mysql_select_db($database_conexion, $conexion);
  3. $query_Recordset4 = "SELECT * FROM contador_avisos where id_aviso = '$id_aviso'";
  4. $Recordset4 = mysql_query($query_Recordset4, $conexion) or die(mysql_error());
  5. $row_Recordset4 = mysql_fetch_assoc($Recordset4);
  6. $totalRows_Recordset4 = mysql_num_rows($Recordset4);
  7. if (!$Recordset4){
  8. echo "<B>Error ".mysql_errno()." :</B> ".mysql_error()."";
  9. exit;
  10. }
  11. $res = mysql_num_rows($Recordset4);
  12.  
  13. if ($res == 0){
  14. echo " ";
  15. }else{
  16. // creo el div
  17. echo "<div id='div_1' style='display:block:none' >\n";
  18. echo "<ul data-role='listview' data-divider-theme='b' data-inset='true'>\n";
  19. echo "<li data-role='list-divider' role='heading'>Técnico[$tecnico]</li>\n";
  20. // hago el while
  21. while ($fila = mysql_fetch_assoc($Recordset4)){
  22.  
  23. $fecha1 = strtotime($row_Recordset4['hora_entrada']);
  24. $fecha2 = strtotime($row_Recordset4['hora_salida']);
  25.  
  26. $diferencia_minutos = ($fecha2-$fecha1)/60;
  27.  
  28. $id_aviso = $fila['id_aviso'];
  29. $tecnico = $fila['tecnico'];
  30. $id_contador = $fila['id_contador'];
  31. $fecha = $fila['fecha'];
  32. $hora_entrada = $fila['hora_entrada'];
  33. $hora_salida = $fila['hora_salida'];
  34. echo"<li data-role='list-divider' role='heading'>$fecha</li>
  35. <li data-theme='c'>De&nbsp;$hora_entrada&nbsp;a&nbsp;$hora_salida<span class='ui-li-count'>$diferencia_minutos&nbsp;minutos</span></li>\n";
  36.  echo"<form action='<?php echo $editFormAction; ?>' method='post' name='form3'>
  37. <input type='hidden' name='id_contador' value='$id_contador' />
  38.  
  39.  <input type='hidden' name='MM_update' value='form3' />
  40.  <button type='submit' data-icon='custom' id='form3btn'  data-theme='c' data-ajax='false'>Para contador</button>    
  41.                        
  42. </form>\n";
  43. }
  44. echo "\n</div>";
  45. mysql_free_result($Recordset4);
  46. }
  47.  
  48. ?>

Gracias
  #9 (permalink)  
Antiguo 11/05/2013, 17:51
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Ocultar un div si no existen registros.

Esto esta mal sacado x html

echo"<form action='<?php echo $editFormAction; ?>' method='post' name='form3'>
<input type='hidden' name='id_contador' value='$id_contador' />

<input type='hidden' name='MM_update' value='form3' />
<button type='submit' data-icon='custom' id='form3btn' data-theme='c' data-ajax='false'>Para contador</button>

</form>\n";

estás haciendo una apertura de php dentro del echo, en el mismo action, más vale algo asi

Código PHP:
echo"<form action='$editFormAction' method='post' name='form3'>
 <input type='hidden' name='id_contador' value='$id_contador' />
  <input type='hidden' name='MM_update' value='form3' />
  <button type='submit' data-icon='custom' id='form3btn'  data-theme='c' data-ajax='false'>Para contador</button></form>\n"

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #10 (permalink)  
Antiguo 12/05/2013, 02:50
Avatar de satjaen  
Fecha de Ingreso: septiembre-2012
Ubicación: Jaén (Andalucía)
Mensajes: 893
Antigüedad: 11 años, 8 meses
Puntos: 10
Respuesta: Ocultar un div si no existen registros.

Cita:
Iniciado por emprear Ver Mensaje
Esto esta mal sacado x html

echo"<form action='<?php echo $editFormAction; ?>' method='post' name='form3'>
<input type='hidden' name='id_contador' value='$id_contador' />

<input type='hidden' name='MM_update' value='form3' />
<button type='submit' data-icon='custom' id='form3btn' data-theme='c' data-ajax='false'>Para contador</button>

</form>\n";

estás haciendo una apertura de php dentro del echo, en el mismo action, más vale algo asi

Código PHP:
echo"<form action='$editFormAction' method='post' name='form3'>
 <input type='hidden' name='id_contador' value='$id_contador' />
  <input type='hidden' name='MM_update' value='form3' />
  <button type='submit' data-icon='custom' id='form3btn'  data-theme='c' data-ajax='false'>Para contador</button></form>\n"

Saludos
Gracias emprear, pero no veo la diferencia.

EDITO: Ya he abierto los , gracias.

Última edición por satjaen; 12/05/2013 a las 04:36
  #11 (permalink)  
Antiguo 12/05/2013, 05:09
Avatar de satjaen  
Fecha de Ingreso: septiembre-2012
Ubicación: Jaén (Andalucía)
Mensajes: 893
Antigüedad: 11 años, 8 meses
Puntos: 10
Respuesta: Ocultar un div si no existen registros.

Cita:
Iniciado por satjaen Ver Mensaje
Gracias emprear, pero no veo la diferencia.

EDITO: Ya he abierto los , gracias.
emprear, me sigue sin funcionar el form:

Código Javascript:
Ver original
  1. <!---------------------------------Temporizador iniciado----------------------------------------------------------------->
  2. <?php
  3. mysql_select_db($database_conexion, $conexion);
  4. $query_Recordset4 = "SELECT * FROM contador_avisos where id_aviso = '$id_aviso'";
  5. $Recordset4 = mysql_query($query_Recordset4, $conexion) or die(mysql_error());
  6. $row_Recordset4 = mysql_fetch_assoc($Recordset4);
  7. $totalRows_Recordset4 = mysql_num_rows($Recordset4);
  8. if (!$Recordset4){
  9. echo "<B>Error ".mysql_errno()." :</B> ".mysql_error()."";
  10. exit;
  11. }
  12. $res = mysql_num_rows($Recordset4);
  13.  
  14. if ($res == 0){
  15. echo " ";
  16. }else{
  17. // creo el div
  18. echo "<div id='div_1' style='display:block:none' >\n";
  19. echo "<ul data-role='listview' data-divider-theme='b' data-inset='true'>\n";
  20. echo "<li data-role='list-divider' role='heading'>Técnico[$tecnico]</li>\n";
  21. // hago el while
  22. while ($fila = mysql_fetch_assoc($Recordset4)){
  23.  
  24. $fecha1 = strtotime($row_Recordset4['hora_entrada']);
  25. $fecha2 = strtotime($row_Recordset4['hora_salida']);
  26.  
  27. $diferencia_minutos = ($fecha2-$fecha1)/60;
  28.  
  29. $id_aviso = $fila['id_aviso'];
  30. $tecnico = $fila['tecnico'];
  31. $id_contador = $fila['id_contador'];
  32. $fecha = $fila['fecha'];
  33. $hora_entrada = $fila['hora_entrada'];
  34. $hora_salida = $fila['hora_salida'];
  35. echo"<li data-role='list-divider' role='heading'>$fecha</li>
  36. <li data-theme='c'>De&nbsp;$hora_entrada&nbsp;a&nbsp;$hora_salida<span class='ui-li-count'>$diferencia_minutos&nbsp;minutos</span></li>\n";
  37.  echo"<form action='$editFormAction' method='post' name='form3'>
  38. <input type='hidden' name='id_contador' value='$id_contador' />
  39.  <input type='hidden' name='MM_update' value='form3' />
  40.  <button type='submit' data-icon='custom' id='form3btn'  data-theme='c' data-ajax='false'>Para contador</button></form>\n";  
  41. }
  42. echo "\n</div>";
  43. mysql_free_result($Recordset4);
  44. }
  45.  
  46. ?>
  47.                
  48.  <!-----------------------------Fin Temporizador iniciado----------------------------------------------------------------->

EDITO: Perdona he vuelto a probar y si que funciona.Gracias

Última edición por satjaen; 12/05/2013 a las 05:55

Etiquetas: html, php
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 00:17.