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

    addslashes su tutti i $_GET e $_POST

    ciao,
    (so ke è sicuramente giÀ stata discussa ma non l'ho trovata in caso rimandatemi alla pagina giusta e cancellate, mi scuso già in tal caso.)

    come posso settare

    $titolo = addslashes($titolo);
    $titolo = htmlspecialchars($titolo);

    a tutti i $_GET e $_POST di una pagina usando poche riche?

  2. #2
    Ti posto una funzioncina che ho fatto come esercizio... penso sia quello che vuoi tu

    Codice PHP:
    function special_char($array)
    {
          foreach (
    $array as $key => $valore){
                
    $valore htmlentities($valoreENT_QUOTES);
                
    $valori[$key] = $valore;
          } 
          return 
    $valori;

    A questo punto non ti serve più addslashes perché ci sono gli ENT_QUOTES...

    Per richiamarla ovviamente:

    Codice PHP:
    $_POST special_char($_POST); 
    Fammi sapere!

  3. #3
    ciao!

    secondo me potresti scansionarti tutto l'array $_GET o $_POST e per ogni elemento che trova lo metti in un nuovo array...
    esempio:
    Codice PHP:
    $newArray = array();
    $i=0;
    foreach (
    $_POST as $elemento) {
      
    $newArray[$i] = addslashes($elemento); //qui ci metti che cavolo vuoi!

    in modo tale dopo che ha finito la scansione di tutto l'array $_POST avrai gli stessi elementi nell'array $newArray ma filtrati (ed accesibili con indici 0, 1, 2, ecc e non iù con indici associativi tipo "nome_campo")

    cmq dovrebbe andare...

  4. #4
    ok, come non detto
    meglio la soluzione di pezzo

  5. #5
    Originariamente inviato da pezzo
    Ti posto una funzioncina che ho fatto come esercizio... penso sia quello che vuoi tu

    Codice PHP:
    function special_char($array)
    {
          foreach (
    $array as $key => $valore){
                
    $valore htmlentities($valoreENT_QUOTES);
                
    $valori[$key] = $valore;
          } 
          return 
    $valori;

    A questo punto non ti serve più addslashes perché ci sono gli ENT_QUOTES...

    Per richiamarla ovviamente:

    Codice PHP:
    $_POST special_char($_POST); 
    Fammi sapere!

    ci ho provato.. ma non mi funziona.. posso scriptarci ancora quello ke voglio..

  6. #6
    allora prova con una espressione regolare...
    $str = ereg_replace("[^[:space:]a-zA-Z0-9*_.-]", "", $str);
    così vengono "conservati" solo spazi vuoti, lettere dalla a alla z (minuscole), lettere dalla A alla Z (maiuscole), numeri da 0 a 9 e i caratteri * _ . e -

    Codice PHP:
    function special_char($array) {
          foreach (
    $array as $key => $valore){
                
    $valore ereg_replace("[^[:space:]a-zA-Z0-9*_.-]"""$valore);
                
    $valori[$key] = $valore;
          }
          return 
    $valori;


  7. #7
    Che significa?

    Originariamente inviato da progalba
    ci ho provato.. ma non mi funziona.. posso scriptarci ancora quello ke voglio..
    Allora forse non ho capito cosa vuoi fare...

  8. #8
    credo voglia evitare un possibile attacco di Script-Injection
    immagino voglia filtrare gli input da POST e GET in modo da salvaguardare la sicurezza del suo script.

  9. #9
    Ah, ok! grazie

    e come poteva essere utile usare

    $titolo = addslashes($titolo);
    $titolo = htmlspecialchars($titolo);

    ???

    Ciao ciao

  10. #10
    esatto abbiweb.. ma se possibile dovrebbero poter usare tutti i caratteri meno quelli dannosi ></ ecc..

    io attualmente ho

    $titolo = addslashes($titolo);
    $titolo = htmlspecialchars($titolo);

    $nome= addslashes($nome);
    $nome= htmlspecialchars($nome);

    $cognome= addslashes($cognome);
    $cognome= htmlspecialchars($cognome);

    ecc.. per altre 42 volte...

    sarebbe stato carino poter fare

    function nonmicrakki(){
    metti addslashes e htmlspecialchars a tutti i GET e POSTke vedi
    }

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.