Buenas, una vez mas necesito vuestra ayuda... tengo el siguiente codigo que lee un txt que tiene tilde y guarda la informacion en mysql. El problema es que guarda, pero justo asta el caracter antes de la tilde. Si en el txt viene 'San Martín' solo guarda 'San Mart'.
En el head tengo puesto:
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
y antes de todo para modificar el ini:
<?php ini_set("default_charset", "utf-8"); ?>
Os dejo el codigo que tengo.
Código PHP:
$archivo = $txtoriginal;
$fp = fopen($archivo,'r');
$cadena = fread($fp, filesize($archivo));
//echo $cadena;
require_once('clases/class.conexion.php');
$conexion = new classconexion();
$conexion->conectar();
//Nombre
$buscaini = '[nombre]';
$buscafin = '[/nombre]';
$posicion = strpos($cadena, $buscaini);
if ($posicion){
$posicionf = strpos($cadena, $buscafin);
if ($posicionf){
$nombre = substr($cadena,$posicion + strlen($buscaini),$posicionf - $posicion - (strlen($buscafin)-1));
echo $nombre . '<br>';
}
}
$query = insert into casarural (nombre) values ("' . $nombre . '");
$conexion->consultar($query);
$conexion->cerrarconexion();
Espero podais ayudarme... por mas que le doy vueltas no hay manera.
PD. Las @ me las guarda bien.