Pues acabo de terminar de hacer un PHP super básico, que básicamente sirve para aquella gente tan despistada como yo, que no haya usado SET NAMES utf8 antes, haya cambiado de idea, y haya jodido todo.
Básicamente, si tenéis algún carácter que no sea UTF-8 y al cambiar la cotejación de PHP o MySQL se haya jodido todo, aquí podréis volver todo UTF-8.
Aquí el código:
Código
<?php //Functions foreach($needles as $needle) { if ($res !== false) $chr[$needle] = $res; } } //Valores de conexion $localhost = ''; $dbuser = ''; $dbpass = ''; $dbname = ''; //Conexión + UTF-8 $conn = mysqli_connect($localhost, $dbuser, $dbpass, $dbname) or die('Could not connect: ' . mysqli_error()); echo '<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </head> <body>'; $unwanted_array = array( 'Š' , 'š' , 'Ž' , 'ž' , 'À' , 'Á' , '' , 'Ã' , 'Ä' , 'Å' , 'Æ' , 'Ç' , 'È' , 'É' , 'Ê' , 'Ë' , 'Ì' , 'Í' , 'Î' , 'Ï' , 'Ñ' , 'Ò' , 'Ó' , 'Ô' , 'Õ' , 'Ö' , 'Ø' , 'Ù' , 'Ú' , 'Û' , 'Ü' , 'Ý' , 'Þ' , 'ß' , 'à' , 'á' , 'â' , 'ã' , 'ä' , 'å' , 'æ' , 'ç' , 'è' , 'é' , 'ê' , 'ë' , 'ì' , 'í' , 'î' , 'ï' , 'ð' , 'ñ' , 'ò' , 'ó' , 'ô' , 'õ' , 'ö' , 'ø' , 'ù' , 'ú' , 'û' , 'ý' , 'ý' , 'þ' , 'ÿ' ); $sql = "SHOW TABLES FROM toomanyd_database"; if (!$resultado) { echo "Error de BD, no se pudieron listar las tablas\n"; exit; } $curfila = $fila[0]; if (!$resultado1) { exit; } $number = $anum['last']; for($i = 1; $i <= $number; $i++) { $field = $fila['Field']; $acon = mysqli_fetch_array(mysqli_query($conn, "SELECT `$field` as content FROM `$curfila` WHERE id='$i'")); $content = $acon['content']; if($content != null) { if($sanitized != $content && strposa($sanitized, $unwanted_array, 1)) { } } } } } } } } } echo '</body> </html>'; ?>
Puede que haya errores puesto que uso mysql, y he hecho una conversión rapida a mysqli...
NOTA: Haced una copia de seguridad de vuestra base de datos.
NOTA2: Debéis guardar el archivo en UTF-8 (no es necesario, pero una recomendación)
Un saludo.