Visualizzazione risultati 1 fino 10 di 10

Discussione: Isset su submit?

  1. #1
    Data registrazione
    20-04-2014
    Messaggi
    149

    Predefinito Isset su submit?

    Sto cercando di creare un'opzione che permetta mandare un header alla pressione di un'immagine.
    Codice HTML:
    <form action="" method="POST"><input input style="height:30%; width:30%;" type="image" value="Seleziona" src="../img/sciemi.png" name="sciemi.png" /></form>
    Codice PHP:
    if (isset($_POST["sciemi.png"])){
    #riscrivo il txt
    header('Location: http://www.example.com/');
    exit;
    }
    Da come si può intuire da quello che ho scritto, alla pressione del bottone, cerco di reindirizzare l'utente su example.com.
    Però questo mio metodo non funziona. E vorrei capire perchè.

    Che sbaglio? Voi siete riusciti a capirlo?
    Ultima modifica di pkspritesearch : 13-06-2014 alle ore 17.39.43

  2. #2
    Guest

    Predefinito

    prova a inserire
    Codice PHP:
    var_dump($_POST);
    e vedi se la variabile post che cerchi esiste

  3. #3
    Data registrazione
    20-04-2014
    Messaggi
    149

    Predefinito

    Esce questo:
    array(2) { ["sciemi_png_x"]=> string(2) "57" ["sciemi_png_y"]=> string(2) "61" }

    Ma non saprei interpretarlo.

  4. #4
    Guest

    Predefinito

    Quello è l'elenco di tutte le variabili post che hai in quel momento

    Mi sono accorto ora che nel codice hai scritti 2

    Codice HTML:
    <input input style="height:30%; width:30%;" type="image" value="Seleziona" src="../img/sciemi.png" name="sciemi.png" />
    Ultima modifica di cactuaweb : 13-06-2014 alle ore 22.51.09

  5. #5
    Data registrazione
    20-04-2014
    Messaggi
    149

    Predefinito

    Citazione Originalmente inviato da cactuaweb Visualizza messaggio
    Quello è l'elenco di tutte le variabili post che hai in quel momento

    Mi sono accorto ora che nel codice hai scritto 2

    Codice HTML:
    <input input style="height:30%; width:30%;" type="image" value="Seleziona" src="../img/sciemi.png" name="sciemi.png" />

    I post sono "sciemi_png_x" e "sciemi_png_y". Perché non "sciemi.png"?

    Io non credo di aver scritto "2"; mi spiace.
    Ultima modifica di pkspritesearch : 14-06-2014 alle ore 11.38.47

  6. #6
    Data registrazione
    20-04-2014
    Messaggi
    149

    Predefinito

    "Come potrei sistemare ciò?" è la mia domanda finale.

  7. #7
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Una input image, non invia il "name"*, ma il "name_x" e "name_y" (sarebbe il punto in pixel di dove l'utente clicca sull'immagine). Se vuoi avere un campo che si chiami "name", una soluzione sarebbe quella di inserire un input hidden con tale nome, oppure invece di controllare "scemi.png", devi controllare sia "scemi_png_x" e "scemi_png_y".
    * In realtà chrome lo invia, ma è l'unico, penso.

    Attenzione che il l'attributo name accetta soltanto lettere o numeri o underscore. Il punto non puoi utilizzarlo!

    Ciao!
    Ultima modifica di alemoppo : 16-06-2014 alle ore 20.28.00

  8. #8
    Data registrazione
    20-04-2014
    Messaggi
    149

    Predefinito

    Citazione Originalmente inviato da alemoppo Visualizza messaggio
    Una input image, non invia il "name"*, ma il "name_x" e "name_y" (sarebbe il punto in pixel di dove l'utente clicca sull'immagine). Se vuoi avere un campo che si chiami "name", una soluzione sarebbe quella di inserire un input hidden con tale nome, oppure invece di controllare "scemi.png", devi controllare sia "scemi_png_x" e "scemi_png_y".
    * In realtà chrome lo invia, ma è l'unico, penso.

    Attenzione che il l'attributo name accetta soltanto lettere o numeri o underscore. Il punto non puoi utilizzarlo!

    Ciao!
    Grazie,
    ma non è risolto.

    Codice PHP:
    <form action="" method="POST"><input type="hidden" name="sciemi" value="sciemi"><input style="height:30%; width:30%;" type="image" value="" src="../img/sciemi.png" name="sciemi.png" /></form>
    <?
    if (isset($_POST["sciemi"])){
    #riscrivi txt nel dir/tory/$user
    header('Location: http://www.example.com/');
    }
    ?>


    Non redirecta.
    Ultima modifica di pkspritesearch : 17-06-2014 alle ore 19.47.12

  9. #9
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Scusami il ritardo.
    Ho provato il tuo codice e a me funziona, vedi qui. Quel codice quindi è corretto...

    Ovviamente immagino che il tuo vero codice sia un pelo più complicato di questo, quindi controlla tutti i parametri ricevuti con var_dump($_POST) e vedi se c'é quello per cui fai il redirect. A volte capita di sbagliare a digitare, quindi ricontrolla bene tutto.

    Ciao!
    Ultima modifica di alemoppo : 20-06-2014 alle ore 21.05.49

  10. #10
    Data registrazione
    20-04-2014
    Messaggi
    149

    Predefinito

    Ho controllato su http://validator.w3.org/ e c'erano degli errori di html.

    Ho corretto così:
    Codice PHP:
    <form action="<?php echo $_SERVER["PHP_SELF"];?>" method="POST"><input type="hidden" name="sciemi" value="" /><input style="height:30%; width:30%;" type="image" src="../img/sciemi.png" name="sciemi.png" alt="1"/></form>

    <?
    if (isset($_POST["sciemi"])){
    #riscrivi txt nel dir/tory/$user
    header('Location: http://www.example.com/');
    }
    ?>
    Se spostato su un'altra pagina funziona.
    Nella stessa no.




    Ho creato un txt col contenuto della pagina.

    http://pkspritesearch.altervista.org...ina/pagina.txt
    Ultima modifica di pkspritesearch : 21-06-2014 alle ore 09.16.31

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •