Zadejte hledaný výraz...
Jakub Glos
Webtrh.cz
Vývoj webových stránek na WordPressu a proklientský přístup pro freelancery
Třídenní infromacemi nabitý prezenční + online kurz v Praze od Webtrhu pouze za 2 871 Kč
Více informací

AJAX načítání obsahu v PHP

Sashaa
verified
rating uzivatele
(18 hodnocení)
13. 10. 2021 01:08:24
Zdravím,
mám zde takovou situaci, potřeboval bych načíst dlouhý seznam dat v jednom PHP souboru. Přišel jsem s řešením, že bych to zrealizoval skrze AJAX postupném načítání, jenže když se obsah načte do toho PHP souboru, tak dál s tím nelze manipulovat s tím kodem, protože ty načtená data tam jako by nejsou fyzický vidět...
Zde je ukázka jquery kodu:
Zde se načte v HTML:
A zde je obsah, co se načítá v PHP my_page1.php:
$nevim = "zkouska";
takže když se načte třeba soubor my_page2.php hned za tím, tak nelze v PHP vyvolat echo $nevim; protože to tam v tom divu nenajde, že to tam existuje... přitom se to tam načte skrze ten AJAX script...
Poradí někdo? Díky
13. 10. 2021 01:08:24
https://webtrh.cz/diskuse/ajax-nacitani-obsahu-v-php/#reply1491966
TomasX
verified
rating uzivatele
(4 hodnocení)
13. 10. 2021 08:02:28
z tvého popisu moc nechápu, kde je problém s co ti nefunguje.
Tipuji, že řešíš nefungující události click na nově nadšených částech stránky. Click funkce se váže pouze na elementy, které v té době existují, pokud něco nového přidáš, musíš na to znovu navázat click. Jquery na tohle nabízí řešení v podobě .on(“click”…), viz https://api.jquery.com/on/
13. 10. 2021 08:02:28
https://webtrh.cz/diskuse/ajax-nacitani-obsahu-v-php/#reply1491965
Karel Skocdopole
verified
rating uzivatele
13. 10. 2021 09:39:37
V tom php souboru může být echo a pak se to echo zobrazí, ale pokud tam echo není, tak to do html stránky nic nevloží.
Manipulaci s daty jde provádět jen v tom daném php souboru, protože v tomhle případě hlavní stránka ty proměnné nemá. To by se muselo použít:
include kategorie-url-produktu/my_page1.php
Ajax nemůže načíst proměnné přímo z php, protože php je na serveru a ajax u klienta. Ajax vidí jen finální výstup z php (echo apod..).
13. 10. 2021 09:39:37
https://webtrh.cz/diskuse/ajax-nacitani-obsahu-v-php/#reply1491964
Sashaa
verified
rating uzivatele
(18 hodnocení)
13. 10. 2021 12:47:30
Napsal Karel Skočdopole;1632669
V tom php souboru může být echo a pak se to echo zobrazí, ale pokud tam echo není, tak to do html stránky nic nevloží.
Manipulaci s daty jde provádět jen v tom daném php souboru, protože v tomhle případě hlavní stránka ty proměnné nemá. To by se muselo použít:
include kategorie-url-produktu/my_page1.php
Ajax nemůže načíst proměnné přímo z php, protože php je na serveru a ajax u klienta. Ajax vidí jen finální výstup z php (echo apod..).
Jenže to jsem zkoušel a nefunguje to...
my_page1.php má: $nevim = "text";
a my_page2.php vyvolá: echo $nevim;
při vyvolání obou souboru skrze ten AJAX to nefunguje... soubor se sice načte, ale PHP funkce v tom nikoliv... a v tom je ten problém
13. 10. 2021 12:47:30
https://webtrh.cz/diskuse/ajax-nacitani-obsahu-v-php/#reply1491963
TomasX
verified
rating uzivatele
(4 hodnocení)
13. 10. 2021 13:48:17
to takhle ale nemůžeš, my_page1.php a my_page2.php si nemohou předávat proměnné přes stránku, ty skripty jsou samostatné. Jediná možnost je použít třeba ten include, ale je otázka co vlastně děláš a proč to potřebuješ takhle rozdělit na my_page1.php a my_page2.php
13. 10. 2021 13:48:17
https://webtrh.cz/diskuse/ajax-nacitani-obsahu-v-php/#reply1491962
Otakar Pěnkava
verified
rating uzivatele
(26 hodnocení)
13. 10. 2021 14:16:20
Je možné si tyto hodnoty předat zavoláním například:
my_page1.php?nevim=text
A v my_page1.php bude pak něco ve smyslu:
$nevim = $_GET;
13. 10. 2021 14:16:20
https://webtrh.cz/diskuse/ajax-nacitani-obsahu-v-php/#reply1491961
Sashaa
verified
rating uzivatele
(18 hodnocení)
13. 10. 2021 14:19:33
Napsal TomášX;1632695
to takhle ale nemůžeš, my_page1.php a my_page2.php si nemohou předávat proměnné přes stránku, ty skripty jsou samostatné. Jediná možnost je použít třeba ten include, ale je otázka co vlastně děláš a proč to potřebuješ takhle rozdělit na my_page1.php a my_page2.php
Potřebují nahrát asi 10 000 položek do databáze. 
Předtím než to tam nahrají, tak je třeba, aby se ty položky načítali v PHP a načíst 10 000 položek najednou v jednom PHP souboru buď spadne prohlížeč, nebo se to načte asi hodinu...
proto mě napadlo řešení skrze AJAX funkci, že se to načte postupně skrze AJAX:
stranka1.php (s obsahem třeba 1000 řádků)
stranka2.php (s obsahem třeba 1000 řádků)
pak vezmu obsah z těch souborů a nahraju to hromadně do databáze. Pokud je nějaká jiná, lepší metoda, budu rád za rady.
---------- Příspěvek doplněn 13.10.2021 v 18:17 ----------
Tak už jsem přišel s jiným řešením ;)
vytvořím si AJAX TAB, kde každý obsah se načte celý obsah včetně auto insert do databáze, a ty taby by se mezi sebou automaticky přepínali, což by bylo veškeré řešení pro vkládání dlouhých dat do databáze.
13. 10. 2021 14:19:33
https://webtrh.cz/diskuse/ajax-nacitani-obsahu-v-php/#reply1491960
TomasX
verified
rating uzivatele
(4 hodnocení)
13. 10. 2021 19:29:32
tak skvělé. Ano, asi na to jdeš dobře, práci rozdělit a zavolat z jedné stránky. Tvůj popis je dost abstraktní a mám problém se v tom zorientovat, tak je dobře, že jsi dospěl k řešení.
13. 10. 2021 19:29:32
https://webtrh.cz/diskuse/ajax-nacitani-obsahu-v-php/#reply1491959
Pro odpověď se přihlašte.
Přihlásit