Foros del Web » Programando para Internet » PHP »

Un Problema De Cadenas

Estas en el tema de Un Problema De Cadenas en el foro de PHP en Foros del Web. a ver, mi problema es el siguiente: tengo una cadena que me llega desde un formulario, el usuario ha podido meter ahi saltos de linea ...
  #1 (permalink)  
Antiguo 04/02/2004, 12:21
Avatar de JUANCHE  
Fecha de Ingreso: marzo-2003
Ubicación: Sevilla
Mensajes: 25
Antigüedad: 14 años, 9 meses
Puntos: 0
Un Problema De Cadenas

a ver, mi problema es el siguiente:

tengo una cadena que me llega desde un formulario, el usuario ha podido meter ahi saltos de linea y todo lo que se le ocurra, mi tarea ahora es conseguir esa misma cadena pero en una sola linea, ya que debo pasarla así a una variable javascript que luego uso.

Sé que con nl2br puedo conseguir un <br /> por cada intro que el usuario me haya metido, pero ....aquí viene lo malo... mantiene el salto de linea!!! y mi javascript se confunde ya que necesita TODO EL TEXTO EN UNA ÚNICA LINEA.

Se me ocurre pasar la cadena a array y tratarla así comodamente, pero antes de meterme con eso prefiero consultar al mejor libro de php que he encontrado nunca ...VOSOTROS!....ayudaaaaadme plisssss!!!!

Mil gracias!
__________________
------------------------------------------------------------

PREÑADO DE IDEAS BUSCANDO COMO PARIRLAS
  #2 (permalink)  
Antiguo 04/02/2004, 14:39
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Usa nl2br() antes tipo:

Código PHP:
<?
$variable
="algo con \n saltos de línea \n como este ejemplo";
?>

<script languaje=javacript> ...
var contenido='<? echo nl2br($variable?>';
etc ..
</script>
Así no debería darte problemas .. (suponemos que ahí esa rutina javascript va a interpretar el HTML correctamente con sus <br>)..

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.

Última edición por Cluster; 04/02/2004 a las 14:54
  #3 (permalink)  
Antiguo 04/02/2004, 17:38
Avatar de JUANCHE  
Fecha de Ingreso: marzo-2003
Ubicación: Sevilla
Mensajes: 25
Antigüedad: 14 años, 9 meses
Puntos: 0
Bueno ...eso que dijiste estaría perfecto, pero tengo el mismo problema; mi problema es que los '\n' los sustituye bien por <br> (de hecho tb he probado con str_replace) pero aun mantiene un salto en la linea ... me explico :

antes de pasarle nl2br:

"hola , esta linea
está cortada"

después de pasarle nl2br:

"hola , esta linea
<br>está cortada"


...entonces si asigno esa cadena como valor de una variable javascript :


variable="Hola , esta linea
<br>está cortada"

me da lógicamente un error, ya que lo que necesita es :

variable="hola, esta linea<br>está cortada"


No se si me he conseguido explicar, espero que sí, en cualquier caso muchas gracias. Si se os ocurre alguna cosilla decidmelo, ok? .....
__________________
------------------------------------------------------------

PREÑADO DE IDEAS BUSCANDO COMO PARIRLAS
  #4 (permalink)  
Antiguo 04/02/2004, 18:16
Avatar de JUANCHE  
Fecha de Ingreso: marzo-2003
Ubicación: Sevilla
Mensajes: 25
Antigüedad: 14 años, 9 meses
Puntos: 0
EA!!!!.......por fin di en la tecla!!! .... resulta que cuando pulsas enter desde dentro de un formulario te mete un \n\r .... y yo pense que solo metia un \n .......grrrrrr!!!......bueno problema solucionado con str_replace y ln2br ..... GRACIAS DE NUEVO!
__________________
------------------------------------------------------------

PREÑADO DE IDEAS BUSCANDO COMO PARIRLAS
  #5 (permalink)  
Antiguo 28/10/2004, 23:29
 
Fecha de Ingreso: mayo-2002
Ubicación: Toluca
Mensajes: 229
Antigüedad: 15 años, 6 meses
Puntos: 2
Hola .. tengo el mismo problema !!! como lo solucionaste ??
necesito que esto:
"hola , esta linea
está cortada"
se convierta en esto
"hola , esta linea está cortada"


como lo hago ???

Saludos
  #6 (permalink)  
Antiguo 29/10/2004, 08:40
 
Fecha de Ingreso: mayo-2002
Ubicación: Toluca
Mensajes: 229
Antigüedad: 15 años, 6 meses
Puntos: 2
Listo ... !!!!!
pongo el tip por si alguien lo necesita !!!
Saludos !!

$desc = str_replace("\n", "", $desc);
$desc = str_replace("\r", "", $desc);
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 09:33.