Foros del Web » Programando para Internet » PHP »

Sustitucion de caracteres o palabras (TEXT)

Estas en el tema de Sustitucion de caracteres o palabras (TEXT) en el foro de PHP en Foros del Web. Alguien tendra un pedazo de codigo con el que me pueda dar una idea de como remplazar, por ejemplo: Código: á por á ñ por ...
  #1 (permalink)  
Antiguo 12/05/2002, 10:36
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 22 años, 3 meses
Puntos: 5
Sustitucion de caracteres o palabras (TEXT)

Alguien tendra un pedazo de codigo con el que me pueda dar una idea de como remplazar, por ejemplo:

Código:
á por á
ñ por ñ
"enters" por <br>
Los datos los traigo de un campo TEXT de una BD de MySQL. Y son mas o menos largos los textos.

¿Que precauciones debo tomar?
¿Que limitantes tengo?
¿en que momento de la generacion del código es mejor hacer la conversión?

Gracias de antemano





<tr>
<td bgcolor="#339933"> <font face="Verdana, Arial" size="1" color="#FFFFFF">>>
[/CODE]</td> <td align="right" bgcolor="#666666">
  #2 (permalink)  
Antiguo 12/05/2002, 12:25
Avatar de Webstudio
Colaborador
 
Fecha de Ingreso: noviembre-2001
Ubicación: 127.0.0.1
Mensajes: 3.499
Antigüedad: 22 años, 5 meses
Puntos: 69
Re: Sustitucion de caracteres o palabras (TEXT)

Manoloweb, si le das una leida más extensa al Manual del PHP, verás que hay funciones para hacer ese tipo de conversión, como ser html_entities() o nl2br();

En que momento conviene hacer la conversion?? Pues 1 sola vez. Después de tomar los datos del usuario, los conviertes y los guardas en la base ya convertidos, para que la próxima vez que los necesites, los muestres directamente, ya que no conviene hacer una reconversion por cada vez que muestres el texto.

Saludos.

<hr><font size=2 face="verdana">- Pablo Daniel Rigazzi (Webstudio)
<font size=1 color="#333333">COORDINADOR PROYECTO REGIONALIZACION ARGENTINA
Visita <a href="http://www.web-studio.com.ar" target="_blank">Web Studio</a> - Tutoriales Photoshop</fo
  #3 (permalink)  
Antiguo 12/05/2002, 13:55
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 22 años, 3 meses
Puntos: 5
Re: Sustitucion de caracteres o palabras (TEXT)

Como siempre, muchas gracias WS

Hasta pronto! ;)

<tr>
<td bgcolor="#339933"> <font face="Verdana, Arial" size="1" color="#FFFFFF">>>
[/CODE]</td> <td align="right" bgcolor="#666666">
  #4 (permalink)  
Antiguo 12/05/2002, 18:47
 
Fecha de Ingreso: enero-2002
Mensajes: 12
Antigüedad: 22 años, 3 meses
Puntos: 0
Re: Sustitucion de caracteres o palabras (TEXT)

Que hay manolo,
intenta algo asi al final del query:

Código:
$nota= ereg_replace(&quot;\n&quot;,&quot;&lt;br&gt;&quot;, $res[nota]);
a ver si te funciona

saludos,

  #5 (permalink)  
Antiguo 12/05/2002, 18:49
 
Fecha de Ingreso: enero-2002
Mensajes: 12
Antigüedad: 22 años, 3 meses
Puntos: 0
Re: Sustitucion de caracteres o palabras (TEXT)

igual y lo puede hacer antes de el print de la variable


saludos
  #6 (permalink)  
Antiguo 14/05/2002, 13:32
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 22 años, 3 meses
Puntos: 5
Re: Sustitucion de caracteres o palabras (TEXT)

Muchas gracias emmos!!

Hasta pronto! ;)

<tr>
<td bgcolor="#339933"> <font face="Verdana, Arial" size="1" color="#FFFFFF">>>
[/CODE]</td> <td align="right" bgcolor="#666666">
  #7 (permalink)  
Antiguo 10/03/2003, 02:04
Avatar de futilidad  
Fecha de Ingreso: julio-2002
Mensajes: 388
Antigüedad: 21 años, 9 meses
Puntos: 0
Retomando la conversacion

jejej disculpen que retome esta discusión

Entonces es mejor almacenar en nuestra base de datos un texto con etiquetas html, ¿por que? ¿se consumen mas recursos?

Bueno, de antemano agradesco su respuesta
  #8 (permalink)  
Antiguo 10/03/2003, 02:14
Avatar de futilidad  
Fecha de Ingreso: julio-2002
Mensajes: 388
Antigüedad: 21 años, 9 meses
Puntos: 0
se me olvidaba

Al guardar el texto con etiquetas html en la base de datos

¿No afecta esto en caso de realizar una consulta de busqueda en este campo?

¿si es asi, como se puede solucionar esto?

de antemano gracias por las respuetas
  #9 (permalink)  
Antiguo 10/03/2003, 07:38
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
SI guardar HTML te refieres a por ejemplo guardar un <br> como salto de línea HTML en tu BD en vez de dejarlo como \n original (de una entrada <input> por ejemplo de un formulario).

Yo guardo el formato original ( \n) en la BD y a la hora de presentar esos datos en el medio que corresponda le aplico la correspondiente conversión .. SI en para el navegador (HTML) le aplico el nl2br(). Date cuenta que un \n es un byte .. y <br> por ejemplo son 4 bytes en tu BD si lo guardas ... Por contra .. cada consulta que hagas a tu BD y obtengas ese dato aplicandole el nl2br() será consumos de recursos (proceso/memoria) ...

Guardar el formato original (\n) .. te facilita "exportar" esos datos a cualquier otro medio .. sea HTML para navegadores .. o incluso si lo necesitases WML (para dispositivos WAP moviles), sino .. tendrias q ir convirtiendo los <br> en el códido del salto de linea para ese tipo de dispositivo en concreo .. mientras que PHP por lo menos ya te pone a tu disposición nl2br() (q sería lo mismo que str_replace() .. )

Un saludo,
  #10 (permalink)  
Antiguo 17/09/2003, 00:05
Avatar de futilidad  
Fecha de Ingreso: julio-2002
Mensajes: 388
Antigüedad: 21 años, 9 meses
Puntos: 0
Despues de muchos meses

DEspues de muchos meses me resurgio una duda sobre este tema ya que me topo con una dificultad

en el caso de un buscador dentro de la base de datos

¿que hago si por ejemplo la informacion esta guardada "coacc& iacute;on" y dentro del formulario ingresen "coaccion" o "coacción"?

Agradesco si alguien me responde este post

pd. no se como escribir caraceres html sin que me los convierta, por eso escribi "coacci& iacute;on" separadp
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 11:55.