Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    [MYSQL] Se inserisco apici lui imposta \' perchè?

    non riesco a capire perchè ogni volta che inserisco una stringa con ' o " automaticamente mysql iposta \ davanti a questi caratteri perchè? :master:

    Ho immaginato che fosse perchè quando ho creato le tabelle lui imposta come collation latin1_swedish_ci
    ho provato a impostare il collation a null ma lui lo reimposta a latin1_swedish_ci .. come faccio? non posso riprendere in mano tutte le tabelle..... c'è un altra soluzione?

  2. #2

    Re: [MYSQL] Se inserisco apici lui imposta \' perchè?

    Originariamente inviato da sally3000
    non riesco a capire perchè ogni volta che inserisco una stringa con ' o " automaticamente mysql iposta \ davanti a questi caratteri perchè? :master:

    Ho immaginato che fosse perchè quando ho creato le tabelle lui imposta come collation latin1_swedish_ci
    ho provato a impostare il collation a null ma lui lo reimposta a latin1_swedish_ci .. come faccio? non posso riprendere in mano tutte le tabelle..... c'è un altra soluzione?
    "quel" collation e' di default puoi modificarlo ma non eliminarlo.

    Non e' mysql che aggiunge il carattere di escape.... lui non si permette tanto sui dati ricevuti. Sara' piuttosto il php con una delle sua funzioni oppure con il settaggio ad on delle magic_quote_gpc (g = get, p = post, c = cookie).

    Il carattere di escape e' necessario per precisare che "quel" carattere che segue e' parte della stringa e non un carattere di controllo. Tutto qui. Si toglie con stripslashes().

    dai una occhiata al manuale:

    http://it2.php.net/manual/it/functio...ape-string.php
    http://it2.php.net/manual/it/function.addslashes.php
    http://it2.php.net/manual/it/function.stripslashes.php

    http://it2.php.net/manual/it/ref.info.php

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    anche se inserisco la stringa con phpMyAdmin lo fa... ma ho notato che lo fa solo con mysql che ho qui in locale e non sul mysql che ho su un server linux....

  4. #4
    Originariamente inviato da sally3000
    anche se inserisco la stringa con phpMyAdmin lo fa... ma ho notato che lo fa solo con mysql che ho qui in locale e non sul mysql che ho su un server linux....
    phpmyadmin e' uno script php e sicuramente l'autore ha fatto in modo da inserire in modo controllato l'escape. Cosa che dovresti fare pure tu con i tuoi script....

    prova a dare un'occhiata ai file di phpmyadmin (es.: libraries/common.lib.php)... ovviamente occhio alle varie versioni di phpmyadmin.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    quindi che soluzione devo usare? :master:

  6. #6
    Originariamente inviato da sally3000
    quindi che soluzione devo usare? :master:
    Cosa dovresti fare e' nei link che ti ho postato prima. devi provvedere a gestire il carattere di escape. Inserimento ed estrazione.... se passi il dato da GET, POST o COOKIE ed il magic_quote_gcp e' ad ON l'escape lo mette da solo , altrimenti dovrai metterlo tu. Quando leggerai i dati dal db, lo togli.erai

    Viene consigliato di evitare l'uso delle magic_quote automatizzato per problemi di pesantezza dello script e per questioni di sicurezza. Si possono rimuovere e riassegnare con le funzioni indicate su, oppure disattivarle del tutto con php.ini o .htaccess.



    @edit ... ho trovato un link che potrebbe interessarti.

    http://forum.html.it/forum/showthrea...66#post6311366

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Originariamente inviato da piero.mac
    se passi il dato da GET, POST o COOKIE ed il magic_quote_gcp e' ad ON l'escape lo mette da solo , altrimenti dovrai metterlo tu. Quando leggerai i dati dal db, lo togli.erai
    ...che diavolo stai dicendo willis!

  8. #8
    Originariamente inviato da luca200
    ...che diavolo stai dicendo willis!
    quello che dice il manuale... quale sarebbe la differenza? ....


    ; - magic_quotes_gpc = Off [Performance]
    ; Input data is no longer escaped with slashes so that it can be sent into
    ; SQL databases without further manipulation. Instead, you should use the
    ; function addslashes() on each input element you wish to send to a database.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  9. #9
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Originariamente inviato da piero.mac
    quale sarebbe la differenza? ....
    Questa...
    Originariamente inviato da piero.mac
    Quando leggerai i dati dal db, lo togli.erai
    Se il dato è gestito correttamente non c'è niente da togliere.


    COMUNQUE:
    visto che non avevo mai scritto pillole, e che non ho trovato niente sull'argomento...
    eccola!

  10. #10
    Originariamente inviato da luca200
    Questa...

    Se il dato è gestito correttamente non c'è niente da togliere.
    Ah... OK ... se devo essere sincero l'ho messo editando successivamente per tagliare corto visto che l'argomento lo consideravo esaurito dopo i primo due post. Un po' pirlesco.... d'accordo.

    COMUNQUE:
    visto che non avevo mai scritto pillole, e che non ho trovato niente sull'argomento...
    eccola!
    alleluja... bene se e' servito a farti (pre)scrivere una pillola.

    Buon anno farmacista, da willis

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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.