Ankündigung

Einklappen
Keine Ankündigung bisher.

UNC Pfade über Webformular - php - mySQL - Backslash

Einklappen

Neue Werbung 2019

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

  • UNC Pfade über Webformular - php - mySQL - Backslash

    Hallo zusammen (mein erster Post )

    ich bin mir nicht sicher wo ich diese Frage platzieren soll, ich hoffe aber hier ist sie am ehesten passend.

    Ich erstelle ein internes Tool und muss zu dem Zweck verschiedene Dateninhalte beim Nutzer abfragen. Das ganze wird in php (ohne Framework weil ich kein geeignetes gefunden habe) auf der Server-Seite passieren und auf Client-Seite mit jquery, Javascript, HTML und der MetroUI für die Oberfläche.

    Soweit klappt auch alles ganz hervorragend - allerdings stolpere ich bei einem sehr speziellen Inhalt über die "backslashes" der eingegebenen Daten.

    Die Datenbank ist eine mariaDB/mySQL mit einigen Tabellen. Die Tabellenstruktur ist soweit recht klein gehalten - ein paar Felder zur Verwaltung und ein "großes" Feld für die Einstellungen, was der Nutzer konfiguriert hat. Die Anzahl der möglichen Variablen für die Konfiguration ist variabel und jede darf ein unterschiedlichen Namen tragen. Ziel der ganzen Variablen ist ein Linux Befehl, der dann an einen Server geschickt wird und ein Prozess angestoßen wird.

    Ein Teil der Variablen kann nun UNC Pfade beinhalten - z.B,. in der Art: \\meinServer\Freigabe\Ordner\zum\Ziel\eineDatei.tx t

    Im HTML Formular nutze ich dazu ein normales Text-Input-Feld.
    Die Datenübertragung an das php Script für die Eintragung in der Datenbank wird mit einer JS Funktion angestoßen. Aus einem JS Array lese ich alle benötigten Feld-Namen aus, hole mir die aktuell gesetzten Variablen und baue daraus ein PHP fertigen Variablen String zusammen:

    der ge-Postete Datenstrom sieht dann so aus:

    PostData => "$data['FeldnameInDB']['subParameter'] = array('use' => '1', 'val' => '\meinServer\Freigabe\Ordner\zum\Ziel\eineDatei.tx t');"
    => Fehler 1 - der doppelte Backslash wurde geschluckt; Javascript ist nicht zu überreden diesen mitzunehmen

    auf dem Server wird alles an ein php Script übergeben.
    => Fehler 2. - ich muss den string evaluieren (eval) - find ich sehr ungünstig - aber nur so sehe ich auf dem Server was der Nutzer alles für Parameter eingestellt hat, weil ich per foreach da recht gut durchgehen kann.

    um die Daten im Datenbank Feld abzulegen mache ich daraus ein json_encode($data['FeldnameDB']) - auch wenn ich explizit an der Stelle ein doppelten Backslash gesetzt ist, schluckt hier json_encode einen davon
    => Fehler 3 und 4 - der doppelte Backslash wird von json_encode geschluckt - und die Datenbank schluckt auch einen davon

    Beim Testing habe ich an allen Stellen natürlich händisch jeweils einen weiteren hinzugefügt um weitermachen zu können.

    Beim Lesen der Daten wiederum selektiert php den Datensatz
    => doppelter Backslash ist noch drin

    Um daraus wieder eine PHP Variable zu machen also ein json_decode($data, TRUE) damit ich ein assoziatives Array bekomme und kein Objekt
    => Fehler 5a - ein Backslash ist weg
    => Fehler 5b - json erzeugt einen Fehler und es gibt ein NULL objekt zurück


    Andere Werte mit einem einfachen Backslash oder auch Umlauten drin werden geschluckt.
    Ich weiss, daß der Backslash eine Escape Sequenz in nahezu allen Sprachen bedeutet. Ich kann mir aber nicht vorstellen, daß ich der erste bin, der darüber stolpert.

    Also liebe Gemeinde - was tun?

    In jeder Sprache habe ich separate Möglichkeiten dieses Problem zu beheben - das ist mir bewusst, aber wie komme ich den ganzen Weg hin und zurück?

    (html) -> input mit \\
    (js) -> Zusammensetzen der Variablen für httpd-post - in Form von PHP Variablen Definition
    (php) -> Post Variable als json umcodieren
    (json) -> Dateninhalt zur mariaDB
    (mariaDB) -> in Feld speichern

    (php) -> Datenbank Inhalt lesen
    (json) -> zurück in PHP Variable codieren
    (html) -> Wert zurück in HTML Seite

    Alle Ideen sind willkommen - Dankeschön!

    Ich hab nun 2x editiert - bei der TXT wird das letzte "t" immer abgetrennt - und der Rest fehlte hier noch.

    Was mir noch einfällt - es gibt natürlich auch Konstruktionen wo im Pfad ein \test oder ein \neueDatei eingetragen werden kann - diese dürfen natürlich nicht als Tabulator oder "new line" interpretiert werden.

  • #2
    Zitat von magmac Beitrag anzeigen
    Das ganze wird in php (ohne Framework weil ich kein geeignetes gefunden habe) auf der Server-Seite passieren und auf Client-Seite mit jquery, Javascript, HTML und der MetroUI für die Oberfläche.
    jQuery kannst du getrost weglassen, das ist heutzutage nicht mehr notwendig, VanillaJS reicht völlig.

    der ge-Postete Datenstrom sieht dann so aus:

    PostData => "$data['FeldnameInDB']['subParameter'] = array('use' => '1', 'val' => '\meinServer\Freigabe\Ordner\zum\Ziel\eineDatei.tx t');"
    => Fehler 1 - der doppelte Backslash wurde geschluckt; Javascript ist nicht zu überreden diesen mitzunehmen
    Das (und alle folgenden Probleme) klingt verdammt schwer nach nicht behandeltem Kontextwechsel - ohne den Code zu kennen lässt sich da aber nicht mehr sagen.

    => Fehler 2. - ich muss den string evaluieren (eval) - find ich sehr ungünstig - aber nur so sehe ich auf dem Server was der Nutzer alles für Parameter eingestellt hat, weil ich per foreach da recht gut durchgehen kann.
    Warum du meinst eval zu brauchen weiß ich nicht - in 99,99% der Fälle ist eval aber eigentlich falsch und nicht notwendig. Aber auch hier: ohne Code lässt sich da nicht mehr sagen.

    um die Daten im Datenbank Feld abzulegen mache ich daraus ein json_encode($data['FeldnameDB'])
    Warum?

    Kommentar


    • #3
      Ich bin mir nicht sicher wo ich diese Frage platzieren soll, ich hoffe aber hier ist sie am ehesten passend.
      (..)
      Das ganze wird in php (ohne Framework weil ich kein geeignetes gefunden habe) auf der Server-Seite passieren und auf Client-Seite mit jquery, Javascript, HTML und der MetroUI für die Oberfläche.
      forgeschritten ist dies laut annmounce nicht:

      https://www.php.de/forum/webentwickl...rf-hier-posten

      ohne framework hedisst auch ohne compoiser ?
      oder baust du dir sozusagen dein framework zusammen auch bpw. pimle, fastroute etc

      metroiUI hat sein eingenes kleiens js dingens m4q - wieso dann jquery ?
      allerdings würde ich dir raten sich mit js fraeworks der neuen generation wie angular,vue, alpine, htmx oder svelte auseinderzusetzen.

      Kommentar


      • #4
        @tk - das Stichwort fehlte mir "Kontextwechsel" - ich habe alle mir bekannten Quellen kreuz und quer durchsucht - aber dieses Wort war einfach nicht dabei - damit komme ich weiter - Dankeschön.
        => Die Intranet-Seite ist über mittlerweile Jahre gewachsen. Damals war jQuery die geeignetste Lösung. Vielleicht ist VanillaJS eine Alternative - ich werde es mir anschauen. Nur 10 Jahre alten Code dahingehend anzupassen ist auf meiner Prio-Liste irgendwo im unteren Bereich. - Danke für den Tipp.
        => Den Code kann ich schwer posten - abgesehen davon, daß er sich (gleichmäßig) über zig Dateien verteilt, ist er auch ein sehr spezieller Inhalt. Es gibt eine kaufbare alternative Lösung des Herstellers der zugrundeliegenden Software - nur könnten wir (beide) uns dafür eine schöne Wohnung kaufen - und die Lösung "gehört" meinem Arbeitgeber, auch wenn ich alleine entwickle.
        => eval will ich eigentlich nicht brauchen.
        Stell Dir folgendes vor: die anzusteuernde Software hat ca. 120 Standard-Parameter, die es via Kommandozeile ansteuern kann. Um sie zu starten werden Jobs mit der Software gebaut, die die Verarbeitung je nach Anforderung/Kunde individuell anpassen. In diesen Jobs wird mit Hilfe von Modulen der Datenweg in einem Workflow abgebildet. Das sind triviale input/output Module, Veränderungen der Daten/Strukturen und auch Layouts für z.B. PDF Daten. Viele der Module haben wiederum eine Schnittstelle zur Kommandozeile. Aus den 120 werden also je nach Komplexität gerne 300 - 500 oder mehr Parameter - mit beliebigen Namen (der Nutzer kann den Namen frei definieren). Erst eine Analyse der Jobs liefert mir hier die hinzukommenden Parameter. Wenn es elegantere Lösungen gibt eine beliebige Anzahl von Parametern aus einem HTML Formular zu einem PHP Scrip zu schicken - sehr gerne. Natürlich kann ich beim empfangenden Script die übermittelte Struktur nachbilden indem ich dieselbe Analyse laufen lasse wie auf der HTML Seite im Vorfeld. Aber hier kommt schon der Overhead der Software auf gut 45 Sekunden.
        => json encoded weil ich die Daten auch einfach wieder aus der DB rausholen will. Wie oben beschrieben - beliebige Anzahl mit unbekannten Namen. Json Strukturen werden bei uns gerne bei REST-APIs genutzt. Ich kann damit kompatibel zu anderen Firmen-Systemen bleiben.

        tom - danke für den Hinweis - ich bin so "Fortgeschritten" um erkannt zu haben, daß kein echtes PHP Framework passend war - nur weil man ein Framework nutzt ist man nicht Profi - die Diskussion ist ähnlich wie bei den Auto-Tunern - sprich mal mit Golf, BMW, Seat...Tunern - frag sie mal wie schnell sie 50 Säcke Zement zur Baustelle schaffen können. Da wird es gute Tipps geben wie ihre Fahrzeuge optimiert werden könnten - 50 Säcke kriegen sie aber nicht in einer Fahrt mit - der Besitzer eines 7,5 Tonners wird müde lächeln und die Sachen aufladen und einmal hinfahren. Ohne Tuning - aber auch ohne 200 in der Kurve zu fahren.

        Was ich oben beschrieben habe, passiert diese ganze Thematik im "industriellen Umfeld" - jeder Overhead potenziert sich hier. Viele Frameworks schreiben "lightweight" .- sind sie aber defacto nicht. Die Nutzung auf Entwickler-Seite ist in allen mir bisher bekannten und getesteten Frameworks für ein anderes Ziel entstanden - nicht aber mein Ziel. Wo auch immer der Overhead passiert - auf Server oder Client Seite. Er ist da - kein Framework war bisher in der Lage das zu ändern. jQuery nervt mich schon wenn ich sehe, daß beim Laden eine Verzögerung von 20 Sekunden deswegen entsteht. MetroUI ebenfalls - sie sind für mich Kompromisse weil der Endnutzer gerne auch sein Look and Feel haben will. MotroUI hat auch ein bisschen JS drin - großes Manko - sie verändern den DOM Baum zur Laufzeit und fügen beliebige Elemente irgendwo hinzu - oder verändern die Größen von Elementen - was die ganze Seite zerreißt. Also ist Metro für mich nur für die Oberfläche nutzbar.
        Dankeschön - die erwähnten neuen Frameworks schaue ich mir gerne mal an - wie ich tk schon geschrieben habe - das ganze ist im Konstrukt über Jahre gewachsen - ein Austausch ist mit viel Nachwehen verbunden.

        Ja - ich habe ein eigenes, für mich passendes Framework, seit 2002 entwickelt.
        Security/BPW => darf ich ausklammern, da diese Tools ausschließlich intern/in separierten Netzen genutzt werden
        pimple => Injections sind bei normaler Nutzung auszuschließen - wer es hinbekommt sieht nachher nicht mehr als vorher eh schon
        fastroute => ist ggf. ein Thema - ich geh dem mal nach.

        Um es nicht falsch darzustellen - ich verweigere mich nicht gegenüber Framework - nur ist die Perspektive für die Tools nicht die nächsten 18 Monate, sondern eher 8-10 Jahre. Wenn sie eingeführt sind, dann bleiben sie lange präsent.

        Kommentar


        • #5
          Danke TK - ich glaub das war der entscheidende Hinweis - irgendwann sieht man den Wald nicht mehr.

          Das von Dir angesprochene "eval" bricht mir das Genick.
          Wird der String mit doppelten Anführungen übergeben wird \t \n \r ... interpretiert => noch schlimmer als eh schon
          mit einfachen Anführungen - oder wenn ich den String erst im Script zusammensetze, wird der doppelte Backslash geschluckt

          Indem ich in Javascript bereits einen json konformen String baue, bleibt auch alles drin. Im Empfangs-Script muss das wieder zurück in die $data Variable gewandelt werden und alles ist fein.



          Hier mal etwas Code vom Testing - Ich habe den Header nur kommentiert - eigentlich steht hier das "Bouquet" meines "Frameworks"
          die URL-Klasse ist eine selbst erstellte Klasse.

          /* wenn in der URL "input" auftaucht, dann simuliere ich hier das empfangende Script */
          <?php
          // lade hier die Standard Header (jQuery und url-Klasse und anderes...)
          if ($url -> get('input') != '') {
          echo "URL input: " . $url -> get('input') . " = reults in => ";
          if ($url -> get('eval') == 1) {
          eval("\$data='" . $url -> get('input') . "';");
          }
          if ($url -> get('eval') == 2) {
          eval($url -> get('input'));
          }
          if ($url -> get('eval') == 3) {
          $in = json_decode($url -> get('input'), TRUE);
          echo($in['data']);
          // eval($in['data'] . ";");
          }
          echo ($data);
          }
          else {
          ?>

          <!-- Und hier die eigentliche Test-Seite //-->
          <script>
          function send() {
          var input = $('input').val();
          console.log(input);
          $('#rep').load('t_010.php?eval=1&input=' + input + '');
          $('#rep2').load('t_010.php?eval=2&input=\$data=\'' + input + '\';');
          $('#rep3').load('t_010.php?eval=3&input=' + JSON.stringify({data:input}));
          }
          </script>

          <input type='text' id='input' value="\\abc\def\test\n\r" style='width: 200px; border: 1px solid red; height: 32px;' />
          <span onclick='send();' style='background-color: #aaaaaa;'> Click </span>
          <hr>
          <span id='rep'> reply sending content - manipulate in receiving script and evaluate</span>
          <hr>
          <span id='rep2'> reply2 - sending ready made php variable with eval</span>
          <hr>
          <span id='rep3'> reply3 - sending json stringified string decoding it in script - no eval!</span>
          <?php
          }
          ?>


          Die Ausgabe nach dem "Click" sieht dann so aus:
          t_010.php.png
          Angehängte Dateien

          Kommentar


          • #6
            Zitat von magmac Beitrag anzeigen
            Stell Dir folgendes vor: die anzusteuernde Software hat ca. 120 Standard-Parameter, die es via Kommandozeile ansteuern kann. Um sie zu starten werden Jobs mit der Software gebaut, die die Verarbeitung je nach Anforderung/Kunde individuell anpassen. In diesen Jobs wird mit Hilfe von Modulen der Datenweg in einem Workflow abgebildet. Das sind triviale input/output Module, Veränderungen der Daten/Strukturen und auch Layouts für z.B. PDF Daten. Viele der Module haben wiederum eine Schnittstelle zur Kommandozeile. Aus den 120 werden also je nach Komplexität gerne 300 - 500 oder mehr Parameter - mit beliebigen Namen (der Nutzer kann den Namen frei definieren). Erst eine Analyse der Jobs liefert mir hier die hinzukommenden Parameter. Wenn es elegantere Lösungen gibt eine beliebige Anzahl von Parametern aus einem HTML Formular zu einem PHP Scrip zu schicken - sehr gerne.
            Warum du meinst eval zu brauchen verstehe ich immer noch nicht, aber wenn du in den name-Attributen der input-Elemente eckige Klammern verwendest, kannst du komplexe Array-Strukturen aufbauen (z.B. name="foo[]" oder name="foo[bar]", einfach mal anschauen was anschließend in $_POST steht). Wenn die Anzahl der Parameter zu groß wird, kommt dir ggf. die Einstellung max_input_vars in die Quere, aber die lässt sich ja ggf. hochsetzen.

            MetroUI ebenfalls - sie sind für mich Kompromisse weil der Endnutzer gerne auch sein Look and Feel haben will. MotroUI hat auch ein bisschen JS drin - großes Manko - sie verändern den DOM Baum zur Laufzeit und fügen beliebige Elemente irgendwo hinzu - oder verändern die Größen von Elementen - was die ganze Seite zerreißt.
            Wenn eine Größenänderung von Elementen die Seite zerreißt deutet das darauf hin dass da noch einiges mehr im Argen liegt - aktuelle Seiten sollten sowas nämlich verkraften und die Elemente einfach nur neu anordnen aber trotzdem bedienbar bleiben. Evtl. ist der Code auch schon so veraltet dass es sinnvoll wäre alles komplett neu zu schreiben? Das mach ich mit unserem Intranet aktuell auch - dessen Basis ist bereits ca. 15 Jahre alt und nur noch schlecht wart- bzw. erweiterbar.

            Kommentar


            • #7
              Zitat von magmac Beitrag anzeigen
              Das von Dir angesprochene "eval" bricht mir das Genick.
              Das was du da machst ist virtueller Selbstmord: ein Angreifer kann dir ganz bequem Code unterjubeln den du dann fröhlich ausführst … Mach. das. nicht. Wirf eval raus, sofort!

              $('#rep').load('t_010.php?eval=1&input=' + input + '');
              Wo ist die Behandlung des Kontextwechsels? Du hast hier einen URL-Kontext in dem es Zeichen mit einer Sonderbedeutung gibt (wobei dein String kein Problem sein sollte, das Problem holst du dir über eval rein). Mal abgesehen davon dass ich die Daten nicht über die URL sondern als POST-Request verschicken würde: warum verwendest du für den Zugriff auf die Daten nicht einfach $_GET (bzw. als POST-Request eben $_POST)?

              Ausprobieren kann ich das jetzt aber nicht wo genau das Problem entsteht, da ist mir der Aufwand zu groß da testbaren Code draus zu basteln.

              Die Ausgabe nach dem "Click" sieht dann so aus:
              Das Bild lässt sich nicht anzeigen. hoefti: wird das auch irgendwann mal wieder repariert?

              Kommentar


              • #8
                Danke TK - sag ich ja - eval in einem übergebenen String war für mich an der Stelle eh eine Krücke - insofern bin ich auch damit zufrieden das Problem nun zusätzlich loszusein.=>

                Kommentar


                • #9
                  Super... der Editor hat noch mehr geschluckt. Ich hatte einen windows-Smiley eingetragen und da endet meine Eingabe.

                  Ich habs "eval" nun eleminiert - vielleicht wäre eine Umbenennung in "eval" -> "evil" eine Idee?

                  Was ich sagen wollte - Post/Get geht genauso - meine url klasse kapselt das nur weil ich noch mehr damit mache. An den Stellen kann natürlich auch die Systemvariable stehen. Das ist insgesamt aus dem Kontext gerissen. Post daher, weil die Standard-Variablen bereits 5 kB lange Strings ergeben, ohne, daß der User große oder tiefe Pfade irgendwo einträgt.

                  hoefti und von mir eine Anmerkung (neben dem Fehler in der Eingabe-Maske) - wenn man den Post bis zum Ende gescrollt hat und sich dann einloggen will, überlagert die Statuszeile das Login-Fenster. Der User ist noch halb sichtbar und man muss nach ganz oben zurückscrollen - das geht doch auch anders

                  Kommentar


                  • #10
                    bitte nutzeb in zuukunft code tags !
                    Ja - ich habe ein eigenes, für mich passendes Framework, seit 2002 entwickelt
                    Security/BPW => darf ich ausklammern, da diese Tools ausschließlich intern/in separierten Netzen genutzt werden.
                    meines erachtens schon der erste denkfehler siehe bpw angriffe auf die SCADA-systeme
                    absichtliche und un absicht,liche insiide attacks gibt es ja auch noch.
                    eine abschottung wie in mount-10 wirst du nicht leisten (können)
                    aber da wirst du dich nicht belehren lassen.
                    pimple => Injections sind bei normaler Nutzung auszuschließen -
                    keine ahnung wie du dein framework gebaut hast, klassischerweise nutzt man zumindesst einen DI-container und einen router.

                    js frameworks: es bietet sich heutzutage einfach an viel im client zu redern, früher riet ich zu handlebars, heutzutage gibt es da viel besseres.
                    genau macht es sinn, das routing jedenfalls teilweise im client laufen zu lassen, in dem kontext nutze ich vor jahren mal backbone - aber auch da gibt es zeitgemäsere lösungen.

                    Kommentar


                    • #11
                      Danke Tom,

                      Zitat von tomBuilder Beitrag anzeigen
                      bitte nutzeb in zuukunft code tags !
                      Worauf beziehst Du diesen Hinweis? Ich kann ihn gerade nicht einordnen.

                      Zitat von tomBuilder Beitrag anzeigen
                      meines erachtens schon der erste denkfehler siehe bpw angriffe auf die SCADA-systeme
                      Die Angriffe sind ja auch in der Presse kommuniziert worden - dessen bin ich mir durchaus bewusst.

                      Zitat von tomBuilder Beitrag anzeigen
                      absichtliche und un absicht,liche insiide attacks gibt es ja auch noch.
                      eine abschottung wie in mount-10 wirst du nicht leisten (können)
                      aber da wirst du dich nicht belehren lassen.
                      Manchmal komme ich mir vor wie im Schweizer Bergmassiv
                      Wir haben dazu einen separaten Bereich, der die Systeme intern/extern regelmäßig revied und findings direkt platziert. Aber ja, ein menschlicher Nutzer wird im Gegensatz zu den automatisierten Tests auch "Gefühl" mitbringen und bei einer Eingabemaske zur Datenbank vielleicht hellhörig werden. Ich bin für alle Themen offen - ich fühle mich auch nicht belehrt - keine Sorge. In meinem Fall sitze ich zwischen 3 bis 15 Stühlen. Ich bin mir bis zu einem gewissen Maß der Gefahren bewusst - bin aber über eine zentrale Instanz gesteuert. Gewisse Dinge darf ich (nicht). Gleichzeitig sitzen 16 Leute um mich rum, die ihre Arbeit optimieren wollen. Zeit ist ja erfahrungsgemäß nie da. Also ist meine Aufgabe Lösungen zu finden - die im Umfeld zu platzieren - gleichzeitig die Infrastruktur im Auge zu behalten und an allen Stellen die aktuelle Sicherheitsthematik im Auge zu behalten - während um mich herum gleichzeitig zig Systeme, Firewalls, Uplinks, VPNs... etc. offene Themen haben fällt dabei nicht in meine Zuständigkeit. Entweder ich kann die Tools/Software passend für die Nutzer bauen, oder ich kann mich um die Infrastruktur kümmern (damit meine ich Hard- und Software und auch Sicherheitsthemen). Hier muss ich mich auf die Kollegen verlassen, die die Sicherheit verantworten.

                      Zitat von tomBuilder Beitrag anzeigen
                      keine ahnung wie du dein framework gebaut hast, klassischerweise nutzt man zumindesst einen DI-container und einen router.
                      Auch wenn ich andere Begriffe dafür verwenden würde - ja, habe ich.


                      Zitat von tomBuilder Beitrag anzeigen
                      js frameworks: es bietet sich heutzutage einfach an viel im client zu redern, früher riet ich zu handlebars, heutzutage gibt es da viel besseres.
                      genau macht es sinn, das routing jedenfalls teilweise im client laufen zu lassen, in dem kontext nutze ich vor jahren mal backbone - aber auch da gibt es zeitgemäsere lösungen.
                      Genau das ist die Kernaussage "früher mal x" - "heute zeitgemäßere Lösungen". Die Anwendungen von mir haben eine Lebensdauer von mehreren Jahren (vermutlich 8-10 - vielleicht sogar länger). Da kann ich nicht auf aktuell gehypte Lösungen setzen. Ich muss etwas haben, was auch in PHP 10 hoffentlich läuft - oder wenn die Server auf die übernächsten Kernel gebracht sind. Wenn es Updates gibt, dann müssen diese problemlos laufen. Wie Du schon sagst - sind die Handlebars von "damals" heute noch problemlos (mit gewissen Nacharbeiten) einsetzbar?

                      Oder um ein Analogon der Auto-Industrie zu bemühen: wenn ich heute meinen Traumwagen kaufen würde, E oder Benzin? Bis die Infrastruktur der E-Autos dieselbe Leistung bringen kann wie heute die Benziner, wird das dauern - andererseits wird die Benziner-Versorgung noch lange Zeit existieren - auch wenn die E-Autos sich dann durchgesetzt haben. Mir wäre zwar Wasserstoff lieber... aber egal.

                      Kommentar


                      • #12
                        code tags :
                        PHP-Code:
                        /* wenn in der URL "input" auftaucht, dann simuliere ich hier das empfangende Script */
                        <?php
                        ?>
                        securtity läuft mE transparent, insofern sollte sich sowas nicht auf die User auswirken.

                        klar kann man handlebars noch einsetzen, es wird immer noch gepflegt.
                        ich spreche auch nicht von irgendeinem hype, sondern sprüngen in der entwiklung.

                        js hat dann auch wenig mit php zu tun, der serverseitige teil liefert nur noch das json, was im client gerendert wird, vor zehn jahren (? oder so ähnlich ) genauso wie heute.
                        die userzuigeständnisse, welche du mithilfe von metroui machen willst - sind eher einem hype hingterhergerant - viele von dem was du da wohl willst, weil es modertn aussieht , kann man auch mit pure css machen.

                        mehr kann ich dir nicht dazu sagen, denn es ist alles recht algmein gehalten.

                        Kommentar

                        Lädt...
                        X