Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 23

Discussione: [PHP] magic_quotes_gpc

  1. #1

    [PHP] magic_quotes_gpc

    Nel file php.ini magic_quotes_gpc è su On e magic_quotes_sybase è su Off

    se inserisco in un form delle " o ' nel database MYSQL mi vengono inserite pari pari.

    Inserisco con un semplice

    $query = "INSERT INTO tab (nome) VALUES ('$_POST[nome]')";

    magic_quotes non doveva aggiungere l'escape ?????????
    IO e TE 5 metri sopra il cielo.....perchè a 3 metri c'è già troppa gente.

    IO HO VISTO LA LUCE....

    Sono lo scippatore di emozioni

  2. #2
    se in $_POST['nome'] ci stanno apici singoli dovrebbe...

    puoi usare tu addslashes o meglio ancora mysql_escape_string (mi pare.. controlla sul mauale )

  3. #3
    meglio di mysql_escape_string c'è mysql_real_escape_string
    GdR Online - http://lenar.it/
    Yesterday is history. Tomorrow is mystery.
    Today is a gift. That's why it's called the present

  4. #4
    se c'è abilitato

    magic_quote_gpc allora tutti i campi GET, POST e COOKIE (GPC -> Get Post Cookie) saranno backslashati

    se usi magic_quote
    QUALSIASI stringa generi verrà backslashiata...e te lo sconsiglio pesantemente ^^

  5. #5
    Utente di HTML.it L'avatar di M4rko
    Registrato dal
    Dec 2000
    Messaggi
    619

    Re: [PHP] magic_quotes_gpc

    Originariamente inviato da marte101
    se inserisco in un form delle " o ' nel database MYSQL mi vengono inserite pari pari.
    (...)
    magic_quotes non doveva aggiungere l'escape ?????????
    verifica il comportamento di magic_quotes_gpc con un print_r($_POST)

    Quando inserisci stringhe con l'escape, sul lato del database poi non vedi il backslash, è normale.

    Esempio:
    INSERT INTO tab (campo) VALUES('Stringa con l\'apice');
    quando farai "SELECT campo FROM tab", vedrai solo "Stringa con l'apice". Questo perchè è il database che interpreta la stringa \' e la converte in '
    Tutti hanno bisogno di credere in qualcosa.
    Io credo che mi farò un'altra birra.


  6. #6
    Utente di HTML.it L'avatar di M4rko
    Registrato dal
    Dec 2000
    Messaggi
    619

    Re: [PHP] magic_quotes_gpc

    Originariamente inviato da marte101
    se inserisco in un form delle " o ' nel database MYSQL mi vengono inserite pari pari.
    (...)
    magic_quotes non doveva aggiungere l'escape ?????????
    verifica il comportamento di magic_quotes_gpc con un print_r($_POST)

    Quando inserisci stringhe con l'escape, sul lato del database poi non vedi il backslash, è normale.

    Esempio:
    INSERT INTO tab (campo) VALUES('Stringa con l\\'apice');
    quando farai "SELECT campo FROM tab", vedrai solo "Stringa con l'apice". Questo perchè è il database che interpreta la stringa \\' e la converte in '
    Tutti hanno bisogno di credere in qualcosa.
    Io credo che mi farò un'altra birra.


  7. #7
    per }gu|do[z]{®© e Daniele

    nel $_POST ci sono apici singoli e doppi ma nonostante Macic quote sia attivo quando vedo il dato tramite mysql admin nel db gli apici non vengono backslasciati.

    Se uso addslash invece il backslasch viene messo.

    Come mai
    IO e TE 5 metri sopra il cielo.....perchè a 3 metri c'è già troppa gente.

    IO HO VISTO LA LUCE....

    Sono lo scippatore di emozioni

  8. #8
    Originariamente inviato da marte101
    per }gu|do[z]{®© e Daniele

    nel $_POST ci sono apici singoli e doppi ma nonostante Macic quote sia attivo quando vedo il dato tramite mysql admin nel db gli apici non vengono backslasciati.

    Se uso addslash invece il backslasch viene messo.

    Come mai
    perchè come diceva marco passando da mysql e phpmyadmin chiaramente il backslash viene rimosso.. se ne aggiungi un altro tu con addslashes non viene rimosso.. ma è inutile.. ^__^

  9. #9
    Originariamente inviato da marte101
    per }gu|do[z]{®© e Daniele

    nel $_POST ci sono apici singoli e doppi ma nonostante Macic quote sia attivo quando vedo il dato tramite mysql admin nel db gli apici non vengono backslasciati.

    Se uso addslash invece il backslasch viene messo.

    Come mai
    prova a fare

    echo "\"dll è figo\"";

    guarda che ti stampa ed il backslash c'è

  10. #10
    farò questa prova ma vi ripeto che è un problema del database non di quello che viene stampato.

    E' già nel database che magic quote non funziona
    IO e TE 5 metri sopra il cielo.....perchè a 3 metri c'è già troppa gente.

    IO HO VISTO LA LUCE....

    Sono lo scippatore di emozioni

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.