Zmienna z JS do PHP

0

Witam,

unikając Ajax'a chciałbym wysłać zmienną z JS do pliku PHP. Wymyśliłem więc taki sposób:

var sound;
            function start()
            {
                if(confirm("Sound on page?"))
                {
                sound = true;
                document.getElementById("form").action = "fear.php?sound=true&";
                }else{ 
                sound = false;
                document.getElementById("form").action = "fear.php?sound=false&";
                }
            }
<form id="form" method="get">
                <input type="text" name="value" id="in" placeholder=" Number" /> 
                <br /><input type="submit" id="send" value="Send!" />
            </form>

Problem polega na tym, że kiedy w formularzu wpiszę np. 8 submit odsyła do strony fear.php?value=6 pomijając zmienna sound.
Co robić i czy ten pomysł w ogóle wypali?
Pozdrawiam

1

Jeżeli wysyłasz dane w formularzu poprzez GET (method=GET - domyślnie tak jest) to nie możesz dodatkowo w adresie URL podawać tych parametrów, bo zostaną nadpisane. Zawsze. To nie na związku z javascriptem w ogóle.

<form action="dupa.php?a=1">
<input name=b value=1 />
<input type=submit />
</form>

Takie coś wyśle przez GET jedynie wartość b.

Opcje są dwie:

1) Albo zmieniasz metodę na POST, wtedy zmienna value poleci przez POST, a zmienna sound przez GET.
2) Albo zrobisz sobie ukrytego inputa <input type=hidden name=sound value=0 /> i przez JS zmieniasz jego wartość np. tak: document.querySelector('#form [name=sound]').value = "1";

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0