Ergebnis 1 bis 8 von 8

Thema: Downloads und ToolboxFile.php

  1. #1
    Contao-Fan Avatar von Bas
    Registriert seit
    03.12.2009.
    Ort
    Hamburg
    Beiträge
    555

    Standard Downloads und ToolboxFile.php

    Ich gehe davon aus, das mein Problem hausgemacht ist und nicht an MetaModels liegt. Da ich aber im Dunkeln tappe, hoffe ich das mir jemand einen Schubs in die richtige Richtung geben kann.
    Mein Problem ist, das alle Download-Elemente folgenden Fehler auswerfen (sprich alle Links die einen Download starten z.B. http://www.domain.de/de/seite.html?file=files/downloads/filename.zip)

    Warning: in_array() expects parameter 2 to be array, null given in system/modules/metamodels/MetaModels/Helper/ToolboxFile.php on line 777

    Egal ob der Download mit ce_download oder Metamodels erzeugt wurde ... immer derselbe Fehler (gefolgt von weiteren Fehlern in der Art und der Datei in Textform am Ende ([...]q8~NF�-�헋z�_޽a#�o��+6~� ��G�x[...]).

    Wie oder wo würdet Ihr die Suche nach dem Fehler beginnen?

    Danke für Input.

    System:
    Contao 3.2.7
    Metamodels aktueller Nightly (heute 12 Uhr)
    (beide mehrmals im letzten Monat aktualisiert, wann der Fehler zum ersten Mal auftrat kann ich nicht sagen)

    Server: Domainfactory
    PHP: 5-54LATEST-STANDARD

  2. #2
    Contao-Urgestein
    Registriert seit
    03.06.2010.
    Ort
    Wuppertal
    Beiträge
    2.149
    User beschenken
    Wunschliste

    Standard

    Könntest du mal testweise in Line 776 ausgeben was in $this->foundFiles drin steht?
    Laut Fehlermeldung wäre das NULL... D. h. er die Dateien werden nicht richtig aufgelöst.

    Was für Dateien hast du da hinzugefügt? Sind die vielleicht nicht in den akzeptierten Dateitypen mit drin?
    Geändert von Flex (01.04.2014 um 22:37 Uhr)

  3. #3
    Contao-Fan Avatar von Bas
    Registriert seit
    03.12.2009.
    Ort
    Hamburg
    Beiträge
    555

    Standard

    Ich hab nun folgendes gemacht:

    Testobjekt war ein Download-Link welchen ich mit dem Core-Modul erzeugt habe (ce_download).

    Wie Du meintest hab ich
    PHP-Code:
    print_r($this->foundFiles); 
    unmittelbar vor die Funktion (ToolboxFile.php) geschrieben.

    Ich erhielt 107 Downloads gelistet:
    Code:
    [...]
    Array
    (
        [0] => files/presse/2010-11_auch-passive.jpg
    )
    Array
    (
        [0] => files/presse/2010-11_auch-passive.pdf
    )
    [...]
    -- alles Dateien aus einer MetaModels-Liste bei welchen ich aber keinen Download-Link ausgebe, sondern im Template manuell einen Link stricke (bzw. manuell die Bilder positioniere), da es es sich nur um PDFs handelt welche sich in einem neuen Fenster öffnen sollen.
    Meine mittels ce_download verlinkte Zip-Datei erschien in diesen Arrays nicht.

    Nun hab ich einen der Strings aus den Arrays an meine URL gehängt ... und es wurde ein Seitenreload durchgeführt und sonst passierte nichts. Als ich aber nun in Folge meinen ce_download betätigte .. oh Wunder ... keine Fehler mehr - der Download startete.
    Das alles machte ich auf meinem Dev-System.

    Auf dem Livesystem habe ich nun einmal auf der passenden Seite an die URL manuell einen der Downloads aus dem Array angehängt (?files/presse/2010-11_auch-passive.jpg) und in Folge laufen die Downloads auch auf dem Live-System.

    Keine Ahnung warum und wieso .. aber es funktioniert.

  4. #4
    Contao-Fan Avatar von Bas
    Registriert seit
    03.12.2009.
    Ort
    Hamburg
    Beiträge
    555

    Standard

    Zu früh gefreut ... es funktioniert auf Firefox, aber nicht auf IE und Chrome.

    Also um genau zu sein, der Download mittels ce_download funktioniert.
    Downloads auf einer anderen Seite welche mittels Metamodels erzeugt werden nicht.

    Der Aufruf im MM-Template sieht wie folgt aus:
    PHP-Code:
    <?php echo $arrItem['html5']['download']; ?>
    Das Problem liegt offensichtlich in der Ausgabe der href:

    ce_download gibt aus:
    href="de/medien.html?file=files/downloads/logos/Logo_ABC.zip"

    Metamodel gibt aus:
    href="de/produkte.html?file=files%2Fmanufacturer%2Fpdf%2FAu tomotiveProducts.pdf"

    Wenn ich die file-URL manuell anhänge und vorher die %2F durch / ersetze funktioniert es.

    Daher die Frage .. wie krieg ich es hin, das von Metamodels die href ohne die Codierung ausgegeben werden???

    ---
    Nachtrag ..ich weiss nicht ob es wichtig ist, aber das verantwortliche mm_attr_file.html5 wurde von mir modifiziert und sieht wie folgt aus:

    PHP-Code:
    <?php if (is_array($this->src)): ?>
    <p class="downloads">
    <?php foreach($this->src as $arrFile): 
    $strTitle = ($arrFile['title']) ? $arrFile['title'] : (($arrFile['alt']) ? $arrFile['alt'] : $arrFile['file']);
    $strAlt   = ($arrFile['caption']) ? $arrFile['caption'] : '';
    ?>
    <a title="<?php echo $strTitle?>" href="<?php echo $arrFile['url']; ?>"><?php echo $strTitle?></a></span> <span class="size"><?php echo $arrFile['sizetext']; ?><br>
    <?php endforeach; ?>
    </p>
    <?php endif; ?>
    Geändert von Bas (02.04.2014 um 11:17 Uhr)

  5. #5
    Contao-Nutzer Avatar von denniserdmann
    Registriert seit
    10.04.2013.
    Ort
    Kiel
    Beiträge
    73

    Standard

    Moin!

    ich habe gerade den gleichen Fehler und bin über google auf deinen Eintrag gestoßen.
    Habt ihr für das Problem eine Lösung gefunden, bzw. herausgefunden woran es lag?

    Gruß Dennis

  6. #6
    Contao-Fan Avatar von Bas
    Registriert seit
    03.12.2009.
    Ort
    Hamburg
    Beiträge
    555

    Standard

    Hallo Dennis,

    ne keine Lösung .. hab es umschifft, indem ich in den Templates die Links selber ausgebe. Falls Du was findest .... lass es mich wissen.

  7. #7
    Contao-Nutzer Avatar von timbec
    Registriert seit
    22.09.2009.
    Ort
    Aachen
    Beiträge
    150
    Partner-ID
    7828
    User beschenken
    Wunschliste

  8. #8
    Contao-Yoda Avatar von MacKP
    Registriert seit
    15.06.2009.
    Ort
    Duisburg
    Beiträge
    13.292
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Bugfix ist gemacht. Bitte testen und im Ticket Rückmeldung geben ;-)

    Viele Grüße
    Contao Pool | C-C-A | MetaModels | [Internetseite -> Mediendepot Ruhr]
    [Arbeitet bei -> Paus Design & Medien]
    "I can EXPLAIN it to you, but I can't UNDERSTAND it for you."

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •