Pensavo di aver risolto il problema oggi utilizzando :
htmlspecialchars (utf8_encode (chiave di ricerca)), ma mi sono accorto dopo due anni che pur inserendo questa istruzione la cosa non funziona
Se da un lato riesco a far vedere i valori del database di MySQL del tipo Ü Ä ß Ö
con utf8_encode
lo stesso non si verifica se faccio una ricerca mettendo Ü Ä ß Ö nella chiave di ricerca perchè ?

Questo l'imput da cui parto (ovvio che sono file php - <?php .... ?>) :

filedipartenza.php
//vari tag
echo "<form method=post action=file.php>\n";
//Qui sotto metto il cognome
echo "<input type=\"text\" size=\"30\" name=\"Tipox\">\n";
echo "<input type=\"submit\" value=\"Invio\">\n";
echo "</form>\n";


file.php
$variabile = $_POST['Tipox'];
//apertura database
$sql = 'SELECT database.COGNOME,database.NOME FROM database WHERE database.COGNOME="'.$variabile.'" ORDER BY database.NOME';
//da qui in poi le varie variabili fuzionano
$result = mysql_query($sql, $global_db);
$nresult=0;$nresult=0;
while ($ris = mysql_fetch_array($result)) {
$res[$nresult]["COGNOME"] = $ris["COGNOME"];
$res[$nresult]["NOME"] = trim ($ris["NOME"]);
if ($res[$nresult]["COD"]) {
$nresult++;
}
}
//vari Tag
echo " ".utf8_encode(trim($res[$i]["COGNOME"]))."".utf8_encode(trim($res[$i]["NOME"]))."\n";

In pratica se non uso i caratteri tedeschi Ü Ä ß Ö per la ricerca quando inserisco il cognome funziona tutto se invece ne metto anche uno solo la ricerca non va.

Dove devo operare ? C'è qualche esempio da qualche parte ?
Grazie