einen JS-TREE mit Hilfe einer PHP-Datenbankabfrage füllen

papi

Grünschnabel
Hallo, bin neu hier und sitze vor einem grossen Problem.
Ich bringe mir gerade JS bei und stosse schon an meine Grenzen und würde sehr gerne Expertenrat annehmen.

Problembeschreibung:
Ich habe eine mySQL Datenbank, aus der ich Daten hole. Zum Beispiel mehrere Daten mit Uhrzeit. Ich möchte gerne einen JS-TREE damit füllen. Alle Anfangszeiten sollen als Menü, alle anderen Zeiten, die zur gleichen session gehören als Submenü geordnet werden.
Wenn ich auf ein Submenü klicke, möchte ich die Zeit und die session_id an ein PHP script übergeben, welches mir mehr zugehörige Daten aus der DB holt.

Was ich schon habe:
SQL-Abfargen, JS-Tree, HTML-Geschichte mit Frames, PHP-Scripte

Was ich brauche:
Einen Guten Tip, wo ich fertige Scripts bekomme oder einen Experten, der die Gedult hat, mir einige Tips zu geben.

Ist soetwas machbar?

DANKE
 
ich denke, dass du das ganze mal besser in kleine häppchen verpackst.

einen js-tree nimmst du für die navigation (wahrscheinlich ein array)

die session-id wird in den php-dateien doch sowieso durchgeschleift ... warum benötigst du die nochmal im tree ... oder was ist mit session gemeint.

um welche zeiten gehts?

poste doch einfach mal einen teil des javascripts ... vielleicht kommen wir der lösung dann näher ...

greez

:) Mogler
 
@ Mogler

Vielen Dank für deinen Tip und die schnelle Antwort.
Mein Problem ist, dass es sich erstmal im Kopf abspielt und als Skizze auf dem Papier. Ich habe mir gerade meinen Text oben durchgelesen und mir an den Kopf gepackt. Wie soll das jemand verstehen, der mein Projekt nicht kennt.
Ich versuch es mal zu verdeutlichen:

Ich möchte auf mein bestehendes PHP-Projekt aufbauen.
Ich hole mittels PHP und mySQL Daten aus einer SQL-Datenbank. Diese Daten sind Gesprächs-Log-Files. In denen sind die zugehörige "start_time" und die "session_id" enthalten. Gewünscht ist es, die Ausgabe gruppiert nach startzeiten auszugeben. Es soll als Baum-Menü dargestellt werden. Als Untermenü sollen dann die nachfolgenden Zeiten dienen, die zu der geichen session gehören. Alles sesson, die ich genannt habe, sind die der Daten und haben mit den Skripten nichts zutun.
Nun ja, ich habe also Daten und möchte diese als Baum Darstellen. Das bekomme ich vielleicht noch hin, aber nun mein Huptproblem.
Wenn ich auf das Submenü im Baum klicke, sollen die start_time und die session_id (auch wieder on den Daten) an eine andere PHP-Seite übergeben werden. Habe mir die Syntax des Baumes angesehen und habe keine Ahnung, wo ich da was übergeben kann. Ein Target kann ich angeben, da ist denn die PHP-Seite, die in einem anderen Frame mit den Daten, die übergeben wurden, einen neuen Datenbankzugriff macht. Dieses PHP-Skript ist auch schon vorhanden. (Aus dem bestehenden Projekt). Mein Problem ist das JavaScript in dem JSTREE.
Wie fülle ich das Baummenü und wie kann ich aus dem Baum heraus Variablen übergeben?

Ich hoffe, ich habe es etwas deutlicher gemacht. Stehe für Kritik, Anmerkungen und Tips bereit. Hier ein Skript aus dem Baum, um das es sich handelt.

Code:
var TREE_NODES = [
        ['2004-02-29 10:01:11', null, null,
                ['2004-02-29 10:01:11 Sub logs in incoming', 'test.php', 'rechts'],
                ['2004-02-29 10:01:20 Sub retrieves a message', 'anz2.php', 'rechts'],
                ['2004-02-29 10:01:44 Sub logs in incoming', 'anz3.php', 'rechts'],
        ]
];

Die Zeiten wie "2004-02-29 10:01:11" möchte ich mit Variablen aus meiner Datenbankabfrage füllen. Und dann Variablen an z.B. test.php übergeben.
Die Verlinkung klappt.

Wie mache ich das?

Danke
 
hi,

du muss ja zuerst eine datenbank-anfrage definieren.
die angeforderten daten liest du in einer while-schleife aus.
innerhalb dieser while-schleife baust du dir dann die einzelnen menu-elemente im string zusammen.

vor und nach der schleife kommt der anfang bzw der abschluss des trees.

$connection soll den datenbank-connect repräsentieren.

Code:
<?PHP
$tree = 'var TREE_NODES = [';
$query = "SELECT datum,...";
$result = mysql_query($query,$connection);
while ($row = mysql_fetch_array($result))
{
	$datum = $row['datum'];
	$tree .= "['" . $datum . "', 'test.php', 'rechts'],"
}
$tree .= "]];";
?>
<script>
...
<?=$tree;?>
...
</script>

so in etwa könnte das aussehen. ich hoffe es hilft dir!

:) Mogler
 
@ Mogler

Vielen Dank für deine Hilfe.
Ich arbeite daran. Sobald es einen Erfolg bzw. Misserfolg zu verzeichnen gibt, gebe ich bescheid.
 

Neue Beiträge

Zurück