[Funktion] Rekursive Funktion - PHP-file download

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Funktion] Rekursive Funktion - PHP-file download

    Hey Leute

    Ich hab ne rekursive Funktion gebaut die ein paar Mal aufgerufen wird:

    PHP-Code:
    function traceRoute ($traceID) {
        global 
    $hops;

        
    $hops++;
        
        
    $getAllOppositeID getValues("unwichtiger Teil");
        
    $scannedID[] = $traceID;
        
    $noTrace false;
        foreach (
    $getAllOpposID as $oppositeID) {        
            foreach (
    $scannedID as $scannedID) {
                if (
    $scannedID == $oppositeID) {
                    
    $noTrace true;
                }                
            }
            if (
    $noTrace != true) {
                
    traceRoute($oppositeID);
            }
            
    $noTrace == false;
        }

    Wenn ich diese Funktion aufrufe will mir Apache das File direkt als download anbieten (allerdings mit keinem Inhalt).

    Wenn ich der rekursive Teil traceRoute($oppositeID) auskommentiere geht alles prima (natürlich ausser der Funktion die nur 1x aufgerufen wird).

    Ich hab schon gedacht dass zu wenig Resourcen vorhanden sind, denn es sind schon ein paar IDs (ca 100) die überprüft werden.

    Liegt da ein Strukturfehler vor oder liegts an meinen Daten (Erkläre bei Bedarf mehr über diese).

    Das SQL-Statement kann ich ganz ausschliessen, an dem liegts nicht.

    Kann MySQL so viele SQL abfragen nicht verarbeiten?

    Danke für eure Beiträge!

  • #2
    "rekursive" SQL-Abfragen sind natürlich nie gut.

    Versuch mal eine Fehlermeldung zu erhalten.

    mach auch mal ein paar Testausgaben.

    Funktionierts mit einer weniger rekursiven struktur?

    Kommentar


    • #3
      o mein gott!

      tut mir ja furchtbar leid. ich hatte vergessen die Variable $scannedID zu globalisieren
      sorry Tobiaz für deine Mühe, aber trotzdem danke!

      Kommentar


      • #4
        und jetzt sag mir nicht du hattest dein error_reporting nicht E_ALL, so wie es in unseren Regeln steht.

        Kommentar


        • #5
          PHP-Code:
          <?php
          error_reporting
          (E_ALL);
          keine angst war auf all

          Kommentar

          Lädt...
          X