Comunidad de diseño web y desarrollo en internet online

Preview de Noticias Dinamicas.

Citar            
MensajeEscrito el 23 Ago 2011 01:55 pm
Hola comunidad, estoy desarrollando un sitio auto administrable en el cual se podrán subir noticias a una base de datos MySQL y se mostrarán sus respectivas previews en el Home con un limite que deberá ser no en cantidad de caracteres sino en cantidad de lineas ya que debo respetar lo expresado por el diseñador en el .PSD

Para darle un formato al texto incluí TinyMC como editor WYSIWYG en los textarea que ingresan la noticia, el problema radica en que si copio texto y lo pego el parrafo se limita correctamente al ancho que le pido en el codigo (supongamos que copio un Lorem Ipsum) pero cuando mantengo apretado un caracter ej:"a" en el ABM de modo que exeda el tamaño no me respeta el corte el parrafo crece descontrolado llevandose consigo al td quie lo contiene.

El codigo que arme para mostrar la noticia es:

<html>
<head>
<style>
p {margin: 0; padding: 0;}
</style>
</head>
<body>
<?php
//Paginador:
//Limito la busqueda
$TAMANO_PAGINA = 2;

//examino la página a mostrar y el inicio del registro a mostrar
if(isset($_GET["pagina"])){
$pagina=$_GET["pagina"];
$inicio = ($pagina - 1) * $TAMANO_PAGINA;
}else
{
$inicio = 0;
$pagina=1;
}


?>
<div style="width:636px; background-color:#FC0; height:367; ">
<table style="width:636px; position:relative; margin-top:0px; margin-left:0px;" cellpadding="3" cellspacing="3">
<?php
include("conectar.php");
$Sql="SELECT * FROM noticias";
$q=mysql_query($Sql);
$num_total_registros = mysql_num_rows($q);
//calculo el total de páginas
$total_paginas = ceil($num_total_registros / $TAMANO_PAGINA);
$Sql="SELECT * FROM noticias limit $inicio, $TAMANO_PAGINA";
$q=mysql_query($Sql);
while($r=mysql_fetch_array($q))
{
$texto=wordwrap($r['descripcion'], 430, "<br>", true);













echo'<tr><td valign="top" colspan=2 style="font-family:Arial, Helvetica, sans-serif; font-size:22px; color:#333; font-weight:bold;">'.$r['titulo'].'<br></td></tr><tr><td valign="top"><img width="174" height="88" src="'.$r['ruta_imagen'].'"></td><td valign="top" style="font-family:Arial, Helvetica, sans-serif; font-size:12px; line-height:16px;">'.$texto.' ver mas...</td></tr>';
}
mysql_free_result($q);
//muestro los distintos índices de las páginas, si es que hay varias páginas
if ($total_paginas > 1){
for ($i=1;$i<=$total_paginas;$i++){
if ($pagina == $i)
//si muestro el índice de la página actual, no coloco enlace
echo $pagina . " ";
else
//si el índice no corresponde con la página mostrada actualmente, coloco el enlace para ir a esa página
echo "<a href='visor_noticias.php?pagina=" . $i ."'>" . $i . "</a> ";
}
}

?>
</table>
</div>
</body>
</html>

¿Alguien tiene alguna pista sobre lo que puede estar pasando?

Desde ya les agradezco el tiempo que se tomaron para leer esta consulta, espero haberme explicado mas o menos coherentemente es un poco complicado transmitir lo que sucede sin mostrarlo.

Saludos


Axel

Por axelchiaro

1 de clabLevel



 

msie8
Citar            
MensajeEscrito el 03 Sep 2011 04:53 am
el problema es con worwrap de CSS. es decir tienes que ponerle tu una etiquetaen esa linea para que haga el efecto y asi respetar el diseño, si te entendi tu dices que si ponen
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
ahi esta el problema tu solo quieres que asomen 5 A y no todas pero no te lo respetaria :S
en CSS, vi que habia que ponerle AAAAA<wordwrap>AAAAAAAAAAAAAAAAAAA
entonces te generaria
AAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAA
ahora creo que es html5 y css.

Por RZ

Claber

118 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 05 Sep 2011 07:27 pm
Gracias por tu respuesta.

Trabajar en html 5 sería genial pero tenes que tener en cuenta que mucha gente utiliza navegadores sin soporte para esa tecnología y hasta que el mercado no dicte lo contrario por mas correcta y aceptada por el w3consorsium que este dejaria afuera a un alto porcentaje de navegantes (algo similar pasa con navegadores de primera como firefox y opera, y la basura de explorer que aunque no nos guste tiene una gran parte de la torta en el mercado).

Lo arregle limitando un font-family y un font-size fijo y contanto los caracteres que quería en el largo (espacios incluidos) y usando el wordwrap() de php para insertar "<br>" en ese largo.

http://www.php.net/manual/es/function.wordwrap.php para mas info.

Saludos

Por axelchiaro

1 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.