Foros del Web » Programando para Internet » PHP »

Eliminar salto de linea al insertar campo

Estas en el tema de Eliminar salto de linea al insertar campo en el foro de PHP en Foros del Web. Hola, resulta que tengo un formulario con un campo texto y cuando paso lo de la caja a la base de datos se queda un ...
  #1 (permalink)  
Antiguo 28/12/2006, 20:54
 
Fecha de Ingreso: noviembre-2003
Mensajes: 267
Antigüedad: 20 años, 5 meses
Puntos: 4
Eliminar salto de linea al insertar campo

Hola, resulta que tengo un formulario con un campo texto y cuando paso lo de la caja a la base de datos se queda un salto de linea al finay a cuando recupero esos valores se me modifica la estructura por su culpa.

Hay algún modo de eliminarlo de la variable que se va a insertar a la DB ??
o algúna otra idea..

Gracias..
  #2 (permalink)  
Antiguo 28/12/2006, 21:03
Avatar de asinox  
Fecha de Ingreso: enero-2002
Ubicación: Santo Domingo
Mensajes: 2.712
Antigüedad: 22 años, 2 meses
Puntos: 6
Re: Eliminar salto de linea al insertar campo

salto de linea? que raro
pero trata con $campo=trim($_POST[´campo´]);


trim quita los espacios en blando de lado y lado..espero qeu eso te ayude, por que no se como es que se mete un salto de linea en un input text

bueno..
__________________
www.dataautos.com
  #3 (permalink)  
Antiguo 29/12/2006, 07:18
Avatar de holahola  
Fecha de Ingreso: mayo-2005
Ubicación: Móstoles - (Madrid)
Mensajes: 214
Antigüedad: 18 años, 11 meses
Puntos: 1
Re: Eliminar salto de linea al insertar campo

Quizás cuando dices campo de texto pueda ser una textarea.

Si es así, yo solucioné algo parecido con la siguiente función:

Código PHP:
//==================================================================================
// Se trata de eliminar "retornos de carro" excesivos
//==================================================================================
function reducirRetornoCarro($comentario$max){
    
//-se desean dejar un máximo de retornos de carro "$max", pero como siempre vienen
    // doble, (por venir \r y \n) se multiplica por dos para conseguir el mismo efecto
    
$max=$max 2;
    
$long strlen($comentario);
    
$nuevo_comentario="";
    
$c13=0;
    For (
$i=0;$i<=$long;$i++)
    {
        
//echo '<br>iteración='.$i;
        
if (substr($comentario$i1) == "\r" or substr($comentario$i1) == "\n")
        {
            
$c13++;
            if (
$c13 $max)
            {
                
//no se hace nada: se esta omitiendo un retorno de carro
            
}else{
                
$nuevo_comentario.=substr($comentario$i1);
            }
        }else{
            
$nuevo_comentario.=substr($comentario$i1);
            
$c13=0;
        }
    }
    return 
$nuevo_comentario;

Espero que te sirva o al menos te dé una idéa. Un saludo.
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 18:58.