Bien, supongo que mi problema tendrá que ver con el collation de la bbdd. Explico.
Al insertar vía formulario (POST) un registro en mi bbdd, esta me interpreta los títulos así:
TÃ*tulos
el cotejamiento está en utf8_general_ci
a la hora de hacer echo en mi página el resultado es:
Títulos, pues tengo en charset en utf-8
Me gustaría saber porqué me guarda los registros con esos carácteres.
Ahora bien, he hecho un buscador que se basa en una página de form y otra que recoge los resultados. En esta última, pretendo hacer un str-replace. El caso es que al parecer, la página formulario al buscar ñ no me pasa por post "ñ", ni "ñ", ni tan solo "ñ", pero si que me devuelve ñ en la página de resultados, por lo que no puedo hacer el replace, puesto que no se que coño reemplazar. El resto de carcateres comunes me los busca bien.
Os paso las páginas:
form.php
------------------------------------------------------------------------------------
echo "<form id=\"form_global\" name=\"form_global\" method=\"post\" action=\"?m=buscador&a=resultados\">";
echo "<div class=\"borde\">
echo "Buscar <input type=\"text\" name=\"palabri\" />
<input type=\"submit\" class=\"button\" name=\"Buscar_global\" value=\"Buscar\" /></div></div>";
echo "</form>";
resultados.php
--------------------------------------------------------------------------------------
<?php
include "configuracion_news.php";
if (isset($_POST['Buscar_global'])) {
$resultado=mysql_query("SELECT * FROM navalcarnero_bienes
WHERE CONCAT(nav_denominacion,'',nav_descripcion_bien,'' ,nav_domiciliacion,'',nav_municipio,'',nav_titular idad,'',nav_pl_declaracion,'',nav_pl_expregistro,' ',nav_pl_fechapub,'',nav_valor,'',nav_calambi,'',n av_antigu,'',nav_estado_conservacion,'',nav_indice s_onomastico1,'',nav_indices_onomastico2,'',nav_in dices_onomastico3,'',nav_indices_onomastico4,'',na v_indices_onomastico5,'',nav_indices_onomastico6,' ',nav_indices_materia1,'',nav_indices_materia2,'', nav_indices_materia3,'',nav_indices_materia4,'',na v_indices_materia5,'',nav_indices_materia6,'',nav_ tipolog,'',nav_estilo,'',nav_uso,'',nav_orname,'', nav_nota_id_bien,'',nav_grado,'',nav_nota_prot_bie n,'',nav_estado,'',nav_propie,'',nav_bienes) LIKE '%$_POST[palabri]%'
UNION ALL SELECT * FROM chinchon_bienes
WHERE CONCAT(chin_denominacion,'',chin_descripcion_bien, '',chin_domiciliacion,'',chin_municipio,'',chin_ti tularidad,'',chin_pl_declaracion,'',chin_pl_expreg istro,'',chin_pl_fechapub,'',chin_valor,'',chin_ca lambi,'',chin_antigu,'',chin_estado_conservacion,' ',chin_indices_onomastico1,'',chin_indices_onomast ico2,'',chin_indices_onomastico3,'',chin_indices_o nomastico4,'',chin_indices_onomastico5,'',chin_ind ices_onomastico6,'',chin_indices_materia1,'',chin_ indices_materia2,'',chin_indices_materia3,'',chin_ indices_materia4,'',chin_indices_materia5,'',chin_ indices_materia6,'',chin_tipolog,'',chin_estilo,'' ,chin_uso,'',chin_orname,'',chin_nota_id_bien,'',c hin_grado,'',chin_nota_prot_bien,'',chin_estado,'' ,chin_propie,'',chin_bienes) LIKE '%$_POST[palabri]%'
", $conn);
if ($row = mysql_fetch_array($resultado)){
while ($field = mysql_fetch_field($resultado)){
echo "$field->name";} do {
if ($row['id_r']=='2'){
echo "<p class=\"results\"><img src=images/ico_n.jpg /> ";
} else {
echo "<p class=\"results\"><img src=/images/ico_ch.jpg /> ";
}
echo "<a rel=\"facebox[]\" href=\"modules/documentos/detallesfacebienes.php?id=$row[id]&id_r=$row[id_r]\" class=\"nav_titulo_registro\">".$row["nav_denominacion"]."</a></p> \n";
} while ($row = mysql_fetch_array($resultado)); } else {
echo "<p class=\"results\">¡ No se ha encontrado ningún registro !</p>";
}
}
Gracias a quien pueda aportar una sugerencia.
Saludos