Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di Threepwood
    Registrato dal
    Feb 2003
    Messaggi
    2,107

    [PHP-APACHE] Evitare gli apici...

    Salve a tutti!
    in genere mysql/php/apache sono già configurati per far si che se durante una query si trova un apice, questo non crea problemi.

    Stranamente, su un server che sto gestendo, ho il problema di dovere controllare tutti gli apici... (credo sappiate già cosa intendo..)

    Sapete che configurazione va fatta o che impostazione generale posso settare a php?
    Guybrush Threepwood

  2. #2
    In realta' quello che tu chiami problema (controllare direttamente i valori da inserire nelle query) e' il comportamento corretto, mentre il funzionamento generale (l'automatica aggiunta di backslash) e' il problema.

    Abituati a verificare che i dati che tratti siano validi, e usa specifiche funzioni per renderli sicuri prima di usarli in una query (controllandoli direttamente a seconda dei casi ed usando una funzione come mysql_real_escape_string() per evitare problemi).

  3. #3
    Utente di HTML.it L'avatar di Threepwood
    Registrato dal
    Feb 2003
    Messaggi
    2,107
    si, ovviamente

    in realtà la mia domanda è leggermente differente: su tutti i sistemi che faccio non ho problemi di correzione degli apici in quanto mysql (senza aggiungere le slash) non ha problemi a riconoscere un apice di "inserimento" da un apice di "campo"

    Stranamente su un sistema che sto facendo, ho questo problema... credo sia un parametro da mettere nel httpd.conf o nel php ini...
    Guybrush Threepwood

  4. #4
    Non e' mysql che lo fa, ma PHP. E' non e' una buona idea. Se tu scrivi i tuoi script basandoti su questa opzione e poi li trasferisci su un server su cui le magic quotes sono disattivate (o il tuo hosting cambia configurazione per qualsiasi motivo), allora avrai possibili falle di sicurezza in ogni query che hai scritto.

  5. #5
    come comando ho sempre usato htmlentities($variabile) e non ha mai dato problemi di inserimento.

  6. #6
    Originariamente inviato da theboss280489
    come comando ho sempre usato htmlentities($variabile) e non ha mai dato problemi di inserimento.
    Anche questa non e' una buona idea. Funziona, ma non ha molto senso. htmlentites() e' una funzione che serve per trasformare alcuni caratteri nelle loro entita' HTML in modo che siano interpretati dai browser per quello che sono senza un particolare significato. Salvare dati del genere direttamente nel database non da' nessun vantaggio, i dati andrebbero salvati come sono e trasformati solo quando davvero necessario, cioe' quando vengono inviati al browser. Infatti se usi quei dati in situazioni diverse dal mostrarli a un browser, tutto l'encoding sarebbe inutile e dovresti anzi decodificarlo.

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.