Értékkinyerés változóból - html form - php

Ez a téma lezárásra került a moderátor által. A lezárás oka: Konkr�t k�rd�seket a Tud�st�rban k�retik feltenni!
Értékkinyerés változóból - html form - php
2011-03-12T12:48:15+01:00
2011-03-13T20:54:46+01:00
2022-10-26T19:41:52+02:00
  • Köszönöm a segítséget!
    Ajaxal ismét egy kicsit közelebb kerültem a megoldáshoz.

    Viszont a vége még mindig nem jó.

    Eddig:

    Lap megjelenik egy downdrop-al. - ebbe automatikusan bekerül egy táblázat name oszlopa!
    Majd ha ebből választunk, ajax-al megjelenik egy új downdrop, a name-nem megfelelő értékekkel.
    Ebből is kiválasztjuk a szükséges SN-t.
    Ezzel pontosan megvan melyik rekordot szeretnénk majd a feladat végén UPDATE-elni az sql-be.
    Még meg kéne adni egy harmadik downdrop-ban hogy ennek a rekordelemnek mi legyen az új POS értéke, de itt már nem tudom kezelni az értékeket.

    a fő php fájlban van az a form ami megjeleníti az első downdrop-ot, míg egy második php fájl kezeli a második downdropot.
    De akkor hova teszem a harmadikat és hogy kezelem őket!

    Sajnos itt vagyok nagyon elakadva :(
    Mutasd a teljes hozzászólást!
  • ha maradsz a lapfrissítésnél,
    szubmit esetén előáll az első legördülőelem értéke a $_POST -ban..

    Ha annak van értéke kiteheted a további elemeket felhasználva az ID értéket, azért használsz egyedi kulcsokat, hogy ne értékeket kelljen továbbítani az űrlapoknál ($name).
    Szükséged van a $name-re? kérd le SQL ből ID alapján. A további elemeket pedig ugyancsak ezzel az ID vel szűrhetsz.

    és hogy első legördülőelem megtartsa posztoláskor írd bele a selected="selected" -et a listaelembe, így kiválasztva a legördülőelemet. (ahol a $_POST["listaelem_neve"] egyenlő az $id -vel.)

    google kereséssel annyiféle példát találsz AJAX -ra, ha táblából kérnél le adatlapokat stb érdemesebb volna használni a lapfrissítés nélküli módszereket.

    szerk:
    print $_POST['id'] helyett nem print $_POST['name'] -et kéne feldolgoznod ?
    Mutasd a teljes hozzászólást!
  • és működik!
    Köszönöm!

    Bár még nem tökéletes!
    Így most egyenlőre csak egy downdrop-al működik a dolog!

    Még nem megy a következő:
    Egy lista megadja az elem nevét. Ettől függően megjelenik pár új beviteli mező.
    Ha a kiválasztott elem - vegyük most úgy, hogy - egyedi azonosítóval rendelkezi, megjelenik egy új dropdown az összes hozzá tartozó sn-el.
    innen is kiválasztjuk a megfelelőt.
    Még megadunk egy célt, egy harmadik dropdown-on és a submit-al mentjük az elemet. ID alapján tudjuk melyiket és a harmadik dropdown alapján hogy mi legyen ennek az elemnek az új értéke pozíció szerint.

    Tehát egyenlőre annyi a hiba, hogy a this.form.submit() onchange action nem működik csak egy mezőnél.
    Mutasd a teljes hozzászólást!
  • írd egybe valamilyen elválasztóval, majd a küldés után explode-old. pl:

    print('<option value="'.$id.'|'.$name.'">'.$name.'</option>'); ... majd: $name = explode("|",$_POST['name'],2);
    Mutasd a teljes hozzászólást!
  • oh!
    Rájöttem.
    Ez így hülyeség
    ha nincs value megadva akkor a kiírt szöveg a value
    én meg külön akartam kezelni.

    viszont akkor csak úgy lehet megcsinálni, hogy legyen egy id és egy name réték is, hogy kell egy ugyanolyan hidden downdrop és a hidden kövesse a name downdrop index-et.

    Vagy van más mód is, hogy egy lista tartalmazza az id-t és a name-et is?!?
    Mutasd a teljes hozzászólást!
  • Sziasztok!
    A lenti forráskód esetén nem értem miért nem lehet, az ID valahogy kinyerni.
    A fő az lenne, ha a kiválasztott elemhez tartozó id érék tárolódna, mivel ez és egy másik downdrop éréke alapján kezelődne egy submit!

    (egészen pontosan van egy tábla. Kiolvasunk egyegy oszlop tartalmát. Amiket kiválaszt azok szerint lesz egy UPDATE a sumit-ra.

    A segítségeket előre is köszönöm!
    $keres = "SELECT id, name FROM store_box GROUP BY name ORDER BY name"; $eredmeny = mysql_query($keres) or die('Hiba a kérésben: ' . mysql_error()); print('<form action="'.$_SERVER["SCRIPT_NAME"].'"method="post">'. '<select name="name" onchange="this.form.submit();">'); //print('<option value="0">Válasszon!</option>'); while ($line = mysql_fetch_assoc($eredmeny)) { $name = $line['name']; $id = $line['id']; print('<option value="'.$id.'">'.$name.'</option>'); } print('</select>'); print $_POST['id'];
    Mutasd a teljes hozzászólást!
Ez a téma lezárásra került a moderátor által. A lezárás oka: Konkr�t k�rd�seket a Tud�st�rban k�retik feltenni!
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd