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

Discussione: magic_quotes_gpc

  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    433

    magic_quotes_gpc

    ciao a tutti come faccio (o meglio dove) a vedere se la funzione
    magic_quotes_gpc e' attiva???

    ho il problema con gli apici e quindi leggendo sul manuale di php (si html.it) ho trovato le funzioni:

    addslashes() che aggiunge \ dalla stringa
    e
    stripslashes() che toglie gli \ dalla stringa

    poi sotto c'e' scritto:

    Si osservi che se nel file php.ini la direttiva magic_quotes_gpc è impostata ad on, i dati provenienti da GET, POST e Cookie vengono modificati automaticamente senza bisogno di usare addslashes.

    dove vado io a vedere??
    e sopratutto come faccio a modificarlo??

    tenc iou! :master:
    Donerò loro dei fiori... poiché... sotto le nuvole... tutto è così rozzo e sporco

  2. #2
    get_magic_quotes_gpc()

    rende true / false... gestisci con una if se mettere o meno addslashes.


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

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    433
    se scrivo:

    $apice=get_magic_quotes_gpc();
    echo $apice;

    mi restituisce 1 -> E attivo??

    ho provato a scrivere:

    abc'def e sul db me lo salva ma poi quando lo riprendo mi restituisce solo abc
    cosa devo fare?
    Donerò loro dei fiori... poiché... sotto le nuvole... tutto è così rozzo e sporco

  4. #4
    codice:
    if(get_magic_quotes_gpc() ) { 
    echo "Sono attive non serve addslashes";
    } else {
    $stringa = addslashes($stringa)
    }
    Quando estrai a prescindere dalle magic_quote... (Servono a mettere, non a togliere il carattere di escape):

    .......
    $row = mysql_fetch_assoc($result);

    $testo = stripslashes($row['testo']);


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

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    433
    allora vediamo:

    get_magic_quotes_gpc() e' attiva e infatti la salva giusta nel db

    quindi per l' inserimento dei campi inserisco la stringa cosi' come la scrive l'utente

    es.:$str="abc'def";
    insert into.... (...$campo1='$str'..); giusto?

    quando la estraggo

    select ... ...

    $tab=mysql_fetch_array($veru,MYSQL_ASSOC);

    $str=stripslashes($tab['campo1']);

    giusto??

    ok quando scrivo la variabile e la metto come valorizzazione di un modulo:

    echo "<input type='text' name='campo1' value='$str' maxlength='50' size='20'>";

    mi visualizza solo i caratteri prima dell' apice ABC
    Donerò loro dei fiori... poiché... sotto le nuvole... tutto è così rozzo e sporco

  6. #6
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    433
    Scusami

    allora se scrivo la variabile

    echo $str;

    la scrive con l' apice abc'def

    se invece la metto nel modulo non la prende.... abc

    sai come si fa per far in modo che si prenda l'intera stringa anche nel modulo??
    Donerò loro dei fiori... poiché... sotto le nuvole... tutto è così rozzo e sporco

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    433
    risolto anche questo:

    //--corretto
    echo "<input type='text' name='sport' value=$sport maxlength='50' size='20'>";

    e non

    //--errato
    echo "<input type='text' name='sport' value='$sport' maxlength='50' size='20'>";

    grazie per l' aiuto!!
    Donerò loro dei fiori... poiché... sotto le nuvole... tutto è così rozzo e sporco

  8. #8
    //--corretto
    echo "<input type='text' name='sport' value=\"$sport\" maxlength='50' size='20'>";

    Devi mettere il doppio apice....


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

  9. #9
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    433
    echo "<input type='text' name='sport' value=\"$sport\" maxlength='50' size='20'>";

    ma e me funzione anche senza niente a cosa serve il doppio apice?

    perche' non va bene come ho scritto io senza niente? dalle prove che ho fatto non mi pare che mi dia problemi!!!

    ciao
    Donerò loro dei fiori... poiché... sotto le nuvole... tutto è così rozzo e sporco

  10. #10
    Originariamente inviato da Urbanus
    echo "<input type='text' name='sport' value=\"$sport\" maxlength='50' size='20'>";

    ma e me funzione anche senza niente a cosa serve il doppio apice?

    perche' non va bene come ho scritto io senza niente? dalle prove che ho fatto non mi pare che mi dia problemi!!!

    ciao
    Il doppio apice serve a sottolineare che tutto quello che c'e' dentro e' una stringa. Se metti il singolo un eventuale apostrofo parrebbe il fine stringa ed infatti la tronca. Se non metti i doppi apici la stringa abc'defg potrebbe far apparire l'apostrofo come inizio stringa e mascherare l'apice successivo.... Apparentemente potrebbe parere ok. ma non con tutti i browser. Essendo poi un value rischi di passare qualsiasi cosa....

    Si deve mettere il doppio apice parsato con il carattere di escape quando nel valore si puo' trovare un apostrofo. Il carattere di escape ci vuole perche' sei gia' dentro a doppi apici e senza il carattere di escape, questo verrebbe interpretato come fine stringa.

    In normale html non servirebbe.


    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 © 2024 vBulletin Solutions, Inc. All rights reserved.