Hola Fororeros.. que tal, espero que bien.. una solo consulta
Tengo esta funcion:
Código PHP:
function reem($texto1) {
//Rememplazamos caracteres especiales latinos minusculas
$find = array('á', 'é', 'í', 'ó', 'ú', 'ñ', '\"', '€', 'ü');
$repl = array('á', 'é', 'í', 'ó', 'ú', 'ñ', '"', '€', 'ü');
$texto1 = str_replace ($find, $repl, $texto1);
//Rememplazamos caracteres especiales latinos mayusculas
$find = array('Á', 'É', 'Í', 'Ó', 'Ú', 'Ñ', 'Ü', 'ç', 'Ç');
$repl = array('Á', 'É', 'Í', 'Ó', 'Ú', 'Ñ', 'Ü', 'ç', 'Ç');
$texto1 = str_replace ($find, $repl, $texto1);
return $texto1;
}
Solo quiero que cuando inserto un texto a la Base de datos, ya vayan escapadas como HTML, es decir, que las "á", las reemplace por "á"...
POr algun motivo que desconozco, la misma no surge efecto cuando hago la carga en la BD a traves de mi CMS que cree, es decir, se fijaran que previamente declaro la variable $titulo según lo que traje del FORM, pero quiero que lo traido sea reemplazado por caracteres o entidades HTML como ya expliqué, y lo hago asi...
Código PHP:
if(isset($_POST["btnGuardar"]))
{
$titulo = reem($_POST['titulo']); //esta linea
$descripcion = reem($_POST['descripcion']); //esta otra
$publicado = $_POST['publicado'];
$fecha= $_POST['fecha'];
//inserto los textos pero no me cambia los acentos por lo que pido
$sql = "insert into eventos (titulo, descripcion, pub, fecha)
values ('".$titulo."' ,'".$descripcion."', '".$publicado."', '".$fecha."'";
mysql_query($sql,$conn) or die(mysql_error($conn));
}
No funciona, me sigue llevando como caracteres extraños.
Sin embargo, tengo un comando que permite editar el contenido, con la misma funcion de
reem() , que al editar el texto, si me lo trasforma, y es identico a este code, solo que previamente traigo lo preexistente.
Porque podria no estar insertando los textos modificados?
COmo podría hacer para cambiar los acentos por entidades HTML validas segun mi ejemplo?
Gracias, y muy buen inicio de semana