Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Plaud Note Pro convince per qualità e integrazione, ma l’abbonamento resta un ostacolo
Plaud Note Pro convince per qualità e integrazione, ma l’abbonamento resta un ostacolo
Plaud Note Pro è un registratore digitale elegante e tascabile con app integrata che semplifica trascrizioni e riepiloghi, offre funzioni avanzate come template e note intelligenti, ma resta vincolato a un piano a pagamento per chi ne fa un uso intensivo
Google Pixel 10 è compatto e ha uno zoom 5x a 899€: basta per essere un best-buy?
Google Pixel 10 è compatto e ha uno zoom 5x a 899€: basta per essere un best-buy?
Google Pixel 10 è uno smartphone che unisce una fotocamera molto più versatile rispetto al passato grazie allo zoom ottico 5x, il supporto magnetico Pixelsnap e il nuovo chip Tensor G5. Il dispositivo porta Android 16 e funzionalità AI avanzate come Camera Coach, mantenendo il design caratteristico della serie Pixel con miglioramenti nelle prestazioni e nell'autonomia. In Italia, però, mancano diverse feature peculiari basate sull'AI.
Prova GeForce NOW upgrade Blackwell: il cloud gaming cambia per sempre
Prova GeForce NOW upgrade Blackwell: il cloud gaming cambia per sempre
L'abbonamento Ultimate di GeForce NOW ora comprende la nuova architettura Blackwell RTX con GPU RTX 5080 che garantisce prestazioni tre volte superiori alla precedente generazione. Non si tratta solo di velocità, ma di un'esperienza di gioco migliorata con nuove tecnologie di streaming e un catalogo giochi raddoppiato grazie alla funzione Install-to-Play
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 09-11-2009, 09:26   #1
CercoAiutoo
Member
 
Iscritto dal: Jul 2009
Messaggi: 125
[php + mysql] Caratteri accentati e Sicurezza

Salve a tutti,
Ho creato un form:

Codice:
<form method="post" action="modifica.php" enctype="multipart/form-data">
<input type="text" size="70" name="frase1"> 
<input type="submit" size="10" value="Invia" name="go">
</form>
e lo script per aggiungere la frase nel DB:

Codice:
if($_POST['frase1']!=""){

$fr= mysql_real_escape_string($_POST['frase1']);

$query = "INSERT INTO `frasi` (`frase`) VALUES
( '".$_POST['frase1']."')";

$risultato = mysql_query($query) or die("Query fallita: " . mysql_error() );

}

Solo che al posto dei caratteri accentati mi escono caratteri tutti strani come: ù è
Inoltre vicino agli apostrofi mi compare anche uno slash ( perchè uso mysql_real_escape_string per evitare sql injection ).


Come devo fare per mettere tutto a posto ? non capisco
CercoAiutoo è offline   Rispondi citando il messaggio o parte di esso
Old 09-11-2009, 09:28   #2
cruyffissimo
Member
 
L'Avatar di cruyffissimo
 
Iscritto dal: Oct 2009
Messaggi: 67
perchè usi la funzione, e poi il risultato non lo usi?
__________________
- Sei... Il numero perfetto!
- Ma non era Tre il numero perfetto?
- Si, ma la mia pistola ha sei colpi...

[cit:Il Buono...ne "Il Buono, Il Brutto E Il Cattivo"]
cruyffissimo è offline   Rispondi citando il messaggio o parte di esso
Old 09-11-2009, 09:51   #3
vhost87
Senior Member
 
L'Avatar di vhost87
 
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
Quote:
Originariamente inviato da CercoAiutoo Guarda i messaggi
Salve a tutti,
Ho creato un form:

Codice:
<form method="post" action="modifica.php" enctype="multipart/form-data">
<input type="text" size="70" name="frase1"> 
<input type="submit" size="10" value="Invia" name="go">
</form>
e lo script per aggiungere la frase nel DB:

Codice:
if($_POST['frase1']!=""){

$fr= mysql_real_escape_string($_POST['frase1']);

$query = "INSERT INTO `frasi` (`frase`) VALUES
( '".$_POST['frase1']."')";

$risultato = mysql_query($query) or die("Query fallita: " . mysql_error() );

}

Solo che al posto dei caratteri accentati mi escono caratteri tutti strani come: ù è
Inoltre vicino agli apostrofi mi compare anche uno slash ( perchè uso mysql_real_escape_string per evitare sql injection ).


Come devo fare per mettere tutto a posto ? non capisco
la funzione per la sicurezza va bene, elimina tutti gli escape.
però vedi di usare $fr

Tornando al discorso dei caratteri, classico. Che codifica usi per MySQL?
Inoltre... prova a &agrave; e &egrave;, usare quindi le codifiche HTML dei caratteri accentati
__________________
IT Developer at Hardware Upgrade S.r.l.
self.love(this.me());
vhost87 è offline   Rispondi citando il messaggio o parte di esso
Old 09-11-2009, 10:02   #4
CercoAiutoo
Member
 
Iscritto dal: Jul 2009
Messaggi: 125
Si avete ragione, avevo sbagliato a scrivere qui ma sullo script originale era apposto


Ecco la mia tabella:

