Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Problema inserimento testi in MySQL

    Ciao a tutti,

    Esiste un modo univoco per gestire gli apici in un inserimento sql?

    Mi spiego: Il problema è inserire il testo di una textarea in un campo
    di una tabella.
    L'istruzione che ne consegue è simile a:

    $sql = 'INSERT INTO tab SET campo='.$_POST['campo']', etc=''';

    Se nell'a textarea viene inserito un apostrofo il comportamento cambia
    da server a server... Alcuni mettono in automatico i backslash altri
    no.

    Addirittura ho trovato diversità tra l'invio di un form standard e
    l'utilizzo di AJAX.

    Qualcuno sa darmi una mano?


    Grazie!
    Marco Pegoraro.
    By Pegoraro Marco
    http://adessoweb.biz- AdessoWEB - Siti web professionali a prezzo accessibile!
    http://consulenza-web.com- Il mio blog!

  2. #2
    Utente di HTML.it L'avatar di marco80
    Registrato dal
    May 2005
    Messaggi
    1,357
    Prova a mettere nella query : mysql_escape_string($_POST['testo'])...

  3. #3
    Ci provo, però io sono alla ricerca di un metodo indipendente dal db.

    Lavoro su un framework mio... uso +- indistintamente mysql, sqlserver, access, excel, csv, posGres... non vorrei dipendere da una funzione specifica di mysql!

    Grazie comunque!
    Marco.
    By Pegoraro Marco
    http://adessoweb.biz- AdessoWEB - Siti web professionali a prezzo accessibile!
    http://consulenza-web.com- Il mio blog!

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    47

    RE: Problema inserimento testi in MySQL

    Dai un occhiata al tutorial di Magic Quotes

  5. #5
    Magic quotes l'ho già visto.

    Praticamente mi sono costruito un funzione per l'inserimento dei testi il cui funzionamento è qui descritto:

    ---
    SE magic_quotes_attivo ALLORA
    restituisci stringa entrante
    ELSE
    restituisci stringa entrante con addSlashes
    ---

    Il problema è che da server a server non sempre funziona!
    a volte magic quotes sembra non essere attivo eppure le stringe vengono passate con l'escape lo stesso!

    C'è la soluzione molto semplice di effettuare un paio di "stripSlashes" e poi un "addSlashes" ma non è per niente una soluzione elegante!!!!
    By Pegoraro Marco
    http://adessoweb.biz- AdessoWEB - Siti web professionali a prezzo accessibile!
    http://consulenza-web.com- Il mio blog!

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.