Foros del Web » Programando para Internet » PHP »

Bloque central ultimos usuarios

Estas en el tema de Bloque central ultimos usuarios en el foro de PHP en Foros del Web. HOla amigos eh escrito este codigo y aparte de compartirlo por si alguien le hiciese falta o lo que sea queria indicar que tiene un ...
  #1 (permalink)  
Antiguo 26/02/2012, 09:24
Avatar de xinote  
Fecha de Ingreso: enero-2012
Ubicación: Valladolid, Spain
Mensajes: 78
Antigüedad: 7 años, 10 meses
Puntos: 0
Bloque central ultimos usuarios

HOla amigos eh escrito este codigo y aparte de compartirlo por si alguien le hiciese falta o lo que sea queria indicar que tiene un problemilla aver si alguien me lo soluciona:

se trata de un bloke central en el k se muestran 2 consultas a 2 tablas de la base de datos mediante un select recoge los datos de la BD y despues los muestra con una marquesina y si la BD esta vacia pues escribe un mensaje diciendo k esta vacia y un link para agregar un usuario hasta hay bien funciona todo pero cuando hay mas de un usuario en la BD zas¡¡¡¡ me descoloca todas las tablas y lo pone donde le sale de los wuitos¡¡¡

alguien sabe por ke???
aki esta el codigo

Código PHP:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
<style type="text/css">
.tablas {
    font-weight: bold;
}
.tablas {
    text-align: center;
}
</style>
</head>

<body>
<?php

require ('config.php'); 
$clientess mysql_query("SELECT * FROM clientes order by codigo ASC");
$numeroclientes mysql_num_rows($clientess);

if (
$numeroclientes ) {
    
    echo 
"<table width='90%' border='0' align='center'>";
echo 
"  <tr>";
    
echo 
"    <td width='50%' height='177'><table width='55%' border='0' height='100%' align='center'>";
echo 
"      <tr>";
echo 
"        <td height='35' class='tablas'><b><center><table border='1'><tr><td>Ultimos clientes agregados</td></tr></table></td>";
echo 
"      </tr>";
 echo 
"     <tr>";
echo 
"        <td height='145'><font color=\'#000000\'><font size=\'1\'><font face=\'Verdana\'><center><b><table border='1' align='center'><tr><td align='center'>Actualmente no dispongo<br>de pedidos en la base de datos<br>deseas agregar uno?<br>pincha <a href='clientes.php'><font size='+2'><br>aki</td></tr></table></font></font></td>";
 echo 
"     </tr>";
echo 
"    </table></td>";
} else {
      
while(
$row=mysql_fetch_array($clientess)) 



$codigo=$row["codigo"]; 
$nombre =$row["nombre"]; 

echo 
"<table width='90%' border='0' align='center'>";
echo 
"  <tr>";
    
echo 
"    <td width='50%' height='177'><table width='55%' border='0' height='100%' align='center'>";
echo 
"      <tr>";
echo 
"        <td height='35' class='tablas'><b><center><table border='1'><tr><td>Ultimos clientes agregados</td></tr></table></td>";
echo 
"      </tr>";
 echo 
"     <tr>";
echo 
"        <td height='145'><font color=\'#000000\'><font size=\'1\'><font face=\'Verdana\'><marquee direction='up' scrollamount='+5' onmouseover='this.stop()' onmouseout='this.start()'><a href='mostrar.php'><table border='1' align='center'><tr><td align='center'>$codigo<hr><br>$nombre</a></marquee></td></tr></table></font></font></td>";
 echo 
"     </tr>";
echo 
"    </table></td>";
}


}
?>
<?php
$vacas 
mysql_query("SELECT *, DATE_FORMAT(fechafin,'%d/%m/%Y') as fechafin FROM vacaciones order by codigo ASC"); 
$clientesvacas mysql_num_rows($vacas);
if (
$clientesvacas 
{

echo 
"   <td width='50%'><table width='90%' border='0' height='100%' align='center'> ";
 echo 
"     <tr>";
echo 
"        <td height='35' class='tablas'><b><center><table border='1'><tr><td>Clientes de vacaciones</td></tr></table></td>";
 echo 
"     </tr>";
 echo 
"     <tr>";
echo 
" <td height='145'><font color=\'#000000\'><font size=\'1\'><font face=\'Verdana\'><center><b><table border='1' align='center'><tr><td align='center'>Actualmente no dispongo<br>de clientes en vacaciones en la base de datos<br>deseas agregar uno?<br>pincha <a href='agrega_vacas.php'><font size='+2'><br>aki</td></tr></table></font></font></td>";
 echo 
"     </tr>";
 echo 
"   </table></td>";
    
 echo 
" </tr>";
echo 
"</table>";


} else {
while(
$row=mysql_fetch_array($vacas)) 

$cliente=$row["codigo"]; 
$fechavuelta =$row["fechafin"];

 echo 
"   <td width='50%'><table width='90%' border='0' height='100%' align='center'> ";
 echo 
"     <tr>";
echo 
"        <td height='35' class='tablas'><b><center><table border='1'><tr><td>Clientes de vacaciones</td></tr></table></td>";
 echo 
"     </tr>";
 echo 
"     <tr>";
 echo 
"       <td height='145'><font color=\'#000000\'><font size=\'1\'><font face=\'Verdana\'><marquee direction='up' scrollamount='+5' onmouseover='this.stop()' onmouseout='this.start()'><a href='mostrar_vacas.php'><table border='1' align='center'><tr><td align='center'>El codigo $cliente<br>volvera el $fechavuelta</a></marquee></td></tr></table></font></font></td>";
 echo 
"     </tr>";
 echo 
"   </table></td>";
    
 echo 
" </tr>";
echo 
"</table>";
}
}
?>
</body>
</html>
  #2 (permalink)  
