Předvánoční slevová akce PHP týden
Pouze tento týden sleva až 80 % na PHP e-learning!
Využij předvánočních slev a získej od nás 20 % bodů zdarma! Více zde

Diskuze: Rozlišení dvou FORMů

Aktivity (2)
Avatar
svanda777
Redaktor
Avatar
svanda777:30.7.2014 18:59

Ahoj,
chci se zeptat. Na stránce mám dva formuláře a oba chci zpracovat pomocí různých scriptů, které jsou ale umístěni ve stejném php souboru (ty formuláře jsou v jednom pohledu a rád bych je zpracoval pomocí jednoho kontroleru). Jak je mám rozlišit? Zkoušel jsem dát FORMu atribut name, ale php ho asi nezná.

 
Odpovědět
30.7.2014 18:59
Avatar
Odpovídá na svanda777
Michal Žůrek - misaz:30.7.2014 19:02

spíš dej attribud name odesílacímu tlačítku a v php by mělo fungovat

if ($_GET["nameTlacitka"]) {
    // uživatel klikl na tlačítko s attribudem name nameTlacitka
}

pokud používáš POST, tak místo $_GET dej $_POST

pokud to nefunguje vypiš si pole $_GET (nebo $_POST) a tam by něco s tim attribudem mělo být, pak uvidíš.

 
Nahoru Odpovědět
30.7.2014 19:02
Avatar
svanda777
Redaktor
Avatar
svanda777:30.7.2014 19:11

Dík - mě to nějak nedošlo.

 
Nahoru Odpovědět
30.7.2014 19:11
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
Alma Mater
Člen
Avatar
Odpovídá na Michal Žůrek - misaz
Alma Mater:20. listopadu 2:42

3 formulare na jednom mieste a vsetko sa spracovava na druhom mieste..V tomto ohlade pomaha tlacitko submit< input typu="submit" name="form"/> a jeho atribut name. Uvadzam kratky priklad..

--subor s vystupom formularov na jednom mieste--

<form method="post">
  <input type="hidden" name="export_data" value="<?php echo $serialize_user_arr; ?>"/>
  <input type="submit" name="form1" value="Export do PC" />
 </form>

<form method="post">
 <textarea  name="message" cols="63" rows="1"  ></textarea>
 <input type="submit"  name="form2" value="Pošli" />
 </form>

<form  method="post">
<input type="hidden" name="ulozene_id" value="" />
 <input type="checkbox"  name="form3" value="<?= $sprava['spravy_id']?>" onchange="this.form.submit();"  />
</form>

--subor so spracovanim 3 formularov na jednom mieste --

if(isset($_POST['form1'])){ // vsetky premenne z $_POST z form1 budu tu }

if(isset($_POST['form2'])){ // vsetky premenne z $_POST z form2 budu tu }

if(isset($_POST['form3'])){ // vsetky premenne z $_POST z form3 budu tu }

Konecne som zistil na aky ucel sa pouziva atribut name pri tlacitku submit, doteraz sa mi zdal zbytocny:-)

Nahoru Odpovědět
20. listopadu 2:42
Kopírovanie je forma zdieľania informácii, bez autorských práv sa informácie nezadržiavajú - šíria sa tam kde treba..
Avatar
Peter Mlich
Člen
Avatar
Peter Mlich:20. listopadu 10:16

Name pro submit tlacitko nefunguje vzdy. Pokud by to nastalo, tak pouzij normalne input type hidden. Hlavne, je mozne na tom zalozit i odkazy.

<form  method="post">
    <input type="hidden" name="akce" value="delete">
    <input type="hidden" name="id" value="123">
    <input type="submit" value="Smazat">
</form>

<form  method="get">
    <input type="hidden" name="akce" value="delete">
    <input type="hidden" name="id" value="123">
    <input type="submit" value="Smazat">
</form>

<a href="?akce=delete&id=123">smazat</a>
 
Nahoru Odpovědět
20. listopadu 10:16
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 5 zpráv z 5.