Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 15 su 15
  1. #11
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    55
    Originariamente inviato da Ken90
    I dati sul DB salvali come entità HTML del tipo: "ò" --> "ò"
    Così di solito si risolvono i problemi, poi fai i vari cambi con la funzione specialchars e l'altra che non mi ricordo come si chiama di funzione D:
    All'inizio funzionava cosi infatti non avevo problemi.
    Ma ora ho necessita di fare ricerce in quei campi, e ho notato che se cerco Muller (scritto con la u normale) mi da il risultato sperato, ma se salvo in questo modo, la
    "SELECT * FROM table_ele WHERE descrizione LIKE '%$q%'"
    e scrivo "muller", ovviamente non mi da risultati, perche muller è diverso da "M& Atilde;& frac14;ller" o "M& uuml;ller", ma altrettanto risulta uguale a "Müller" !

    A meno che non trovo un sistema nella condizione di WHERE del tipo " CONVERTI (descrizione) LIKE '%$q%' " che me lo converta al volo, ma non sono riuscito a trovare comunque nulla.

  2. #12
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    55
    Originariamente inviato da torrone
    questo problema io lo risolvo insernedo questo dopo la conenssione al db

    Codice PHP:
    mysql_query("SET NAMES utf8",$db); 
    e quando c'è un invio dati con $_POST facendo l'escape così

    Codice PHP:
    $nome stripslashes(htmlentities($nomeENT_QUOTES'UTF-8')); 
    la prima funzione per il problema dell'aggiunta degli slash prima degli apostrofi e la seconda per la codifica dei caratteri...
    ho provato la tua soluzione, e diventa
    codice:
        $conn = mysql_connect($host, $user, $password);
        $db = mysql_select_db($dbname);
        mysql_query("SET NAMES utf8",$db);
        $err_db="";
    
        if(!$conn || !$db){ 
            die(mysql_error());
            $err_db="Errore di connessione al database";
        }
        else
            return mysql_query($sql);
    e la query modificata in
    "UPDATE $tablenameele SET descrizione = '".stripslashes(htmlentities($name_save, ENT_QUOTES, 'UTF-8'))."', ecc.

    ma comuqnue mi salva "M& uuml;ller"

  3. #13
    Utente di HTML.it L'avatar di torrone
    Registrato dal
    Apr 2006
    residenza
    Padova
    Messaggi
    1,128
    Originariamente inviato da Stranges
    ho provato la tua soluzione, e diventa
    codice:
        $conn = mysql_connect($host, $user, $password);
        $db = mysql_select_db($dbname);
        mysql_query("SET NAMES utf8",$db);
        $err_db="";
    
        if(!$conn || !$db){ 
            die(mysql_error());
            $err_db="Errore di connessione al database";
        }
        else
            return mysql_query($sql);
    e la query modificata in
    "UPDATE $tablenameele SET descrizione = '".stripslashes(htmlentities($name_save, ENT_QUOTES, 'UTF-8'))."', ecc.

    ma comuqnue mi salva "M& uuml;ller"
    è giusto che te lo salvi così!.. ho fatto una prova e anceh a me lo salva così:

    M& uuml;ller

    ora quando fai la ricerca passi il valore post con le funzioni che hai appena utilizzato per inserire il dato nel database così i valori coincideranno...

  4. #14
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    55
    Torrone, so che è giusto così, avevo anche pensato alla tua soluzione, ma funziona solo se effettivamente digitassi la "ü", ma con la "u" normale non funzionerebbe! ('& uuml'; != 'u' )

  5. #15
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    55
    Cioè ragazzi, non sarà che non esista un modo per trovare una parola in un campo di database con "à" digitando invece "a"!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.