Tervehdys,
Rakennan php:llä sivua, jossa on <form> ... </form> -tägien välissä sekä buttoneita ja checkboxeja. Buttonin toiminnot vaikuttavat koko formin alueelle riveihin, jotka on valittu checkboxeilla.
Nyt tarttis saada riville uusi toiminto (esim. button rivin loppuun), josta haaraudutaan muualle kuin itse formilta. Oletuksenahan tekisin buttonille oman formin, jossa homma hoituisi.
Ongelma:
*Sisäkkäiset formit eivät kaiketi sallittuja?
*Kokeilin ja ekalla rivillä ei toimi, mutta muilla toimii ok. Syynä lienee ensimmäinen lopetava </form>
Ideaa miten tähän saisi toimimaan?
Jos napeille antaa nimet, voi tunnistaa, mistä on painettu:
http://koti.mbnet.fi/pllk/muut/napit.php
<?php if (isset($_POST["nappi1"])) { echo "Painettiin rivin 1 napista."; } if (isset($_POST["nappi2"])) { echo "Painettiin rivin 2 napista."; } if (isset($_POST["nappi3"])) { echo "Painettiin rivin 3 napista."; } if (isset($_POST["nappi"])) { echo "Painettiin alimmasta napista."; } if (isset($_POST["valmis"])) { die(); } ?> <form action="napit.php" method="post"> Tässä on rivi 1. <input type="submit" name="nappi1" value="Paina"> <br> Tässä on rivi 2. <input type="submit" name="nappi2" value="Paina"> <br> Tässä on rivi 3. <input type="submit" name="nappi3" value="Paina"> <br> <br> <input type="submit" name="nappi" value="Paina"> <input type="hidden" name="valmis" value="on"> </form>
Jos rivien määrä on vaihtuva, kannattaa tietysti käyttää for-silmukkaa.
Kiitti Antti,
Nuo checkboxit on nimetty luupissa ja toimivat ok. Ongelma on se, että checkbox + nappi valinnalla submit on
<form name="myform" method="post" action="index.php?do=12">
ja napilla rivin perästä:
<form name="myform" method="post" action="index.php?do=1">
checkboxeja ja nappeja on joka rivillä...
Miksi linkki rivin loppuun ei käy? Onko checkboxin arvolla minkäännäköistä virkaa kun rivillä olevaa nappulaa painetaan? On turha ainakaan koko lomaketta lähettää, jos valtaosalla tiedosta ei tehdä mitään. Siksi linkki olisi parempi vaihtoehto, varsinkin jos käsitellään vain yhtä riviä.
Linkki voisi olla ok, mutta tarttis rivikohtaisesti kuljettaa hidden-kentässä muuttujia kutsuttavalle näytöllä. mm. valitun rivin avainarvo ja paluuosoitteen muuttajan tieto.
Tietenkin linkkinä voisi olla javascript-funktio, jossa arvot asetetaan. Sieltä tarttis kuitenkin taas seurata linkkiä?
Ideoita?
Melko yleinen tapa on juurikin kuljettaa tuon linkin mukana se avainarvo ja sitten sillä käsittelevällä skriptillä katsellaan vaikka $_SERVER-globaalista mistäpäin ollaan tultu. Ja ainahan sen paluuosoitteenkin voi laittaa sen osoitteen mukana menemään, jos joku haluaa palautusosoitetta mennä näpelöimään niin omahan on häpeänsä.
Linkillä ja funktiolla luonnistuu ok, mutta kertokaas tyhmälle miten saan lomakkeelta lähetettyä toisen ja siirrettyä kontrollin sinne javascript-funktiossa?
Tällähän saa itsensä: document.myform.submit()
No saahan sillä samalla tavalla minkä tahansa muunkin.
Jos nyt sivuistasi tulee JS-riippuvaiset, niin voit saman tien luopua koko formeista ja laittaa vain yhden formin, johon sitten lisäät napinpainalluksesta oikean action-attribuutin ja lähetettävän datan hidden-inputteina.
Juu sorry
RTFM :-)
vaikka windows.location
Aihe on jo aika vanha, joten et voi enää vastata siihen.