Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    Where con caratteri speciali

    Salve ragazzi...sono secoli che non scrivo più sul forum di html...anche se cmq ho seguito molte discussioni come spettatore ... tornando a noi...ho un problema riguardante una query

    SELECT * FROM TABLE WHERE campo = $var

    ora la variabile $var contiene il seguente valore

    Pubblicità
    da sapere che il DB la Tabella e la connessione al db da php è in CHARSET UTF-8

    il record è presente a DB, tanto e vero che se faccio la stessa query da PHPMYADMIN il record viene stampato a video mentre se lo faccio da PHP non mi mostra nulla e il function mysql_num_rows mi restituisce il valore 0.


    qualcuno ha qualche soluzione??....sò di per certo che il problema è il carattere speciale perchè se faccio la query eliminando qual carattere ( naturalmente poi modificando anche il record in corrispondenza ), php mi restituisce il record a video .

    Grazie a tutti per le risposte

  2. #2
    Utente di HTML.it L'avatar di bubi1
    Registrato dal
    Dec 2009
    Messaggi
    1,230
    sicuro che anche la connessione sia utf8?
    e la variabile da dove ti arriva?

  3. #3
    ciao bubi1, prima di tutto grazie per avermi risposto.....si la connessione è UTF-8 ecco il codice:

    Codice PHP:
    $db=mysql_connect(HOST,UTENZA,PASSWORD,true); //connessione database
    mysql_select_db(DATABASE,$db) or die('Errore Interno: Selezione del Database'); //selezione database
    mysql_set_charset('utf8',$db);  // Setto la connessiona al DB come UTF8 
    la variabile mi arriva da una FORM in modalità POST....

  4. #4
    Utente di HTML.it L'avatar di bubi1
    Registrato dal
    Dec 2009
    Messaggi
    1,230
    Ok, e invece la pagina dove si trova il form ti sei assicurato che sia sempre in utf8?
    Se usi ff, vai su informazioni pagina, generali, e guarda la riga "codifica". Non il metatag, quello potrebbe non determinare la codifica reale.

  5. #5
    effettivamente da codifica mi riporta ISO-8859-1....provo a salvare proprio il file in modalità UTF-8 .... one moment.... sinceramente pensavo che bastasse il metatag

  6. #6
    RISOLTO:
    cosa strana:
    al salvataggio codifico la pagina in UTF-8 per quando la visualizzo e vedo le informazioni di pagina mi riporta sempre il charset prima indicato...
    Allora riepilogando:

    DB : UTF8
    Tab: UTF8
    Connessione: UTF8
    Pagina: UTF8
    ......

  7. #7
    Utente di HTML.it L'avatar di bubi1
    Registrato dal
    Dec 2009
    Messaggi
    1,230
    A volte puo' essere anche webserver configurato in modo da forzare la codifica, ignorando il meta-tag.
    In questi casi si risolve o mettendo nel .htaccess la riga AddDefaultCharset UTF-8, o mandando il header 'Content-type: text/html; charset=utf-8' con php prima di qualsiasi output.

  8. #8
    capito...ora mi scatta OR DIE della query....

  9. #9
    Utente di HTML.it L'avatar di bubi1
    Registrato dal
    Dec 2009
    Messaggi
    1,230
    fai in modo che il tuo codice sia
    mysql_query(...) or die('errore: '.mysql_error());
    in questo modo vedi cosa ti risponde il server mysql

  10. #10
    ERRORE:
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'set Descr_Ogg='Interfaccia di integrazione online per la ricerca/chius' at line 1

    Stringa completa :

    Interfaccia di integrazione online per la ricerca/chiusura delle BA (per chiusura attività e riconciliazione indennizzo)

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 © 2024 vBulletin Solutions, Inc. All rights reserved.