Div automatisch neu laden dabei Variablenwerte Übergeben

shahabgroup2002

Mitglied
Thread Starter
Mitglied seit
16.10.2019
Beiträge
7
Hallo Leute.

Also folgendes Problem:

Ist Zustand: Ich lade in einer fertigen Seite ein Div container jede Sekunde neu. Das erzeugt einen Timer der 25:00 Minuten runterläuft. Desweiteren werden gewisse Daten reingeladen wie Ergebnisse eines Fußballspiels. So wie ein Livescore.

Problem: Die Variablen aus der INDEX.PHP oder GET werden im aufgerufenen PHP nicht erkannt.

Header:

<script>
setInterval(
function()
{
$('#auto_LS').load('PHPfiles/livescore2019.php');
}, 1000);
</script>

PHP Code zum Aufruf der PHP-Datei (livescore2019.php):

<div class="MainContent">
<div id="auto_LS">

</div>
</div>


In der Datei Livescore2019.php kann ich auf keines der Variablen der INDEX.php zugreifen. Geschweige denn auf GET Variablen oder auf zweidimensionalen Arrays. Als wäre Livescore2019.php ein in sich abgeschlossener Prozess.

Bitte um Hilfe.
 

shahabgroup2002

Mitglied
Thread Starter
Mitglied seit
16.10.2019
Beiträge
7
Header:

<script>
setInterval(
function()
{
$('#auto_LS').load('PHPfiles/livescore2019.php');
}, 1000);
</script>

PHP Code zum Aufruf der PHP-Datei (livescore2019.php):

<div class="MainContent">
<div id="auto_LS">

</div>
</div>
Hier ist doch der Code! FEHLER: der untere Code ist der HTML und nicht PHP Code, der LIVESCORE2019.php aufruft.

Im Livescore2019.php kann ich weder auf GET Variablen die in der Adresszeile sind zugreifen (sind quasi leer) noch auf Variablen der Index.php (die gerade ausgeführt wird. Adresse: www.xyz.de/index.php)

lg
 

warnochfrei

Mitglied
Mitglied seit
02.03.2019
Beiträge
1.295
Ach so, da könnte das Verständnisproblem liegen. Weil du "PHP-Code" drangeschrieben hast, aber da ist keiner.

Ein AJAX-Aufruf (wieso auch immer du den mit jQuery machst - Verschwendung von Ressourcen m.M.n.!) greift nicht auf die Umgebungsvariablen (u.a. $_GET) zu. Die musst du extra übergeben, wenn du sie brauchst.
 

shahabgroup2002

Mitglied
Thread Starter
Mitglied seit
16.10.2019
Beiträge
7
So und genau das ist die Frage WIE?

Oder gleich eine nadere Frage: Wie löse ich es am Besten? Danke für deine Antwort.
 

MacMac512

Mitglied
Mitglied seit
12.09.2011
Beiträge
4.680
Ich würde die Variablen, die du auf der index.php einliest in eine Session schreiben und als Session Variablen weiter nutzen.
Damit kannst du immer wieder abrufen und nutzen.

Beschäftige dich außerdem mal mit GET und POST. Da gibt es bedeutende Unterschiede.
 

shahabgroup2002

Mitglied
Thread Starter
Mitglied seit
16.10.2019
Beiträge
7
SESSION komm hier leider nicht in Frage da ich unter anderem zweidimensionale Arrays im Index.php habe und die per SESSION zu übergeben wäre ein Horror.

Aber wie ist die Sachlage mit AJAX gelöst? gibt es da einen standard Code sowohl für den Auto-Reload als auch Variablen Übergabe?
 

shahabgroup2002

Mitglied
Thread Starter
Mitglied seit
16.10.2019
Beiträge
7
Habe ich mir angeschaut. Leider nicht schlau geworden. Mir fehlt ein Praxisbeispielt. Ein einfacher Code wie man Auto Reload macht und dabei auf eine GET Variable oder Array aus der Index.php zugreift. Schade!
 

warnochfrei

Mitglied
Mitglied seit
02.03.2019
Beiträge
1.295
Bisschen Selbermachenmüssen bringt dir vermutlich mehr als wenn dir wer den Code copy-and-paste-fähig einfach hier reinschreibt, würde ich meinen.

Aber bitte:

1. JavaScript-Reload: Du brauchst einen setInterval()-Aufruf, der jeweils fetch() aufruft und das Ergebnis (den Rückgabewert von fetch() im then()-Teil - siehe mein zweiter Link) per innerHTML in das DIV schreibt.
2. GET-Variable: Angenommen, ich habe die GET-Variable "foo" auf "bar" gesetzt, also index.php?foo=bar, dann sieht der Aufruf so aus:

Code:
Inhalt nur für registrierte User sichtbar  Logge dich ein oder registriere dich jetzt.
 

shahabgroup2002

Mitglied
Thread Starter
Mitglied seit
16.10.2019
Beiträge
7
Sorry. 0 Plan. Irgendwie blicke ich überhaupt nicht durch. Da finde ich nichts betreffend AUTO RELOAD oder ähnliches. Stehe komplett auf der Leitung.
Es müsste doch ein einfaches Beispiel geben? Alles was man auf Youtube oder Google findet ist genau so gelöst wie ich es mache. Aus den drei Links werde ich leider nicht schlau. Danke trotzdem für eure Hilfe.
 

warnochfrei

Mitglied
Mitglied seit
02.03.2019
Beiträge
1.295
"AUTO RELOAD" ist ein Bullshitbingogewinnterminus für "setInterval(), das regelmäßig irgendwas aufruft und anzeigt" ... ;)
Deine Termini sind keine Fachtermini. Danach zu suchen ist daher bedingt sinnvoll...
 

medeman

Mitglied
Mitglied seit
29.04.2010
Beiträge
2.746
Ich würde die 1000ms ja auch erst anfangen zu zählen, wenn fetch oder $.ajax ihr Versprechen erfüllt (oder nicht erfüllt) haben. Je nach Netzwerkbedingungen kann so eine Anfrage auch mal länger als eine Sekunde dauern und dann würden die sich anhäufen.