Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
PHP - Problema inspiegabile con Apostrofo
Forum - PHP - Problema inspiegabile con Apostrofo

Avatar
Thejuster (Member)
Guru^2


Messaggi: 1704
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 9:01
Venerdì, 02/10/2015
Ho un problema inspiegabile con l'apostrofo.


Ho utilizzato per un sito che sto realizzando ad un cliente, l'editor di testo TinyMCE

configurandolo in questo modo


Codice sorgente - presumibilmente PHP

  1. echo "Nome Pagina: <input type='text' name='nome'><br><br>";
  2.                                                
  3.                                
  4.                                                
  5. echo "
  6.                                                 <script type='text/javascript' src='editor/tinymce.min.js'></script>
  7. <script type='text/javascript'>
  8. tinymce.init({
  9.    selector: 'textarea',
  10.    theme: 'modern',
  11.    plugins: [
  12.        'advlist autolink lists link image charmap print preview hr anchor pagebreak',
  13.        'searchreplace wordcount visualblocks visualchars code fullscreen',
  14.        'insertdatetime media nonbreaking save table contextmenu directionality',
  15.        'emoticons template paste textcolor colorpicker textpattern imagetools'
  16.    ],
  17.    toolbar1: 'insertfile undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image',
  18.    toolbar2: 'print preview media | forecolor backcolor emoticons',
  19.    image_advtab: true,
  20.    templates: [
  21.        {title: 'Test template 1', content: 'Test 1'},
  22.        {title: 'Test template 2', content: 'Test 2'}
  23.    ]
  24. });
  25. </script>
  26.  
  27.  
  28.    <textarea name='content' style='width:100%'></textarea>
  29.    <br><br>
  30.    <input type='submit' value='Invia'>
  31. </form>
  32. ";





Normalmente ed in modo automatico, TinyMCE converte tutti i caratteri speciali in simboli esempio

< > ecc. ecc.

aggiungendo anche automaticamente paragrafi e varie formattazioni.


Il problema è quando provo a scrivere una frase contenente un apostrofo spunta il problema,
la pagina non mi viene caricata sul database.





Questo è il semplicissimo codice che ho fatto per caricare il testo



Codice sorgente - presumibilmente PHP

  1. <?php
  2.  
  3. include("header.php");
  4.  
  5.  
  6. $testo = $_POST['content'];
  7. $nome = $_POST['nome'];
  8.  
  9. mysql_query("INSERT INTO cv_page (nome,testo) VALUES ('$nome','$testo');");
  10.  
  11.  
  12. include("msg.php");
  13. Message::Show("Pagina Creata con successo.... <a href='index.php?act=gstpg'>Clicca qui per tornare indietro</a>");
  14.  
  15. ?>
  16.  
  17. <style>
  18. body{
  19. background-image: url('images/background.jpg');
  20. }
  21.  
  22. </style>





Dove sbaglio?

Ultima modifica effettuata da Thejuster il 02/10/2015 alle 9:03


PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5475
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 9:31
Venerdì, 02/10/2015
Devi usare la mysql_escape_string con il dato da inserire

P.S. Non è un problema inspiegabile ma uno dei più comuni affrontati da chi lavora con i db, da sempre...

Ultima modifica effettuata da nessuno il 02/10/2015 alle 9:46


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
PM Quote
Avatar
tasx (Dev Team)
Expert


Messaggi: 439
Iscritto: 15/12/2008

Segnala al moderatore
Postato alle 11:05
Venerdì, 02/10/2015


... sei un proxy che perde i pacchetti ...
PM Quote
Avatar
Thejuster (Member)
Guru^2


Messaggi: 1704
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 11:49
Venerdì, 02/10/2015
Molto strano..
In tutti questi anni non ho mai riscontrato questo problema.
Forse.non ho mai scritto un intero testo con apostrofi lol.

Ora risolvo grazie nessuno


PM Quote
Avatar
pierotofy (Admin)
Guru^2


Messaggi: 6110
Iscritto: 04/12/2003

Segnala al moderatore
Postato alle 17:00
Venerdì, 02/10/2015
Testo quotato

Postato originariamente da Thejuster:
In tutti questi anni non ho mai riscontrato questo problema.



Se hai scritto qualcosa di pubblico come un sito, dagli uno sguardo; come ha linkato tasx potresti aver lasciato delle SQL Injections aperte.


Seguimi su Twitter: http://www.twitter.com/pierotofy

Fai quello che ti piace, e fallo bene.
PM Quote