Agregar datos en un cuador de descripción

</tr>
<tr valign="baseline">
<td nowrap="nowrap" align="right" size="32">Descripción : </td>
<td><textarea name="strDescripcion" cols="32" type="text" rows="6"></textarea></td>
</tr>

Hola, en una pagina admin cuando voy a agregardatos en un cuadro de descripción como el de arriba, yo escribo así:

Marca: Ford

Modelo: KA Sport

Cilindrada: 1300c.c.

Color: Rojo

Tapizado: cuero

Etc, etc,

Y en el resultado de la descripción me sale:

Marca: Ford Modelo: Ka Sport Cilindrada: 1300c.c. Color: Rojo Tapizado: Cuero etc, etc.

Como hacer para que salte de una linea a otra y no toda la información en una sola linea.

1 Respuesta

Respuesta
1

Dependerá mucho de como funcione internamente tu aplicación. Se me ocurre transformar ciertos caracteres a html para que cuando los despliegues se vean los saltos de línea.

En la sección donde muestras el contenido de lo que has ingresado en el textarea haz lo siguiente:

//Asumiendo que la variable donde viene esa información se llama strDescripcion
//transform los saltos de línea en etiquetas html
$strDescripcion = str_replace("\r","<br>",$strDescripcion);
//despliegas el resultado
Echo $strDescripcion;

Si no funciona o tienes dudas quedo atento para ayudarte.

Gracias, mas tarde lo probaré, también me gustaría tener para otras paginas ese cuadro donde pusiste los códigos php, yo probé códigos php dentro del cuadro de descripción y en el resultado no sale nada, gracias saludos.

Disculpa no entendí tu segunda pregunta, donde habías probado el código php. ¿Qué significar colocar códigos php dentro del cuadro de descripción?

¿Me podrías anexar el código donde hiciste eso?

Hice lo siguiente:

...........

</tr>
<tr valign="baseline">
<td nowrap="nowrap" align="right" size="32">Comentario:</td>
<td><textarea name="strDescripcion" cols="32" type="text" rows="6"></textarea></td>
</tr>
<tr valign="baseline">
<td nowrap="nowrap" align="right">&nbsp;</td>
<td><input type="submit" value="Enviar" /></td>
</tr>
</table>
<input type="hidden" name="MM_insert" value="form1" />
</form>
<p>&nbsp;</p>
<>?php
//Asumiendo que la variable donde viene esa información se llama strDescripcion
//transform los saltos de línea en etiquetas html
$strDescripcion = str_replace("\r","<br>",$strDescripcion);
//despliegas el resultado
echo $strDescripcion;
?<>

En la

<table>

</table>

no he añadido nada y abajo de la table y dentro del body he colocado loscodigos y las cosas sigue igual, saludos.

Te recuerdo que php es un lenguaje del lado servidor, cuando tu escribes en un formulario esta información está en el lado cliente (computadora) hasta el momento que haces submit en un formulario.

No podrás ver la información codificada hasta que la procese php, o sea en el momento en que apretás sobre el botón submit y esa información va a ser guardada en el servidor.

Hola, no hace falta que disculpes que no pasa nada, mi segunda pregunta quiero decir, en ese mismo cuadro de descripción donde no salta una linea con otra, hice una prueba escribiendo así:

<>?php

echo "Hola amigo";

?<>

y en el resultado no sale nada, ni una letra, por eso me gustaría tener un cuadro de descripción que pueda poner códigos php para que salga los códigos en la pagina de los resultados, si no has entendido muy bien , te explicare mejor, saludos.

Tienes qué abrir php con estas etiquetas <? ¿php y cerrar con esto?>

¿
<?php
echo "Hola amigo";
?>

Lo otro es que tienes que validar que php esta funcionando bien en tu sitio y validar los errores que arroja el script sobre el cual deseas trabajar.

<a>http://www.comocreartuweb.com/consultas/showthread.php/53899-Saltos-de-l%C3%ADnea-en-formularios</a>

Hola de nuevo,permíteme conversar, no tengo experiencia en PHP, creo que los códigos que me diste es incorrecto, no tiene contacto con strDescripcion, no crees que debe ser que tenga $salto_linea = $_POST['strDescripcion']

como el de la pagina de arriba que te di?, y por otro lado donde debo colocar los códigos, dentro del body?, fuera de <html> </html>?, saludos.

Hola de nuevo, he encontrado algo, entré en la BD y en strDescripcion si aparece el salto de linea, entonces debemos poner los códigos en la pagina del resultado donde publica lo insertado, confírmame si los códigos que me diste es la correcta, saludos.

Están correctos, pero como desconozco la forma en la cual hiciste tu aplicación (porque no estoy en tu computadora) explícitamente en el comentario expuse lo siguiente:

//Asumiendo que la variable donde viene esa información se llama strDescripcion

Tu tienes que cambiar el nombre de la variable por el que corresponda, y si tomarás directamente desde post la variable $_POST['strDescripcion'] es correcta.

Independiente si mi ejemplo es correcto o no (por las razones que te explicaba de desconocer el contexto de tu aplicación), tu solo tienes que enfocarte en la situación de que los saltos de línea de texto "\r" tienes que transformarlos a etiquetas html "<br>"

Y eso se hace en la siguiente línea de código (independiente del nombre de la variable, el contenido de esta, tiene que ser el texto que proviene desde el campo de texto en el formulario).

$strDescripcion = str_replace("\r","<br>",$strDescripcion);

Por otro lado, php retorna html como respuesta. tienes que posicionar el código en el dom de tu archivo en la sección donde corresponda mostrar ese contenido.

Te recuerdo que todo el contenido html va en las etiquetas <body></body>

Hola amigo, todo ok, solucionado, ya me sale el salto de linea, en add_datos.php donde inserto los datos no esta el fallo, el fallo estaba en public_datos.php donde aparece los datos insertados, y he colocado lo siguiente:

<>?php
//Asumiendo que la variable donde viene esa información se llama strDescripcion
//transform los saltos de línea en etiquetas html
$strDescripcion = str_replace("\r","<br>",$row_TitleDescripcion['strDescripcion']);
//despliegas el resultado
?<>
<div class="muestra_titledescripcion_datos">
<div class="muestra_title"><?php echo $row_TitleDescripcion['strTitle']; ?></div>
<div class="muestra_descripcion"><?php echo $strDescripcion ?></div>
</div>

Pongo en add_datos.php:

1/ Hola

2/ Amigo

En public_datos.php me sale como indica arriba

pero, si pongo:

<>?php

echo "Hola amigo";

?<>

me sale:

echo "Hola amigo";

?<>

sin la primera linea,

vuelvo a colocar:

<>?php

<>?php

echo "Hola amigo";

?<>

lo mismo, desaparece los dos primeros <>?php

vuelvo a poner:

. (un punto, para dejar la primera linea en blanco)

<>?php

echo "hola amigo";

?<>

vuelve a desaparecer el punto y el <>?php

bueno, espero tu respuesta y puntúo, saludos.

Recuerda que tienes que abrir php con esto

¿
<?php

Y cerrar php con esto

¿
?>

En el código que me indicas aparece esto

¿
?<>

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas