¿Quieres registrarte?

Dudas al mostrar datos usando mysql y php

Citar            
MensajePublicado: 18 Dic 2008 10:15 am
Buenas. Tengo una consulta php que me muestra una tabla de mi BD.
Tengo varios problemas.
-En la tabla de mi BD, los espacios se guardan como %20 y a la hora de hacer la consulta el php me muestra el %20 tal cual en vez de un espacio. Me gustaría saber como puedo solucionar esto.
-También me guarda de vez en cuando campos en blanco(lo cual no es problema porque guarda unas fechas) y me gustaría que al hacer la consulta, si el php ha encotrado campos en blanco en la consulta a la BD, no los muestre.
-En la base de datos también guardo la fecha en la que se insertó el comentario.
Me la guarda en forma de 14 dígitos consecutivos de esta forma 20081218085404 siendo el formato normal este 2008/12/18 08:54:04 . Asique me gustaria saber como imprimir la fecha de una forma "más elegante" que no sea con todos los dígitos apelotonados.

Alguien que tenga más conocimientos me puede dar su luz en este oscuro camino? XD

Ah! dejo el codigo de la consulta que va perfecto. Para que veais como hago la consulta y por si a alguien le pudiera servir :-) :

Código :

<?php
$conexion=mysql_connect("localhost","nombre_usuario","clave_usuario") 
  or  die("Problemas en la conexion");
mysql_select_db("base_de_datos",$conexion) 
  or  die("Problemas en la selección de la base de datos");
$registros=mysql_query("select TimePrint, nombre, mensaje from comentario",$conexion) or
  die("Problemas en el select:".mysql_error());
while ($reg=mysql_fetch_array($registros))
{
  echo "Fecha:".$reg['TimePrint']."<br>";
  echo "Nick:".$reg['nombre']."<br>";
  echo "Comentario:".$reg['comentario']."<br>";
  switch ($reg['nada']) {
    case 1:echo "PHP";
           break;
    case 2:echo "ASP";
           break;
    case 3:echo "JSP";
           break;
  }
  echo "<br>";
  echo "<hr>";
}
mysql_close($conexion);
?>

xematick


clabLevel: 50 Genero:Masculino



msie7
      MP    
Citar            
MensajePublicado: 18 Dic 2008 02:07 pm
¿Por qué siempre llegas con problemas extraños? :? :P:P:P

KB-27


clabLevel: 301
My very secret HQ



firefox
      MP    
Citar            
MensajePublicado: 18 Dic 2008 02:19 pm
XD XD XD Porque soy un ser extraño XD.
Nada, he resuelto lo las fechas cambiando en la base de datos el campo a tipo timestamp y muestra las fechas en formato 2008/12/18/ 14:50:00
Asique la solución ha sido mejor imposible.
Me queda por resolver lo de los caracteres raros...

xematick


clabLevel: 50 Genero:Masculino



msie7
      MP    
Citar            
MensajePublicado: 18 Dic 2008 10:34 pm
Al final he dado con esta solución. El unico problema es que me carga solo 3 valores de la tabla pero desde el más antiguo. Cómo seria que cargase 3 valrores desde el registro más reciente en mi BD, o desde la última fila añadida?

Código :

<?php
$conexion=mysql_connect("localhost","++++","++++")  
  or  die("Problemas en la conexion");
mysql_select_db("aerotechdb",$conexion) 
  or  die("Problemas en la selección de la base de datos");
$registros=mysql_query("select TimePrint, nick, mensaje from tblMensajes LIMIT 3",$conexion) or
  die("Problemas en el select:".mysql_error());
while ($reg=mysql_fetch_array($registros))
{
$UN_SALTO="\r\n"; 
$DOS_SALTOS="\r\n\r\n"; 
  echo $reg['TimePrint'].$UN_SALTO;
  echo $reg['nick'].":".$UN_SALTO;
  echo $reg['mensaje'].$DOS_SALTOS;
  switch ($reg['TimePrint']) {
    case 1:echo "PHP";
           break;
    case 2:echo "ASP";
           break;
    case 3:echo "JSP";
           break;
  }
}
mysql_close($conexion);
?>


-Y bueno, a ver si se presta alguien a ayudarme con esto, que aun no he dado con ninguna solución;
los textos que se guardan en mi base de datos(vienen de un FLASH pasado por php) no guardan espacios, tildes, acentos... como tal, si no que los codifica, por ejemplo los espacios a %20 etc etc. La cuestión es que como me las apaño para que me carge en el textarea esos datos sin estar codificados???

xematick


clabLevel: 50 Genero:Masculino



msie7
      MP    
Citar            
MensajePublicado: 18 Dic 2008 11:30 pm
Para que te regrese los registros mas nuevos solo deberias hacer un ORDER BY en la consulta mysql, ya sea por fecha o por id de manera descendente.

Saludos

canastendo


clabLevel: 9
México



firefox
      MP    
Citar            
MensajePublicado: 19 Dic 2008 07:21 am
asi?:

Código :

$registros=mysql_query("select TimePrint, nick, mensaje from tblMensajes ORDER BY 3",$conexion)

xematick


clabLevel: 50 Genero:Masculino



msie7
      MP    
Citar            
MensajePublicado: 19 Dic 2008 07:58 am
vale, es así

Código :

$registros=mysql_query("select TimePrint, nick, mensaje from tblMensajes ORDER BY IDMensaje DESC LIMIT 3",$conexion)

xematick


clabLevel: 50 Genero:Masculino



msie7
      MP    
Citar            
MensajePublicado: 19 Dic 2008 08:00 am
Lo único que me falta por solucionar, es el tema de codificar los %20 y todos los acentos "eÑes" etc etc... Porque en mi base de datos los espacios se guardan como %20 y luego al cargar el texto en un text area me aparece tal cual.
Alguien sabe de esto un poco más por favor?

xematick


clabLevel: 50 Genero:Masculino



msie7
      MP    

   Página 1 de 1

Responder al tema
Respuesta Rapida


 

 

Cristalab BabyBlue + BloodBerry © 2007 Cristalab
Powered by phpBB © 2001, 2007 phpBB Group

3 6 7 8 10 11 12 14 15 17 18 28 34 38 40 42 44 45 46 47 48