Hledáme investora pro realizaci velkoobchodní zakázky. Výnos od 20% za půl roku do 500% ročně.
13.10.2021 01:08
1
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:
Kód:
$(document).ready(function(){
 $(".test1").click(function(){
 $("#div1").load("kategorie-url-produktu/my_page1.php");
 });
  $(".test2").click(function(){
  $("#div2").load("kategorie-url-produktu/my_page2.php");
 });
});
Zde se načte v HTML:

Kód:
<div id="div1">tohle se nahradi page1</div>
<div id="div2">tohle se nahradi page2</div>
<button class="test1">Get External Content</button>
<button class="test2">Get External Content</button>
A zde je obsah, co se načítá v PHP my_page1.php:

PHP kód:
$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 08:02
2
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 09:39
3
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 12:47
4
Původně odeslal Karel Skočdopole
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";
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 13:48
5
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 14:16
6
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['nevim'];
13.10.2021 14:19
7
Původně odeslal TomášX
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 [font="IBM Plex Sans", sans-serif](s obsahem třeba 1000 řádků)[/font]

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 19:29
8
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í.