Antiguo 26/02/2012, 10:06
Avatar de francisco93  
Fecha de Ingreso: julio-2011
Ubicación: Soy ciudadano del mundo, pero vivo en Canarias :)
Mensajes: 58
Antigüedad: 8 años, 4 meses
Puntos: 1
Respuesta: Bloque central ultimos usuarios

Hola xinote te explico porque pasa esto al tu incluir la etiqueta <table> dentro del bucle el va a generarte 1 tabla si hay un usuario. si hay 2 usuarios 2 tablas y asi sucesivamente y lo que tu quieres que se genere es una fila no la tabla completa, por eso saca esa etiqueta fuera del bucle while ok, la otra cuestion es que empiezas con una tabla,
luego finalizas una columana que no has empezado

Código PHP:
echo "    </table></td>"
Asi es como deberia quedar:

Código PHP:
echo "<table width='90%' border='0' align='center'>";
while(
$row=mysql_fetch_array($clientess)) 

$codigo=$row["codigo"]; 
$nombre =$row["nombre"]; 
echo 
"  <tr>";
    
echo 
"    <td width='50%' height='177'><table width='55%' border='0' height='100%' align='center'>";
echo 
"      <tr>";
echo 
"        <td height='35' class='tablas'><b><center><table border='1'><tr><td>Ultimos clientes agregados</td></tr></table></td>";
echo 
"      </tr>";
 echo 
"     <tr>";
echo 
"        <td height='145'><font color=\'#000000\'><font size=\'1\'><font face=\'Verdana\'><marquee direction='up' scrollamount='+5' onmouseover='this.stop()' onmouseout='this.start()'><a href='mostrar.php'><table border='1' align='center'><tr><td align='center'>$codigo<hr><br>$nombre</a></marquee></td></tr></table></font></font></td>";
 echo 
"     </tr>";
}
echo 
"    </table>"
Lamento no tener tiempo para corregir tu codigo completo. espero hayas entendido y cualquier duda sin problema te respondo.
  #3 (permalink)  
Antiguo 26/02/2012, 10:59
Avatar de xinote  
Fecha de Ingreso: enero-2012
Ubicación: Valladolid, Spain
Mensajes: 78
Antigüedad: 7 años, 10 meses
Puntos: 0
Respuesta: Bloque central ultimos usuarios

Cita:
Iniciado por francisco93 Ver Mensaje
Hola xinote te explico porque pasa esto al tu incluir la etiqueta <table> dentro del bucle el va a generarte 1 tabla si hay un usuario. si hay 2 usuarios 2 tablas y asi sucesivamente y lo que tu quieres que se genere es una fila no la tabla completa, por eso saca esa etiqueta fuera del bucle while ok, la otra cuestion es que empiezas con una tabla,
luego finalizas una columana que no has empezado

