Zadejte hledaný výraz...

Vypsání výsledku js scriptu do tabulky tvořené php scriptem

Pavel Čermák
verified
rating uzivatele
15. 2. 2014 18:09:33
Ahoj,
mám js script, který vypíše název programu z databáze a přidá k němu checkbox, který když se zaškrtne přemístí to dotyčný název jinam.
Dále mám php script, který zajišťuje, že se tabulka vypíše jen s 9 sloupci, poté se vytvoří automaticky nový řádek a pokud je málo dat tak to do konce řádku vytvoří prázdné buňky.
Mám ale problém to propojit, zkoušel jsem to že jquery naloaduju do tabulky, pokoušel jsem se to i propojit přímov jednom souboru, ale vždy se m skončil s tím, že se nic nevypsalo :/
Tento script zajituje to přemisťování
echo "
"; ?>
A tento se stará o tabulku
include "database.php";
$category = "programs";
$query = $pdo->query("SELECT name FROM $category");
define ("COLS", 9); // počet sloupců
for ($i = 0; $row = $query->fetch(PDO::FETCH_ASSOC); $i++)
{
$name = $row;
$id = $row;
if ($i % COLS == 0) echo "";
echo '';
if ($i % COLS == COLS - 1) echo "n";
}
if ($i % COLS != 0)
{
while ($i++ % COLS != 0)
{
echo "";
}
echo "n";
}
?>
ZDE VYPSAT NÁZEV S CHECKBOXEM A ID PROGRAMU
 
15. 2. 2014 18:09:33
https://webtrh.cz/diskuse/vypsani-vysledku-js-scriptu-do-tabulky-tvorene-php-scriptem#reply996965
Macejko.sk
verified
rating uzivatele
(5 hodnocení)
15. 2. 2014 21:24:53
Nasledujuci kod..
kde naraz pracujes s PHP, databazou a javascriptom je naozaj zle navrhnuty. Takto sa to naozaj nerobi.
1. naloduj si vsetko co potrebujes z DB a uloz si do premennych
2. vypis vsetko co potrebujes v PHP. Posnaz sa oddelit PHP od HTML. Minimalne nerobit XY krat echo. Ale radsej vsetko vkladat do premennej $content, ktoru nakoniec vypises 1 krat. Je to z hladiska citatelnosti aj z hladiska rychlosti.
3. Urcite ziadne echo pomocou ktoreho tvoris nejaku JS premennu. Ale skor si vytvor JSON-a, ktoreho jednoducho spracujes v JS.
4. Ak to ide, oddelit JS do samostatneho suboru a nepisat do jedneho dokumentu vsetky mozne jazyky.
A este ma napada, to skusit to PHP napisat trosku funkcionalnejsie, tj. nevolat napr. echo "iansdionPREMENNA". Ale rajdsej nieco ako
createColumn($content, $nieco) { $content += 'PREMENNA'; return $content; }. Zbytocne sa neopakovat ked uz spajas to HTML s PHP touto formou.
Neporadim ti moc v tomto kode, ktory si prezentoval. Skus napisat o co ti ide, potom navrhnut nejake rozumne riesenie a potom to napisat este raz :)
15. 2. 2014 21:24:53
https://webtrh.cz/diskuse/vypsani-vysledku-js-scriptu-do-tabulky-tvorene-php-scriptem#reply996964
Pavel Čermák
verified
rating uzivatele
15. 2. 2014 21:45:52
Děkuji za připomínky, pokusím se to napravit.
A co přesně bych chtěl? Jedná se o to, že mám tabulku která má 9 slopců a vypisují se do ni názvy programů s chceckboxem který má name schodé s id programu.
Uživatel si vybere své programy, zaškrtnutím checkboxu u programu by měl zmizet z výběru a přesunout se do jiné tabulky, která bude obsahovat jen ty, které uživatel vybral(zde při kliknutí-->zruší jejich výběr a tím je vrátí do původní tabulky). Při každé změne by se poté měl naloadovat php soubor, který získá informace o vybraných oprogramech a ty spracuje. To je má vize.
Tak jak bych to rád řešil je, že si vytvořím formulář který bude obsahovat tabulku s názvy programů, v případě změny (zaškrtnutí) by se pomocí ajaxu/jquery přesunul do druhé tabulky a naopak a zároveň by zavolal php script(loadnul soubor), který by zprcoval vybrané programy (ty v druhé tabulce).
a co se týče kódu o nepřehlednosti vím, první verze často dělám v časovém pressu jako teď (poté si to vždy v klidu zpřehledním, zkrátím, oddělí od sebe a případně i upravím na méně zátěžové řešení). Děkuji, du se mrknout na ten JSON (můj problém je, že v juery/ajax dělám prvně a potřebuji u tohoto projektu pouze toto a bohužel nemám čas studovat postupně od začátku :/ )
15. 2. 2014 21:45:52
https://webtrh.cz/diskuse/vypsani-vysledku-js-scriptu-do-tabulky-tvorene-php-scriptem#reply996963
Macejko.sk
verified
rating uzivatele
(5 hodnocení)
15. 2. 2014 22:24:51
Neviem ci chces checboxy zaskrtavat a podla toho urcovat polohu, napr. vsetky zaskrnute budu v tabulke first a nezaskrtnute budu v second. Potom nebude treba data-position, ale kontrolovat na $(this).is(':checked'), alebo nejak podobne. Dalej by bolo asi vhodne, ak presunutie podlieha nejakym podmienkam alebo vypisovaniu info, presunut samotny preusun riadku az do miesta, kde sa nachadza komentar // spracujem. Tam vies ci PHP zlyhal alebo prebehol success.
Cela ponta je v tom, ze vypis tabulky v PHP a potom s nou pracuj v JS, ziadne vypisovanie v PHP, potom doplnovanie pomocou JS.
Ak je tam niekde syntaxt, tak sa ospravedlnujem, hold webtrh zatial nema nejaky online checker :)
Snad ta to nakopne.
15. 2. 2014 22:24:51
https://webtrh.cz/diskuse/vypsani-vysledku-js-scriptu-do-tabulky-tvorene-php-scriptem#reply996962
Pavel Čermák
verified
rating uzivatele
16. 2. 2014 18:39:53
Tak jsem nakonec rozhodl, že se pokusím o jednoduší verzi a to že se přesunou až po kliknutí na odkaz.
Vše funguje až do té doby, kdy to dám do tabulky, z té se to nepřesune a netuším proč :/
Toto řešení (kliknutím) se mi koneckonců i více líbí, u pomalejších počítačů by neustále přepočítávání atd. na pozadí mohlo lagovat. Každopádně netuším proč to má problém přesunout to z tabulky :/
---------- Příspěvek doplněn 16.02.2014 v 23:15 ----------
Napsal Pavel Čermák;1057833
Tak jsem nakonec rozhodl, že se pokusím o jednoduší verzi a to že se přesunou až po kliknutí na odkaz.
Vše funguje až do té doby, kdy to dám do tabulky, z té se to nepřesune a netuším proč :/
CHYBA NALEZENA, jednalo se o špatnou strukturu html, opravený kód (funguje přesun do druhého divu, zpět ne a pokud se vrátí tak ne na své místo).
16. 2. 2014 18:39:53
https://webtrh.cz/diskuse/vypsani-vysledku-js-scriptu-do-tabulky-tvorene-php-scriptem#reply996961
Pro odpověď se přihlašte.
Přihlásit