problemas con parsear <br> en cadena string

Jose Felipe Sanhueza Paredes jfsp24 en gmail.com
Jue Ene 26 17:10:43 CLST 2006


estuve haciedno algunas pruebas a mano y desarrolle lo sigiuente:
primero.php

<?
$str = "esto es una
prueba de
como funciona
esto";
$cadena = explode("\n", $str);
$descripcion = "";
for($i = 0; $i < count($cadena); $i++)
   $descripcion .= $cadena[$i]."<br>";
echo $descripcion;
?>

al hacer esto me despliega por pantalla:
esto es una
prueba de
como funciona
esto
y al observar su codigo fuente me despliega:

esto es una<br>prueba de<br>como funciona<br>esto<br>

que es justamente como necesito la cadena...ahora bien, uso el mismo
concepto , tomando la variable ·descripcion desd ela pagina
($_REQUEST['descripcoin']) , me lo despliega igual q el anterior, pero me
genera como cadena (codigo fuente):

esto es una<br>
prueba de<br>
como funciona<br>
esto<br>

lo que sigue provocando el corte en la linea del javascript q debo
generar..alguien cacha mas menos como solucionarlo?

fEl día 26/01/06, Jose Felipe Sanhueza Paredes < jfsp24 en gmail.com> escribió:
>
> Keber, te respondo...
> a tu respuesta si, se puede usar expresiones regulares, de hech oyo hice
> lo siguiente:
> $cadena = explode("<br />", $descipcion);...me devuelve en cadenas las
> partes de la descripcion, epro igual , al mostrarlo lo muestra con saltos de
> linea..
> ahora el momento en que se corta, precisamente es al ponerlo en el html,
> via templates, en la parte del obverlib q corresponde a q aparezca la
> descripcion..
>
>
> El día 26/01/06, Keber Flores <keber en sictec.cl > escribió:
> >
> > se pueden ocupar expresiones regulares en php?  para, al momento de
> > mostrarlo, substituir los \n en la cadena con <nada>
> >
> > ¿en que punto se corta la cadena?
> > saludos,
> > Keber
> >
> > ----- Original Message -----
> >  *From:* Jose Felipe Sanhueza Paredes <jfsp24 en gmail.com>
> > *To:* php en listas.inf.utfsm.cl
> > *Sent:* Thursday, January 26, 2006 1:08 PM
> > *Subject:* problemas con parsear <br> en cadena string
> >
> > hola, tengo el sigiuente problema...quiero poner a una lista de
> > productos la descripcion de cada uno...eso lo hago usando los metodos de
> > overlib..q me permite desplegar un cuadrado de texto al hacer onmouseover
> > sobre un link..en este cuadro de texto puedo poner el titulo del producto,
> > su precio..pero al momento de poner la descripcion me surgen problemas.
> > a q se deben?..resulta que estas descripcion tienen saltos de linea, por
> > ejemplo:
> > "este producto consta con:
> > * bla bla
> > *bla bla
> > * etc"
> > y al momento de grabarlo lo guardo de la siguiente forma: insert into
> > tabla (.., descripcion, ..) VALUES (.., 'nl2br($descripcion)', .. cosa que
> > me lo guarde asi:
> > "este producto consta con:<br />
> > * bla bla<br />
> > *bla bla<br />
> > * etc"
> > mi problema surge al moemnto de mostrarlo..pq reviso el codigo fuente y
> > lo muestra tal cual se explica arriba..conn los saltos de linea, hech oq me
> > corta la cadena html y produce un error..probe copiando el codigo fuente a
> > mano y necesito dejar la cadena de esta forma: "a "este producto consta
> > con:<br />* bla bla<br />*bla bla<br />* etc<br />"
> > probe con distintos metodos (sacando el nl2br, haciendo explode tanto a
> > "\n" como a "<br />")..pero nada..me siguie mostrando con saltos de linea y
> > cortando la cadena..
> > algiuen tiene alguna idea de como solucionarlo, por favor?
> > gracias.
> >
> >
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://listas.inf.utfsm.cl/pipermail/php/attachments/20060126/2c5c66f4/attachment-0001.html


Más información sobre la lista de distribución PHP