Código PHP:
echo "    </table></td>"
Asi es como deberia quedar:

Código PHP:
echo "<table width='90%' border='0' align='center'>";
while(
$row=mysql_fetch_array($clientess)) 

$codigo=$row["codigo"]; 
$nombre =$row["nombre"]; 
echo 
"  <tr>";
    
echo 
"    <td width='50%' height='177'><table width='55%' border='0' height='100%' align='center'>";
echo 
"      <tr>";
echo 
"        <td height='35' class='tablas'><b><center><table border='1'><tr><td>Ultimos clientes agregados</td></tr></table></td>";
echo 
"      </tr>";
 echo 
"     <tr>";
echo 
"        <td height='145'><font color=\'#000000\'><font size=\'1\'><font face=\'Verdana\'><marquee direction='up' scrollamount='+5' onmouseover='this.stop()' onmouseout='this.start()'><a href='mostrar.php'><table border='1' align='center'><tr><td align='center'>$codigo<hr><br>$nombre</a></marquee></td></tr></table></font></font></td>";
 echo 
"     </tr>";
}
echo 
"    </table>"
Lamento no tener tiempo para corregir tu codigo completo. espero hayas entendido y cualquier duda sin problema te respondo.
na trankilo muchas gracias me sirvio lo k me pusistes aunke al final kite los marquee y lo estatico ya que me lo descolocaba =mente y en el select le puse un limite para k solo muestre 2 resultados lo unico que los resultados me los muestra en la misma linea es decir en vez de poner resultado 1 [salto de linea] resultado 2,etc... lo k me pone es en una misma linea resultado 1,resultado2,etc.... eh intentado añadir un <br> pero nada no me hace el salto de linea.

asi es como tengo el codigo ahora

