nietaL
NGBler
Hey Leute,
Das Projekt ist mittlerweile riesig, weshalb ich hier nur ganz grobe Strukturen aufzeigen kann. Ich habe das Problem auch genau lokalisiert, nur lösen kann ich es nicht.
Ich habe das Hauptdokument, in dem sich zwei Divs befinden. Mit klick auf einen der Links, werden DB-Einträge aktualisiert und dann per AJAX die beiden Divs gezwungen, sich selbst zu aktualisieren: eben mit den neuen DB-Daten. Das funktioniert soweit auch grundlätzlich.
index.html
[src=html4strict]
<html>
<div id="1">
<a onmouseover="tooltip('<?php include('tooltip.php'); ?>');">KLICK</a>
</div>
<div id="2">
<a onmouseover="tooltip('<?php include('tooltip.php'); ?>');">KLICK</a>
</div>
</html>
[/src]
tooltip.php
[src=php]
include('inc/funktionen.php');
[/src]
funktionen.php
[src=php]
function hull($p1)
{
mach was;
}
function fuel($p1)
{
mach was;
}
usw.
[/src]
Die geforderte tooltip.php selbst erscheint nur beim Hovern über die Links. Auch das funktioniert hervorragend nach einem vollständigen Neuladen des Hauptdokumentes. Wurde aber ein Link geklickt, stirbt einer der beiden Divs beim Neuladen. (Entferne ich das Hover-Feature bei einem der beiden Divs, läuft der Rest aber vollständig durch, auch mittels AJAX.)
Die tooltip.php selbst greift auf deine weitere php zu, die einen Haufen Funktionen innehat.
Das Problem: Wenn die beiden Divs gezwungen werden, sich zu aktualisieren, greifen beide jeweils einmal per include auf diesen Funktionenhaufen zu. Damit wird jede Funktion zweimal deklariert. Und das stört ihn. Der Gegentest, einen zweiten Satz Funktionen mit selbem Inhalt aber anderen Namen zu inkluden, funktioniert zwar, halte ich aber für schwachsinnig. Denn: Beim Neuladen der Gesamtseite stört sich ja der Code anscheinend nicht daran. Nur wenn per AJAX nachgeladen wird.
Ich weiß einfach nicht, wo ich die funktion.php inkludieren soll, damit sie zwar für beide Divs verfügbar ist, aber nicht mit sich selbst kollidiert, wenn die Divs gleichzeitig mittels AJAX nachgeladen werden.
Ich höre ersteinmal auf zu schreiben und warte, ob mich überhaupt irgendjemand versteht.
Das Projekt ist mittlerweile riesig, weshalb ich hier nur ganz grobe Strukturen aufzeigen kann. Ich habe das Problem auch genau lokalisiert, nur lösen kann ich es nicht.
Ich habe das Hauptdokument, in dem sich zwei Divs befinden. Mit klick auf einen der Links, werden DB-Einträge aktualisiert und dann per AJAX die beiden Divs gezwungen, sich selbst zu aktualisieren: eben mit den neuen DB-Daten. Das funktioniert soweit auch grundlätzlich.
index.html
[src=html4strict]
<html>
<div id="1">
<a onmouseover="tooltip('<?php include('tooltip.php'); ?>');">KLICK</a>
</div>
<div id="2">
<a onmouseover="tooltip('<?php include('tooltip.php'); ?>');">KLICK</a>
</div>
</html>
[/src]
tooltip.php
[src=php]
include('inc/funktionen.php');
[/src]
funktionen.php
[src=php]
function hull($p1)
{
mach was;
}
function fuel($p1)
{
mach was;
}
usw.
[/src]
Die geforderte tooltip.php selbst erscheint nur beim Hovern über die Links. Auch das funktioniert hervorragend nach einem vollständigen Neuladen des Hauptdokumentes. Wurde aber ein Link geklickt, stirbt einer der beiden Divs beim Neuladen. (Entferne ich das Hover-Feature bei einem der beiden Divs, läuft der Rest aber vollständig durch, auch mittels AJAX.)
Die tooltip.php selbst greift auf deine weitere php zu, die einen Haufen Funktionen innehat.
Das Problem: Wenn die beiden Divs gezwungen werden, sich zu aktualisieren, greifen beide jeweils einmal per include auf diesen Funktionenhaufen zu. Damit wird jede Funktion zweimal deklariert. Und das stört ihn. Der Gegentest, einen zweiten Satz Funktionen mit selbem Inhalt aber anderen Namen zu inkluden, funktioniert zwar, halte ich aber für schwachsinnig. Denn: Beim Neuladen der Gesamtseite stört sich ja der Code anscheinend nicht daran. Nur wenn per AJAX nachgeladen wird.
Ich weiß einfach nicht, wo ich die funktion.php inkludieren soll, damit sie zwar für beide Divs verfügbar ist, aber nicht mit sich selbst kollidiert, wenn die Divs gleichzeitig mittels AJAX nachgeladen werden.
Ich höre ersteinmal auf zu schreiben und warte, ob mich überhaupt irgendjemand versteht.