Hi,
ich habe gerade ein kleines PHP Problem. Vermutlich die die Lösung aber sehr einfach ich kenne Sie nur nicht, weil ich php nur aus Büchern gelernt habe :-(
Ich erzeuge mit der php pear Erweiterung Spreadsheet_Excel_Writer ein Excel Dokument, dass ist soweit auch kein Problem. Ich schreibe z. B. eine Zeile so raus:
ok funktioniert soweit wunderbar. Jetzt muss ich jedoch eine Funktion mit einbauen, die mehr oder weniger eine beliebig Tiefe Staffelung haben kann. Sprich es gibt eine mysql Tabelle die Daten in der Form enthält:
ID | Text | subordinated
wenn in subordinated nicht die gleiche id steht wie im feld id dann ist das ganze nur ein unterthema und eine funktion soll die in subordinated genannte id aufrufen daten ins excel schreiben und sich selbst wieder aufrufen und testen ob die id = subordinated ist. Ok, die funktion an sich ist auch recht einfach und sie so aus:
wobei, dbconnect der link auf meine mysql - klasse ist. Die funktion logger schreibt einfach nur ein log über die ausgeführten Befehle in genanntem Modus. (als nicht relevant).
Ich sehe im logger auch, dass die funktion soweit richtig durchläuft jedoch werden die excel befehle scheibar nicht berücksichtigt. kann mir jemand sagen wie ich das schaffe, dass das geht? Ich habe den link auf worksheet sicherheitshalber schon übergeben... ohne erfolg *heul*
Bin für jeden tipp dankbar!
ich habe gerade ein kleines PHP Problem. Vermutlich die die Lösung aber sehr einfach ich kenne Sie nur nicht, weil ich php nur aus Büchern gelernt habe :-(
Ich erzeuge mit der php pear Erweiterung Spreadsheet_Excel_Writer ein Excel Dokument, dass ist soweit auch kein Problem. Ich schreibe z. B. eine Zeile so raus:
PHP:
$worksheet->write($i, $j++, $res['name'], $bold_grey);
ok funktioniert soweit wunderbar. Jetzt muss ich jedoch eine Funktion mit einbauen, die mehr oder weniger eine beliebig Tiefe Staffelung haben kann. Sprich es gibt eine mysql Tabelle die Daten in der Form enthält:
ID | Text | subordinated
wenn in subordinated nicht die gleiche id steht wie im feld id dann ist das ganze nur ein unterthema und eine funktion soll die in subordinated genannte id aufrufen daten ins excel schreiben und sich selbst wieder aufrufen und testen ob die id = subordinated ist. Ok, die funktion an sich ist auch recht einfach und sie so aus:
PHP:
function subordinated($p_id, $subordinated, $dbconnect, $worksheet) {
if($p_id != $subordinated) {
$query = "SELECT A.p_id, A.name, A.longname, A.description, A.subordinated
FROM phase AS A
WHERE A.p_id = '".$subordinated."'
LIMIT 1";
logger("create_excel_sheet111",$query,LOG_LEVEL_DEBUG);
$dbconnect->executeQuery($query);
$worksheet->write($i, $j++, $res['name'],$bold_grey);
$worksheet->write($i, $j++, $res['longname'],$bold_grey);
$worksheet->write($i, $j++, $res['description'],$bold_grey);
subordinated($res['p_id'], $res['subordinated'], $dbconnect, $worksheet);
}
}
wobei, dbconnect der link auf meine mysql - klasse ist. Die funktion logger schreibt einfach nur ein log über die ausgeführten Befehle in genanntem Modus. (als nicht relevant).
Ich sehe im logger auch, dass die funktion soweit richtig durchläuft jedoch werden die excel befehle scheibar nicht berücksichtigt. kann mir jemand sagen wie ich das schaffe, dass das geht? Ich habe den link auf worksheet sicherheitshalber schon übergeben... ohne erfolg *heul*
Bin für jeden tipp dankbar!