Autor Zpráva
mersi
Profil
ako mam spravit aby po kontrole nejakych premennych script odoslal sam udaje formulara cez $_POST späť bez pouzitia tlacidla submit?
AM_
Profil
tuším, že HTML formulář má v javascriptu má metodu .submit(), takže třeba onresize="document.myform.submit()" :)
joe
Profil
A jak poznáš kdy je formulář vyplněný a kdy ho odeslat?
dRaGen
Profil
tipnul bych to že je to myšlený jinak, že má formulář jakmile vyplní nějaký údaje klikne na odeslat tak zkontroluje jestli něco sedí a když nesedí tak aby ho to vrátilo zpátky na ten formulář a měl uložený v POSTU data co poslal.

Řeším to tak, že kontroluji data na stejný stránce jako je formulář a když se něco nepovede tak je jenom nezapíšu do db ale pořád je mam uloženy a zobrazim je do formuláře jako výchozí hodnoty.
mersi
Profil
tipnul bych to že je to myšlený jinak, že má formulář jakmile vyplní nějaký údaje klikne na odeslat tak zkontroluje jestli něco sedí a když nesedí tak aby ho to vrátilo zpátky na ten formulář a měl uložený v POSTU data co poslal.
Řeším to tak, že kontroluji data na stejný stránce jako je formulář a když se něco nepovede tak je jenom nezapíšu do db ale pořád je mam uloženy a zobrazim je do formuláře jako výchozí hodnoty.

presne o to mi ide
Mr.S1lent.cz
Profil *
mozna bych to resil nasledovne:

1] form.php
...
<form action="zpracuj.php" method="post">

<!--odesilane hodnoty formulare//-->
<!--napr. "nick", "pass"//-->
</form>
...

2] error.php
<?php
//script opravdu neni zakoncen "?>" !!
$message_head = <<<HTXT
<html>
<head><title>Error</title>
</head>
<body>
<p>
HTXT;

$message_foot = <<<HTXT
</p>
<p>kliknete pro navrat:
<b><a href="javascript:self.history.back();">zpět</a></b>
</p>
</body>
</html>

3] zpracuj.php
<?php
//substituce promennych (prevedeni na jednodussi tvar
$nick = $_POST['nick'];
$pass = $_POST['pass'];
if(empty($nick) or empty($pass)) {
$message ="chybova zprava";
die($message_head . $message . $message_foot);
}
else {
// samotne zpracovani hodnot podle potreby (zapis do db apod)
}
?>

psal jsem to z fleku, takze tam muzou byt preklepy, ale myslim, ze to neni spatna metoda, lepsi reseni me napada akorat pouze pomoci session nebo javascriptu

jinak pro vysvetleni: !!!!!!!!<a href="javascript:self.history.back();">zpět</a></b>!!!!!!!!! tato metoda umozni navrat zpet na formular, pricemz pole zustanou vyplnena stejne tak, jako pred odeslanim,

dobrou noc,

Mr.S1lent.cz
Mr.S1lent.cz
Profil *
jeste jsem zapomnel do souboru zpracuj.php includovat soubor "error.php", takze oprava:

3] zpracuj.php
<?php
include "error.php";
//substituce promennych (prevedeni na jednodussi tvar
$nick = $_POST['nick'];
$pass = $_POST['pass'];
if(empty($nick) or empty($pass)) {
$message ="chybova zprava";
die($message_head . $message . $message_foot);
}
else {
// samotne zpracovani hodnot podle potreby (zapis do db apod)
}
?>

dal uz to radsi koumat nebudu, pripadne chyby zkuste pohledat samy :-D
mersi
Profil
riesim to nakoniec tak ze vyhodnocujem data rovno na stranke s formularom
a ak chcem aby si to pamätalo aj načítaný súbor vo formulari ako to mam dat?

Takto moze byt?

<input name="userfile" type="file" value="<? $_FILES['userfile']; ?>" />
mersi
Profil
asi nie lebo to nefunguje

uz chapem ze tak to nemoze byt lebo v $_FILES je uz asi nacitany subor
da sa potom nejako predať nabrowsovany subor vo formulare aby som uzivatel nemohol znova hladat?
keeehi
Profil
mersi
S tím value to funguje ale právě až na input type file (možná i na password). Takže uživatel ho musí hledat znovu. Zatím jsem se s tím nikde nesetkal.

ps. možná že by to šlo vyřešit nějak javascriptem, ale s tím neporadím, neboť ho skoro vůbec neovládám.
mersi
Profil
mersi
S tím value to funguje ale právě až na input type file (možná i na password). Takže uživatel ho musí hledat znovu. Zatím jsem se s tím nikde nesetkal.
ps. možná že by to šlo vyřešit nějak javascriptem, ale s tím neporadím, neboť ho skoro vůbec neovládám.

aha no nic

ps: password funguje

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: