| Autor | Zpráva | ||
|---|---|---|---|
| luma64 Profil |
#1 · Zasláno: 23. 6. 2013, 12:24:20
Mam form , v nom vyplnam viacero poli. Ak je validacia spravna, nastavim premennu zapis=ano a form urobi update.
V tomto forme mam este jeden nezavisly form, ktorym po zvoleni datumu robim update zaznamu. Ako vycistim Post, ktorym ziskam datum vo vnorenom forme ? |
||
| Tori Profil |
#2 · Zasláno: 23. 6. 2013, 12:39:56
luma64:
Nešel by použít jen jeden formulář, rozlišovat odesílacím tlačítkem (dva submity s různou hodnotou) a v případě odeslání "submit=update" vyplnit znova do celého formuláře i ostatní přijatá data? |
||
| luma64 Profil |
#3 · Zasláno: 23. 6. 2013, 12:52:17
Tori:
vdaka, vyskusam |
||
|
Časová prodleva: 9 dní
|
|||
| luma64 Profil |
#4 · Zasláno: 2. 7. 2013, 17:58:06
Zdravim, chcel by som pokracovat vo vlakne.
Problem mam ten, ze vo forme1 mam form2 so scriptom, ktory vyuziva ajax. Vo forme1 vyplnam polia, tretie v poradi je pole formu2. Je to textove pole typu autocomplete. Po submite formu2 si do session ulozim jeho hodnotu, budem ju insertovat. Insert je tiez v tejto stranke. Po vyplneni vsetkych poli formu1 dam submit. Mozilla mi urobi insert, IE nie - neurobi nic! Toto je spomenuty form2. <!-- Diagnoza -->
<div id="frame1">
<div id="content">
<form autocomplete="off">
<p>
Diagnóza <label>:</label>
<input type="text" name="course" id="course" />
<input type="submit" value="Submit" />
</p>
</form>
<?php
$dgkod=$_POST['course'];
echo "Dg kod: $dgkod<br>";
//zistenie id a nazvu dg
$sqldgid = "select * from diagnozy where dgkod='$dgkod' and skratka='$skratka' LIMIT 1";
$result_dgid = mysql_query($sqldgid);
if ($result_dgid)
{
while($rsgid = mysql_fetch_array($result_dgid))
{
$dg_id= $rsgid['id'];
$dgnazov= $rsgid['dgnazov'];
}
if ( (strlen($dg_id)!= 0) || $dg_id!='' )
echo "Dg nazov: $dgnazov<br>";
$_SESSION['SESS_DG_ID'] = $dg_id;
}
?>
</div>
<!-- koniec diagnozy --> |
||
| Tori Profil |
#5 · Zasláno: 2. 7. 2013, 18:51:15
luma64:
„Po vyplneni vsetkych poli formu1 dam submit. Mozilla mi urobi insert, IE nie - neurobi nic!“ Příčinou je zřejmě právě to zanoření formulářů. Jelikož není povolené, aby uvnitř prvku <form> byl jiný <form>, tak je chování formulářů v této situaci nedefinované a každý prohlížeč to (ne)řeší jinak.
Potřebujete mít opravdu dva formuláře? Autocomplete prvek může být i ve form1, ajaxové dohledání hodnoty spustíte třeba input.onblur. Po odeslání formuláře se pak kouknete, jestli máte ID uložené v SESSION (=dohledané ajaxem), anebo ho dohledáte způsobem podle [#4]. Aspoň to nebudete mít závislé na zapnutém JS. |
||
| luma64 Profil |
#6 · Zasláno: 2. 7. 2013, 18:52:55 · Upravil/a: luma64
no zial s tymto nemam hlboke skusenosti ..
Ok, a kam umiestnit input.onblur ? Diagnóza: <input type="text" id="course" onblur="course()"> <!-- koniec diagnozy --> <?php $dgkod=$_POST['course']; echo "course: $dgkod" ; ?> |
||
| Tori Profil |
PHP skript, který reaguje na AJAXové požadavky, by měl být samostatný. Zpracovává se jindy než formulář, ne?
|
||
|
Časová prodleva: 13 let
|
|||
0