Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura
Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura
Il primo Micro RGB di Samsung per il salotto è il 65 pollici da 2.749 euro. Sul banco di misura abbiamo rilevato 2.000 nit di picco, nero assoluto con il local dimming e il 91,4% del BT.2020, il colore più ampio che abbiamo misurato su un LCD
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre
Apple ha rinnovato iPhone 18 Pro soprattutto dentro: chip A20 Pro a 2 nm con memoria affiancata al SoC, camera di vapore tre volte più ampia, Dynamic Island più piccola del 25% grazie a Face ID sotto il display e fotocamera principale con diaframma variabile da f/1.48 a f/4. Lo abbiamo misurato al colorimetro e nei benchmark, usato con iOS 27 e messo alla prova in fotografia tra laghi, borghi e interni poco illuminati
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34
A Londra, per il trentennale dei Toughbook, Panasonic ha presentato il tablet G3 e il 2-in-1 34. Con Jon Tucker, a capo dell'ingegneria europea, abbiamo parlato di ciò che non si vede: batterie, antenne, porte seriali e accorgimenti nati sul campo
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


Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura Samsung Micro RGB R95H, il primo LCD a LED rossi...
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre iPhone 18 Pro: la recensione del miglior iPhone ...
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34 Panasonic, 30 anni di Toughbook: la "Bibbia...
realme C100x, lo smartphone economico con la batteria da 7500 mAh. La recensione realme C100x, lo smartphone economico con la bat...
Star Wars Zero Company è l'erede di XCOM 2 Star Wars Zero Company è l'erede di XCOM ...
Ricarica wireless dinamica fino a 150 kW...
Troppi report invalidi generati dall'IA:...
Furto di identità su scala nazion...
HPE vende i primi sistemi AMD Helios per...
Suno AI nel mirino dell'Antitrust: conte...
Xiaomi avrebbe cancellato il suo prossim...
WINDTRE BUSINESS rinnova l’offerta mobil...
BMW inaugura la fabbrica di batterie da ...
Googlebook apre al modding: bootloader s...
Denuvo non molla, vuole scoprire chi &eg...
Il miglior portatile tuttofare a basso p...
Gli agenti di OpenAI hanno mandato in ti...
Follie Amazon Prime: Zenbook è un...
MicroSD SanDisk in offerta Prime Day: Ul...
Steve Jobs, 15 anni dopo: John Ternus e ...
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: 22:55.


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