» »

Php: get + post metoda & submit form

Php: get + post metoda & submit form

iMark ::

Pozdravljeni,

Naletel sem na naslednji problem: na spletni strani mi php selekcijsko izpisuje vsebino iz baze. Na strani izberem npr. datum in ko potrdim formo, se prikaže izpis, ki ustreza izbranemu datumu. Drugače povedano: ko pridem na stran je npr. default datum izbran 1 torej bo tudi izpis ustrezal datumu 1, potem izberem datum 2 in seveda se prikaže izpis, ki ustreza datumu 2. Potem pa mam narejeno tako, da lahko izpisan seznam lahko prilagajam glede na več parametrov (padajoče/naraščajoče): to deluje na tak način, da kliknem na glavo stolpca tabele, ki je link z GET vrednostjo torej tu uporabljam GET metodo ker drugače tudi ne bi šlo - problem nastane rawno tu, ko kliknem na povezavo z GET vrednostjo ker mi potem stran prikaže z default izpisom "datum 1" saj se ne izbede forma, kjer bi php dobil podatek o datumu s POST metodo.
Če bi delal zdaj od začetka bi celotno stvar reševal z GET metodo ampak zdaj to ne pride v poštev ker bi bilo prezakomplicirano vse spreminjati (ne gre samo za datum) + časa nimam več na voljo.

Zanima me, če ve kdo na kakšen način bi lahko rešil problem, da bi lahko z get metodo spreminjal seznam, ki ga dobim s post metodo? Mislil sem si, da bi se dalo na kakšen tak način:
<a href="stran?seznam=nekaj" onClick="javascript:sendform();">..</a>
(al pa submitForm in pofobne fore) ampak itak to ne gre tko :D

Naj povem še to, da izpis na strani dobim s funkcijo, ki ima za argumente vrednosti, ki jih vrne forma s POST metodo.

Trinitron ::

Za začetek: to se dela z Ajaxom.

Če pa res hočeš rešit to zadevo čim hitreje pa probaj tako: Na onClick obesi funkcijo, ki najsprej spremeni atribut action v formi (doda mu potreben GET atribut) nato pa pošlje celo formo. Se pravi nekako tako:


<form id="forma" name="forma" action="akcija.php" method="post">
...
</form>

<a href="#" onClick="poslji();return false;">..</a>

function poslji(){
  document.getElementById("forma").action = document.getElementById('forma').action + "?seznam=nekaj";
  document.forms["forma"].submit();
}

iMark ::

Najlepša hvala za odgovor.

Sem poskusil na tak način ampak se je zatikalo potem pa sem se spomnil ene lažje, "kmečke" implementacije. V funkcijo, ki izpisuje podatke sem dal pogoj, če obstaja POST podatek, če obstaja pobere ven podatke in jih shrani v spremenljivko, kateri spredaj dodam "obliko" za get metodo. To spremenljivko sem potem konketal povezavi na glavo stolpca kjer prilagajam izpis.
Je mal taka smešna rešitev ampak važno da preprosta in učinkovita :)


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

AJAX kratke naloge

Oddelek: Izdelava spletišč
192279 (1746) Yacked2
»

Javascript validacija web-to-lead forme

Oddelek: Programiranje
191057 (864) Gandalfar
»

Javascript - izračun razlike v datumih

Oddelek: Programiranje
81904 (1759) kogledom
»

Javascript in php

Oddelek: Izdelava spletišč
201947 (1636) rokpok
»

oop+php+sessions

Oddelek: Izdelava spletišč
152579 (46) cahahopie

Več podobnih tem