Beiträge von Arne Drews

    Hallo,

    Das ganze basiert vermutlich auf JavaScript. data-type wird das Attribut sein, das JS sagt, wie der Content geöffnet werden soll.
    In diesem Fall iframe. Allerdings hinkt das ganze beim href-Attribut, denn das hat mit einem <button> erstmal wenig zu tun.
    Wie im Beispiel des Author zu sehen, benötigst Du das beim <a>-Tag.

    Um ehrlich zu sein, so ganz habe ich nicht verstanden, was Du Dir da zusammenklöppeln willst.

    Wer hat was von falsch gesagt?

    Fakt ist: Die Art und Weise aus #4 ist die, nach der es gedacht ist.
    Ansonsten wäre ja nur ein Aufruf möglich, wie Du selber festgestellt hast. Welchen Vorteil sollte das also haben?
    Wenn Du zwei Dinge nach dem OnLoad verarbeiten willst, müsstest Du entweder mehrfach window.onload bemühen oder alles in der aufgerufenen Funktion ( hier: glow ) abarbeiten.
    Wozu aber eine neue Funktion, wenn das Event-Objekt in Javascript dies bereits vorsieht?!

    Das meine ich mit richtig machen...
    Du musst die Antworten anderer nicht umdrehen, um recht zu behalten.

    Beim Hochladen kannst Du die Datei doch mit move_uploaded_file() hinschieben, wo Du willst.
    Idealerweise in ein Verzeichnis, auf das erstmal keiner per HTTP Zugriff hat. Dann bietest Du eine "Inhalt"-Seite an, wo alle die Downloads aufgelistet werden als Link zu einer Prozessdatei.
    In dieser lädst Du den gewählten Download und sendest ihn zum Browser, siehe header().

    Wo genau hängst Du da?
    Zeig bitte Deinen Ansatz, damit man da ansetzen kann.

    Hi,

    Zunächst mal: Das !important gehört in die jeweilige Definition und nicht außerhalb des Blocks!
    Weiterhin ist !important fast immer nur das Resultat eines Logik-Fehlers in der Wertigkeit von Styles.

    Beispiel:

    Code
    <div id="bar" class="foo">foobar</div>
    
    
    
    
    DIV { background:#c00; }
    DIV.foo { background:#0c0; }
    DIV#bar { background:#00c; }


    Der DIV würde hier am Ende einen blauen Hintergrund haben, weil jede Reger die vorige durch ihre Wertigkeit überschreibt.

    Drehst Du das mal um:

    Code
    <div id="bar" class="foo">foobar</div>
    
    
    
    
    DIV { background:#c00; }
    DIV#bar { background:#00c; }
    DIV.foo { background:#0c0; }


    , bleibt der DIV blau, denn eine ID hat eine höhere Wertigkeit, wie eine CLASS.
    Hier könnte man jetzt bei der CLASS-Rule !important verwenden, um die Wertigkeit der ID zu "überschreiben", aber die sinnvollere Variante ist, sein CSS und dessen Regeln sauber zu ordnen.

    Gruß Arne

    Hallo,

    Der Parameter an der Stelle ist ein String und erwartet eine Zeichenkette mit dem Namen der Schriftendatei.
    Wenn Du eine Datei mit Namen XFILES.ttf dort ablegst, existiert noch lange keine Datei mit dem Namen arial.ttf!

    Ich kann mir auch ehrlich gesagt nicht vorstellen, wie eine .ttf eine Sammlung von unterschiedlichen Schriftarten sein kann.
    Dass dort Abwandlungen bzw. Varianten einer Schriftart zusammengeführt werden ja, aber unterschiedliche Schriften, nein... Wie soll man denn da auf einzelne zugreifen können?

    Wir haben hier ja nun auch ein paar Links in den Beiträgen und haben sicher alle mal was von sog. Suchmaschinen gehört.
    Einfach Suchbegriffe eingeben und die Ergebnisse der ersten bis evtl. dritten Seite einmal anschauen, um herauszufinden, was das richtige für einen ist.

    Für alle, die mit den quasi gerade neuen Suchmaschinen nicht so vertraut sind, hier noch ein paar Links, basierend auf typischen Suchbegriffen:

    Ich habe jetzt mal Google verwendet, ich bitte euch aber mir zu glauben, dass das auch mit anderen Tools dieser Art geht!
    Und weil die wie gesagt relativ neu sind, hier noch drei weitere:


    [MOD: Thread geschlossen]

    Hallo,

    Ich sehe den Weg über MySQL oder sqlite nicht als Fehler anfälliger, wie den krampfhaften Versuch, CSV-Dateien verbinden zu wollen, um die Daten in einer übersichtlichen Tabelle darzustellen.

    Kleines Beispiel:
    Deine beiden Dateien, könnte man auf so eine Weise verheiraten und sauber als Tabelle darstellen:

    Für CSV gibt es natürlich auch entsprechende PHP-Bibliotheken, aber auch damit kommst Du nicht viel schneller und mit weniger Code ans Ziel.
    Und hier haben wir nur zwei Dateien verheiratet, Du willst noch zwei weitere Abhängigkeiten schaffen, was zu immer komplexerem Code führt.
    Das ist für mich eher Fehler anfällig, als den Prozess einmal in die DB zu schieben oder von dort zu importieren.

    Ich persönlich halte auch den TAB nicht für den idealsten Trenner innerhalb von CSV Dateien, aber grundsätzlich macht dieser das auch Fehler anfällig, je nachdem wie die Daten in das exportierende System mal reingekommen sind.

    Ich habe Dir nun jedenfalls eine Möglichkeit zur Umsetzung, sowie Suchbegriffe zwecks Alternativer Umsetzung gegeben.
    Dennoch rate ich Dir gerade wenn es um ein "Monitoring" geht, eine Datenbank einzusetzen.

    Gruß Arne

    Hallo,

    Wenn MySQL aus welchem Grund auch immer nicht in Frage kommt, wäre noch sqlite praktikabel.
    Allerdings ist das auch ohne DB mit bspw. PHP machbar, je nachdem wie groß die Datenmenge ist, kann das aber sehr unperformant werden.

    Detailliert kann man da allerdings erst werden, wenn man ein bisschen mehr Info zu den Datenverbindungen hat.
    Am besten ein paar Beispieldaten ( echte Daten kannst Du ja gegen Fake-Daten ersetzen ).

    Gruß Arne

    Zitat

    solange es nur ums Anzeigen geht und nicht ums von Dritten Hochladen -passiert doch nix ..- Oder ?

    Jeder HTTP-Request ist manipulierbar...

    Zitat

    das auslesen geht wohl über $_FILES ( Super Globale ) und das darstellen dann
    über eine Schleife -

    Ich denke eher über $_GET, $_FILES kommt zum Einsatz, wenn Du Dateien hochlädst ( upload ). Er möchte aber auf Klick ( <a>-Tag ) eines Verzeichnes-Namen die in dem Verzeichnis befindlichen Dateien auflisten.
    GET läuft über HTTP und ist durchaus auch manipulierbar. Zugegeben, relativ einfach neutralisierbar, aber ich denke nicht, dass Du wirklich den Tipp geben willst: "Solange Du nur anzeigen willst, musst Du nicht verstehen, was Du tust"... ;)

    Damit meine ich, dass Du das, was Du in zwei Requests machst in einem machen solltest.
    In der selectedItems.php sehe ich grundsätzlich auch keinen Response, daher kannst Du die einfach mit der tblSelectedItems.php zusammenführen.
    Dann würde ein $.post() reichen. Die Rückgabe ( Response ) kannst Du dann ähnlich wie bei load() mit html() an den DIV hängen.

    Siehe dazu die Beispiele hier: Doku jQuery $.post

    Zitat

    in selectedItems.php ist session_start() drin (Zeile 3).

    Stimmt... Habe ich übersehen, weil ich das ganz als erstes erwartet habe...

    Zitat

    In tblSelectedItems.php ist kein session_start(), weil die Datei in eine andere Datei "included" wird, und die wiederum hat session_start() am Anfang.
    Wenn ich in tblSelectedItems.php ein session_start() hinzufüge, kommt die Fehlermeldung dass ich das bereits habe und das an der Stelle ignoriert wird.


    Grundsätzlich ist das Verhalten korrekt, denn Du startest einen neuen XmlHttpRequest, ganz egal ob Du nun $.post oder load() verwendest. Und damit er die Session behält, musst Du auch in den Ziel-Dateien immer ein session_start() haben.

    Natürlich meckert er, wenn Du auf der anderen Seite die Datei einbindest, während dort bereits ein session_start() gesetzt wurde.
    Entweder Du denkst komplett um und regelst den asynchronen Prozess über eine komplett eigenständige Datei ( meine Empfehlung! ) oder Du prüfst in der includierten Datei einfach ob session_start() schon gesetzt wurde.

    Dies kannst Du bspw. prüfen, indem Du bei Ersterstellung der Session einen Parameter setzt:

    PHP
    $_SESSION['is_active'] = true;

    Diesen kannst Du dann in der zu inkludierenden Datei prüfen:

    PHP
    if ( !isset($_SESSION['is_active']) )
        session_start()