Código PHP:
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Documento sin título</title> 
<style type="text/css"> 
.tablas { 
    font-weight: bold; 

.tablas { 
    text-align: center; 

</style> 
</head> 

<body> 
<?php 

require ('config.php');  
$clientess mysql_query("SELECT * FROM clientes order by codigo ASC LIMIT 2"); 
$numeroclientes mysql_num_rows($clientess); 

if (
$numeroclientes ) { 
     
    echo 
"<table width='90%' border='0' align='center'>"
echo 
"  <tr>"
     
echo 
"    <td width='50%' height='177'><table width='55%' border='0' height='100%' align='center'>"
echo 
"      <tr>"
echo 
"        <td height='35' class='tablas'><b><center><table border='1'><tr><td>Ultimos clientes agregados</td></tr></table></td>"
echo 
"      </tr>"
 echo 
"     <tr>"
echo 
"        <td height='145'><font color=\'#000000\'><font size=\'1\'><font face=\'Verdana\'><center><b><table border='1' align='center'><tr><td align='center'>Actualmente no dispongo<br>de pedidos en la base de datos<br>deseas agregar uno?<br>pincha <a href='clientes.php'><font size='+2'><br>aki</td></tr></table></font></font></td>"
 echo 
"     </tr>"
echo 
"    </table></td>"
} else { 
    echo 
"<table width='90%' border='0' align='center'>"
echo 
"  <tr>"
     
echo 
"    <td width='50%' height='177'><table width='55%' border='0' height='100%' align='center'>"
echo 
"      <tr>"
echo 
"        <td height='35' class='tablas'><b><center><table border='1'><tr><td>Ultimos clientes agregados</td></tr></table></td>"
echo 
"      </tr>"
 echo 
"     <tr>";    
while(
$row=mysql_fetch_array($clientess))  
{  


$codigo=$row["codigo"];  
$nombre =$row["nombre"];  


echo 
"        <td height='145'><font color=\'#000000\'><font size=\'1\'><font face=\'Verdana\'><a href='mostrar.php'><table border='1' align='center'><tr><td align='center'>$codigo<hr><br>$nombre</a></td></tr></table></font></font></td><br>"

 echo 
"     </tr>"
echo 
"    </table></td>"




?> 
<?php 
$vacas 
mysql_query("SELECT *, DATE_FORMAT(fechafin,'%d/%m/%Y') as fechafin FROM vacaciones order by codigo ASC LIMIT 2");  
$clientesvacas mysql_num_rows($vacas); 
if (
$clientesvacas )  


echo 
"   <td width='50%'><table width='90%' border='0' height='100%' align='center'> "
 echo 
"     <tr>"
echo 
"        <td height='35' class='tablas'><b><center><table border='1'><tr><td>Clientes de vacaciones</td></tr></table></td>"
 echo 
"     </tr>"
 echo 
"     <tr>"
echo 
" <td height='145'><font color=\'#000000\'><font size=\'1\'><font face=\'Verdana\'><center><b><table border='1' align='center'><tr><td align='center'>Actualmente no dispongo<br>de clientes en vacaciones en la base de datos<br>deseas agregar uno?<br>pincha <a href='agrega_vacas.php'><font size='+2'><br>aki</td></tr></table></font></font></td>"
 echo 
"     </tr>"
 echo 
"   </table></td>"
     
 echo 
" </tr>"
echo 
"</table>"


} else { 
echo 
"   <td width='50%'><table width='90%' border='0' height='100%' align='center'> "
 echo 
"     <tr>"
echo 
"        <td height='35' class='tablas'><b><center><table border='1'><tr><td>Clientes de vacaciones</td></tr></table></td>"
 echo 
"     </tr>"
 echo 
"     <tr>"
 
while(
$row=mysql_fetch_array($vacas))  
{  
echo 
"<br>";
$cliente=$row["codigo"];  
$fechavuelta =$row["fechafin"]; 

 
 echo 
"       <td height='145' align='center'><font color=\'#000000\'><font size=\'1\'><font face=\'Verdana\'><a href='mostrar_vacas.php'><table border='1' align='center'><tr><td align='center'>El codigo $cliente<br>volvera el $fechavuelta</a></td></tr></table><br></font></font></td><br>"
 }
 
 echo 
"     </tr>"
 echo 
"   </table></td>"
     
 echo 
" </tr>"
echo 
"</table>"
 

?> 
</body> 
</html>
  #4 (permalink)  
Antiguo 26/02/2012, 11:17
Avatar de francisco93  
Fecha de Ingreso: julio-2011
Ubicación: Soy ciudadano del mundo, pero vivo en Canarias :)
Mensajes: 58
Antigüedad: 8 años, 4 meses
Puntos: 1
Respuesta: Bloque central ultimos usuarios

Hola de nuevo :), el problema es que las etiquetas <tr> si van dentro del bucle esto es que para cada resultado habrá una nueva fila o salto de linea si solo pones las etiquetas <td> dentro del bucle solo estarás poniendo por cada resultado una columna dentro de una unica fila. Prueba poniendo estas etiquetas dentro del bucle y tambien sigo sin comprender porque pones </table></td> si ya terminas la tabla porque finalizar una columna. Bueno prueba y cualquier cosa sigue comentando que tal.
  #5 (permalink)  
Antiguo 26/02/2012, 11:47
Avatar de xinote  
Fecha de Ingreso: enero-2012
Ubicación: Valladolid, Spain
Mensajes: 78
Antigüedad: 7 años, 10 meses
Puntos: 0
Respuesta: Bloque central ultimos usuarios

Cita:
Iniciado por francisco93 Ver Mensaje
Hola de nuevo :), el problema es que las etiquetas <tr> si van dentro del bucle esto es que para cada resultado habrá una nueva fila o salto de linea si solo pones las etiquetas <td> dentro del bucle solo estarás poniendo por cada resultado una columna dentro de una unica fila. Prueba poniendo estas etiquetas dentro del bucle y tambien sigo sin comprender porque pones </table></td> si ya terminas la tabla porque finalizar una columna. Bueno prueba y cualquier cosa sigue comentando que tal.
bien ya lo revise y todo y creo k lo dejo asi como esta me parece bien ,revise todas las etiketas table y tal y creo k si k sobraba alguna xd ya lo corregi o eso creo aki te dejo el codigo *"final"

muchisimas gracias por tu ayuda y tu tiempo.

*el codigo final podria sufrir variaciones el proximo dia k me de la venada xd


Código PHP:
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Documento sin título</title> 
<style type="text/css"> 
.tablas { 
    font-weight: bold; 

.tablas { 
    text-align: center; 

</style> 
</head> 

<body> 
<?php 

require ('config.php');  
$clientess mysql_query("SELECT * FROM clientes order by fecha DESC LIMIT 3"); 
$numeroclientes mysql_num_rows($clientess); 

if (
$numeroclientes ) { 
     
    echo 
"<table width='90%' border='1' align='center'>"
echo 
"  <tr>"
     
echo 
"    <td width='50%' height='177'><table width='55%' border='0' height='100%' align='center'>"
echo 
"      <tr>"
echo 
"        <td height='35' class='tablas'><b><center><table border='1'><tr><td>Ultimos clientes agregados</td></tr></table></td>"
echo 
"      </tr>"
 echo 
"     <tr>"
echo 
"        <td height='145'><font color=\'#000000\'><font size=\'1\'><font face=\'Verdana\'><center><b><table border='1' align='center'><tr><td align='center'>Actualmente no dispongo<br>de pedidos en la base de datos<br>deseas agregar uno?<br>pincha <a href='clientes.php'><font size='+2'><br>aki</td></tr></table></font></font></td>"
 echo 
"     </tr>"
echo 
"    </table></td>"
} else { 
    echo 
"<table width='90%' border='0' align='center'>"
echo 
"  <tr>"
     
echo 
"    <td width='50%' height='177'>
<table width='55%' border='0' height='100%' align='center'>"

echo 
"      <tr>"
echo 
"        <td height='35' class='tablas'><b><center>
<table border='1'>
                <tr>
                           <td>
Ultimos clientes agregados
</td>
          </tr>
                      </table>
                                     </td>"

echo 
"      </tr>"
  
while(
$row=mysql_fetch_array($clientess))  
{  


$codigo=$row["codigo"];  
$nombre =$row["nombre"];  

 echo 
"     <tr>";  
echo 
"       <td height='145' align='center'><font color=\'#000000\'><font size=\'1\'><font face=\'Verdana\'><a href='mostrar.php'>$codigo<br>$nombre</a></font></font></td>"
 
 echo 
"     </tr>"

echo 
"    </table></td>"




?> 
<?php 
$vacas 
mysql_query("SELECT *, DATE_FORMAT(fechafin,'%d/%m/%Y') as fechafin FROM vacaciones order by codigo ASC LIMIT 3");  
$clientesvacas mysql_num_rows($vacas); 
if (
$clientesvacas )  


echo 
"   <td width='50%'>
<table width='90%' border='0' height='100%' align='center'> "

 echo 
"     <tr>"
echo 
"        <td height='35' class='tablas'><b><center>
<table border='1'>
<tr>
<td>Clientes de vacaciones</td>
</tr>
</table>
</td>"

 echo 
"     </tr>"
 echo 
"     <tr>"
echo 
" <td height='145'><font color=\'#000000\'><font size=\'1\'><font face=\'Verdana\'><center><b>
<table border='1' align='center'>
<tr>
<td align='center'>Actualmente no dispongo<br>de clientes en vacaciones en la base de datos<br>deseas agregar uno?<br>pincha <a href='agrega_vacas.php'><font size='+2'><br>aki</td>

</tr>
</table>
</font>
</td> 
</tr> 
</table>"

     



} else { 
echo 
"   <td width='50%'>
<table width='90%' border='0' height='100%' align='center'> "

 echo 
"     <tr>"
echo 
"        <td height='35' class='tablas'><b><center><table border='1'><tr><td>Clientes de vacaciones</td></tr></table></td>"
 echo 
"     </tr>"

 
while(
$row=mysql_fetch_array($vacas))  
{  

$cliente=$row["codigo"];  
$fechavuelta =$row["fechafin"]; 
 echo 
"     <tr>"
 
 echo 
"       <td height='145' align='center'><font color=\'#000000\'><font size=\'1\'><font face=\'Verdana\'><a href='mostrar_vacas.php'>El codigo $cliente<br>volvera el $fechavuelta</a></font></font></td>"

 
 echo 
"     </tr>"
  }
 echo 
"   </table></td>"
     
 echo 
" </tr>"
echo 
"</table>"
 

?> 
</body> 
</html>

Etiquetas: html, mysql, sql, tabla, usuarios, bloques, ultimo, centrar
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:06.