Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 39

Discussione: errore su $_POST

  1. #1
    Utente di HTML.it L'avatar di lory38
    Registrato dal
    Dec 2010
    Messaggi
    214

    errore su $_POST

    Ciao,

    ho un problema che mi compare un errore "Warning: Header may not contain more than a single header, new line detected." ecco il codice:

    Codice PHP:
    header("location:modifica.php?id=".$_POST['id']."&id2=".$_POST['id2'].""); 

  2. #2
    Prova così:

    Codice PHP:
    header("Location: modifica.php?id=$_POST['id']&id2=$_POST['id2']"); 
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    Utente di HTML.it L'avatar di jcsnake
    Registrato dal
    Jun 2010
    Messaggi
    629
    Ciao, ho trovato in rete una possibile soluzione al tuo problema, è in inglese perchè trovata su un forum in lingua. Ti posto solo la risposta che ti potrebbe aiutare, comunque qui trovi tutta la discussione.

    Perhaps one of your variables $email, $name, $image contain a newline. Pass them through urlencode() first.

    Also note that with Location, you need to use a full URL, not just a path. So http://mydomain.com/your_systems_finish.php.. If you do not, then some browsers may not redirect the user as expected.

  4. #4
    Utente di HTML.it L'avatar di lory38
    Registrato dal
    Dec 2010
    Messaggi
    214
    SATIFAL:
    ho provato mi dà errore e che ci vuole gli apici e il punto.

    JCSNAKE:
    non capisco la discussione in inglese e la soluzione di quella come funziona.

  5. #5
    Utente di HTML.it L'avatar di jcsnake
    Registrato dal
    Jun 2010
    Messaggi
    629
    Ciao, allora lui ti consiglia prima di inserire così "brutalmente" $_POST['id'] e $_POST['id2'], di passarli entrambi attraverso la funzione urlencode(). Quindi, ad esempio, prima fai una cosa del genere...

    Codice PHP:

    $id1
    =urlencode($_POST['id']); 
    $id2=urlencode($_POST['id2']);
    header("location:modifica.php?id=$id1&id2=$id2"); 
    Inoltre, se non dovesse funzionare nememno in questo caso, consigliava di inserire l'intero url completo della tua pagina, perchè con l'uso di location, questa richiede l'intero url...quindi ad esempio invece di header("location:modifica.php?id=$id1&id2=$id2"); sarebbe header("location:http://mydomain.com/mysubcartel/modifica.php?id=$id1&id2=$id2");.

  6. #6
    il messaggio di errore è abbastanza chiaro, dice che è presente un "invio" (una nuova linea) nella stringa passata alla funzione header

    A parte questo, per specifiche, gli header location e refresh (se passato l'url) vogliono indirizzi assoluti e non relativi

    header("Location: /path/to/your/domain/modifica.php?id=" . $_POST['id'] . "&id2=" . $_POST['id2']);
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  7. #7
    Utente di HTML.it L'avatar di lory38
    Registrato dal
    Dec 2010
    Messaggi
    214
    ho fatto ma è lo stesso mi dà errore quello che mi avete detto voi per risolvere e ho fatto tanti tentativi a modificare e non mi vanno.

    penso il problema è su "$_POST"

  8. #8
    fai una cosa molto semplice

    prima dell'header scrivi

    codice:
    echo '<pre>';
    var_dump($_POST);
    die();
    riporta qui il risultato
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  9. #9
    Utente di HTML.it L'avatar di lory38
    Registrato dal
    Dec 2010
    Messaggi
    214
    Codice PHP:
    array
      
    'id' => string '


    [b]Notice[/b]:  Undefined variable: id in [b]C:\Program Files\EasyPHP-5.3.6.0\www\Ger_2\Archivio\Off\modifica2.php[/b] on line [b]438[/b]


    (length=166)
      
    'id2' => string '


    [b]Notice[/b]:  Undefined variable: id2 in [b]C:\Program Files\EasyPHP-5.3.6.0\www\Ger_2\Archivio\Off\modifica2.php[/b] on line [b]439[/b] 

  10. #10
    Originariamente inviato da lory38
    SATIFAL:
    ho provato mi dà errore e che ci vuole gli apici e il punto.
    Non è necessario utilizzare le virgolette ed il punto. Va bene anche inserendo la variabile direttamente nella stringa. L'errore probabilmente è sul $_POST.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

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.