Codice:
CREATE TABLE IF NOT EXISTS `frasi` (
  `frase_id` int(9) unsigned NOT NULL AUTO_INCREMENT,
  `frase` text NOT NULL,
  PRIMARY KEY (`frase_id`),
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

Escono ancora slash e lettere accentate strane... cosa dovrei fare ?
CercoAiutoo è offline   Rispondi citando il messaggio o parte di esso
Old 09-11-2009, 10:06   #5
vhost87
Senior Member
 
L'Avatar di vhost87
 
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
Quote:
Originariamente inviato da CercoAiutoo Guarda i messaggi
Si avete ragione, avevo sbagliato a scrivere qui ma sullo script originale era apposto


Ecco la mia tabella:

Codice:
CREATE TABLE IF NOT EXISTS `frasi` (
  `frase_id` int(9) unsigned NOT NULL AUTO_INCREMENT,
  `frase` text NOT NULL,
  PRIMARY KEY (`frase_id`),
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

Escono ancora slash e lettere accentate strane... cosa dovrei fare ?

MySQL non converte i caratteri speciali in entità HTML. Devi farlo tu e memorizzare l'entità HTML.
Non è un problema di MySQL se visualizzi quei caratteri
__________________
IT Developer at Hardware Upgrade S.r.l.
self.love(this.me());
vhost87 è offline   Rispondi citando il messaggio o parte di esso
Old 09-11-2009, 10:16   #6
CercoAiutoo
Member
 
Iscritto dal: Jul 2009
Messaggi: 125
Quote:
Originariamente inviato da michele.broggi Guarda i messaggi
MySQL non converte i caratteri speciali in entità HTML. Devi farlo tu e memorizzare l'entità HTML.
Non è un problema di MySQL se visualizzi quei caratteri

Ho usato questa funzione prima dell' inserimento nel DB :

Codice:
mysql_set_charset('utf8',$db_con);
E questa funzione prima di visualizzare le frasi con una SELECT:

Codice:
mysql_set_charset('latin1',$db_con);
e le lettere accentate ora si vedono e inseriscono bene
Ho fatto bene o è una soluzione "grezza" ?


Se va bene ora rimane solo il problema degli slash ( es. \' al posto di ' )
CercoAiutoo è offline   Rispondi citando il messaggio o parte di esso
Old 09-11-2009, 10:18   #7
vhost87
Senior Member
 
L'Avatar di vhost87
 
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
Quote:
Originariamente inviato da CercoAiutoo Guarda i messaggi
Ho usato questa funzione prima dell' inserimento nel DB :

Codice:
mysql_set_charset('utf8',$db_con);
E questa funzione prima di visualizzare le frasi con una SELECT:

Codice:
mysql_set_charset('latin1',$db_con);
e le lettere accentate ora si vedono bene
Ho fatto bene o è una soluzione "grezza" ?


Se va bene ora rimane solo il problema degli slash ( es. \' al posto di ' )
Va bene, anche se potrebbe non essere condivisibile la logica...
htmlstripslashes() può venirti in aiuto per l ultimo problema
__________________
IT Developer at Hardware Upgrade S.r.l.
self.love(this.me());
vhost87 è offline   Rispondi citando il messaggio o parte di esso
Old 09-11-2009, 10:30   #8
CercoAiutoo
Member
 
Iscritto dal: Jul 2009
Messaggi: 125
Quote:
Originariamente inviato da michele.broggi Guarda i messaggi
Va bene, anche se potrebbe non essere condivisibile la logica...
htmlstripslashes() può venirti in aiuto per l ultimo problema
htmlstripslashes non l' ho trovata.
ho usato stripslashes e poi htmlentities e funziona tutto bene grazie
CercoAiutoo è offline   Rispondi citando il messaggio o parte di esso
Old 09-11-2009, 10:30   #9
vhost87
Senior Member
 
L'Avatar di vhost87
 
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
Quote:
Originariamente inviato da CercoAiutoo Guarda i messaggi
htmlstripslashes non l' ho trovata.
ho usato stripslashes e poi htmlentities e funziona tutto bene grazie
Ecco la ricordavo male, senza HTML davanti
__________________
IT Developer at Hardware Upgrade S.r.l.
self.love(this.me());
vhost87 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Plaud Note Pro convince per qualità e integrazione, ma l’abbonamento resta un ostacolo Plaud Note Pro convince per qualità e int...
Google Pixel 10 è compatto e ha uno zoom 5x a 899€: basta per essere un best-buy? Google Pixel 10 è compatto e ha uno zoom ...
Prova GeForce NOW upgrade Blackwell: il cloud gaming cambia per sempre Prova GeForce NOW upgrade Blackwell: il cloud ga...
Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco Ecovacs Deebot X11 Omnicyclone: niente più...
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio Narwal Flow: con il mocio orizzontale lava i pav...
Il satellite cinese Jilin-1 ha fotografa...
Arrivano i nuovi iPhone ed è subi...
Il chip N1 degli iPhone 17 supporta il W...
La cinese Space Pioneer riesce a eseguir...
Xiaomi copia Apple: arriva la serie 17 e...
A 10 anni dalla prima rilevazione delle ...
Samsung annuncia il rilascio della One U...
La nuova MG4 spopola: già 26.000 ...
Monopattini pericolosi? Secondo una rice...
La Commissione Europea respinge le richi...
The Witcher: ecco le prime immagini dell...
Mitsubishi Electric verso l'acquisizione...
Pasticcio Tesla: nessuno vuole il Cybert...
Qualcomm, il nuovo SoC top di gamma &egr...
La memoria che cambierà l'AI: il ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 03:00.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v