bueno os dejo el código
Código PHP:
include_once('conn.php');
function sinacentos($string)
{
$string = trim($string);
$string = str_replace(
array('á', 'à', 'ä', 'â', 'ª', 'Á', 'À', 'Â', 'Ä'),
array('a', 'a', 'a', 'a', 'a', 'A', 'A', 'A', 'A'),
$string
);
$string = str_replace(
array('é', 'è', 'ë', 'ê', 'É', 'È', 'Ê', 'Ë'),
array('e', 'e', 'e', 'e', 'E', 'E', 'E', 'E'),
$string
);
$string = str_replace(
array('í', 'ì', 'ï', 'î', 'Í', 'Ì', 'Ï', 'Î'),
array('i', 'i', 'i', 'i', 'I', 'I', 'I', 'I'),
$string
);
$string = str_replace(
array('ó', 'ò', 'ö', 'ô', 'Ó', 'Ò', 'Ö', 'Ô'),
array('o', 'o', 'o', 'o', 'O', 'O', 'O', 'O'),
$string
);
$string = str_replace(
array('ú', 'ù', 'ü', 'û', 'Ú', 'Ù', 'Û', 'Ü'),
array('u', 'u', 'u', 'u', 'U', 'U', 'U', 'U'),
$string
);
$string = str_replace(
array('ñ', 'Ñ', 'ç', 'Ç'),
array('n', 'N', 'c', 'C',),
$string
);
//Esta parte se encarga de eliminar cualquier caracter extraño
return $string;
}
$consulta = "SELECT id, alias FROM MiTabla where id between 1 and 15";
$result = $dbh->query($consulta);
foreach ($result as $row) {
$id=$row['id'];
$alias=sinacentos($row['alias']);
$sql = "UPDATE MiTabla
SET alias=?
WHERE id=?";
$q = $dbh->prepare($sql);
$q->execute(array($alias,$id));
}
$dbh = NULL;
por ejemplo un campo alias tiene la valor "y-al-tercer-año-resucitó" y despues de pasarla por el script queda igual. a ver porfavor si alhuien me puede ayudar con esto.