A következő problémába ütköztem.
Emberünk létrehozza a node-ot, majd eljut a node megtekintésére(node/nid, pl.: node/3). De nekem nem ide kéne jutnom, hanem mondjuk masik/nid, pl.: masik/3 oldalra.
Ha form alterral átírom a redirect-et akkor ugye oda ugrik ahova akarom, csak éppen nem tudom még a nid-et, a nodeapi-ban meg ugye nem lenne szép dolog redirektelni.
Van valakinek ötlete?
pp
(egy ajaxos bizgenytűhöz kéne ;))
Fórum:
A nid érték egy autoincrement
A nid érték egy autoincrement mező a táblában.
SELECT max( nid ) FROM `node`
ezzel megkapod a legnagyobb értéket amit növelsz++. Akár az sql utasításba is beteheted.
Ha egyszerre több érték kerül éppen rögzítésre, akkor lehetnek gondjaid. Ennek a valószínűségét inkább te tudod. Szintén probléma, ha vannak meghiusult adatrögzítések, mert az autoincrement az értéket növeli , de a táblába nem kerül be az újabb sor, így lyuk keletkezik. Esetleg bővíthetsz az alábbi szerint:
ALTER TABLE `node` AUTO_INCREMENT = 6;
A 6 helyére az első SQL eredménye jön.
Remélem veszed valami hasznát.
megoldás
Köszi, de pont ez az amit el szeretnék kerülni.
A megoldás:
Ha kilövöm a redirectet, akkor meghívódik újra a form alter és a nodeapi hook is. A nodeapi-ból(insert) ki tudom nyerni a tartalmat, melyet eltárolok egy spec függvény statikus változójába. Ezután már csak át kell irányítani az oldalt, amihez meg kell találni azt a pontot, ami később hívódik meg mint a nodeapi. Szerencsére nálam ez azért kellett, mert egy iframe-t nyitottam, amibe benne volt a form, tehát egy ügyes kis js-el bezártam az iframe-t és már kész is vagyok. (ez a megoldás nem lenne tökéletes,ha nem egy js-el nyitott iframe-ben lennék. De mivel ott vagyok, ezért biztos le fog futni a bezáró js-is, hisz meg se nyílt volna, ha nem lenne ;))
pp
Palócz István
https://palocz.hu | https://tanarurkerem.hu