Rekursiv Daten aus einer MYSQL Tabelle auslesen
Hallo zusammen,
ich habe mal eine Frage (bin noch php Anfänger). Ich habe einen Code der so aussieht: <?php include_once "inc.db.php"; $link = mysql_connect($db_host, $db_user, $db_pass) or mysql_error(); $conn = mysql_select_db($db_name) or mysql_error(); $result0 = mysql_query("select * from ksh where is_sub = '$row[1]'"); while ($row = mysql_fetch_row($result0)){ echo "<br>http://rgrusvmwww.grz.roche.com/korelex_test/kostenstellen.php?is_sub=$row[1]&konto=$row[1] $row[2]</br>"; $result1 = mysql_query("select * from ksh where is_sub = '$row[1]'"); while ($row = mysql_fetch_row($result1)){ echo "<br>http://rgrusvmwww.grz.roche.com/korelex_test/kostenstellen.php?is_sub=$row[1]&konto=$row[1] $row[2]</br>"; $result2 = mysql_query("select * from ksh where is_sub = '$row[1]'"); while ($row = mysql_fetch_row($result2)){ echo "<br>http://rgrusvmwww.grz.roche.com/korelex_test/kostenstellen.php?is_sub=$row[1]&konto=$row[1] $row[2]</br>"; $result3 = mysql_query("select * from ksh where is_sub = '$row[1]'"); while ($row = mysql_fetch_row($result3)){ echo "<br>http://rgrusvmwww.grz.roche.com/korelex_test/kostenstellen.php?is_sub=$row[1]&konto=$row[1] $row[2]</br>"; } } } } ?> und möchte das Ganze rekursiv machen da sich die Tiefe der Ebenen ($result1, $result 2 usw.) ändern können. Kann mir jemand sagen wie das aussehen müsste ? Abbruchbedingung wäre, wenn mysql_query einen leeren Array zurückgibt. Vielen Dank Dirk |
AW: Rekursiv Daten aus einer MYSQL Tabelle auslesen
Sollte ja eigentlich gehen wie bei einer Ordnerstruktur...
Vielleicht hilft dir das. http://lists.phpbar.de/pipermail/php...25/013698.html Achte darauf, wenn immer möglich keine Rekursion brauchen. Es ist meist auch mit While möglich. Gruss Thomas |
AW: Rekursiv Daten aus einer MYSQL Tabelle auslesen
Hallo Thomas,
danke, ich versuchs mit ner Schleife. Würde denke ich so ausehen wie unten. Die läuft bloss im Moment endlos weil ich (so glaube ich jedenfalls ) die Variable $result sozusagen bei jedem Schleifendurchlauf erhöhen müsste (z.B. in der Form $result1, $result2 usw. oder kann ich in PHP die Variable $result auf "nichts" setzen (sowie etwa in vbscript "result = nothing") <?php include_once "inc.db.php"; $link = mysql_connect($db_host, $db_user, $db_pass) or mysql_error(); $conn = mysql_select_db($db_name) or mysql_error(); do{ $result = mysql_query("select * from ksh where is_sub = '$row[1]'"); while ($row = mysql_fetch_row($result)){ echo "<br>http://rgrusvmwww.grz.roche.com/korelex_test/kostenstellen.php?is_sub=$row[1]&konto=$row[1] $row[2]</br>"; } }while($result != ""); ?> Viele Grüße Dirk |
AW: Rekursiv Daten aus einer MYSQL Tabelle auslesen
Bitte benutze den im Forum üblichen php-Tag für Deinen Quelltext wenn Dir geholfen werden soll.
Ansonsten $result = "". |
AW: Rekursiv Daten aus einer MYSQL Tabelle auslesen
ok, danke, danke
habe dann nur noch das Problem wie ich in php sage, dass er die Variable $result als fortlaufenden Index ($result1, $result2 usw. )in der DO WHILE Schleife benutzt. Danke Dirk |
AW: Rekursiv Daten aus einer MYSQL Tabelle auslesen
Stichwort Array: $result[$cnt]
Meinst du das? Ansonsten poste nochmals code und beschreib es bitte genauer... thomas |
AW: Rekursiv Daten aus einer MYSQL Tabelle auslesen
Hallo ,
dann würde das so aussehen: <?php include_once "inc.db.php"; $link = mysql_connect($db_host, $db_user, $db_pass) or mysql_error(); $conn = mysql_select_db($db_name) or mysql_error(); do{ $result[$cnt] = mysql_query("select * from ksh where is_sub = '$row[1]'"); while ($row = mysql_fetch_row($result[$cnt])){ echo "<br>http://rgrusvmwww.grz.roche.com/korelex_test/kostenstellen.php?is_sub=$row[1]&konto=$row[1] $row[2]</br>"; } }while($result[$cnt] = ""); ?> dann muss ich nur noch dafütr sorgen das $cnt hochgezählt wird oder ? Viele Grüsse Dirk |
AW: Rekursiv Daten aus einer MYSQL Tabelle auslesen
Hallo,
oder anders ausgedrückt. Warum funktioniert folgender Code nicht ? PHP-Code:
Dirk |
AW: Rekursiv Daten aus einer MYSQL Tabelle auslesen
Zitat:
|
AW: Rekursiv Daten aus einer MYSQL Tabelle auslesen
Hallo,
er gibt den ersten Datensatz unendlich mal aus anstatt weiterzumachen. Folgender Code übrigens (der eigentlich das selbe machen sollte) funktioniert (hat allerdings noch keine Abbruchbedingung enthalten, geht einfach bis zur 4.Ebene ($result3)): PHP-Code:
Dirk |
Alle Zeitangaben in WEZ +2. Es ist jetzt 09:20:40 Uhr. |
Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.