Tom: Feature-Artikel, Formatierung

Hello,

wie versprochen, kämpfe ich mich durch den Feature-Artikel zum Thema "Locking".

Als Scriptsprache kommt PHP zum Einsatz.

Nun haben wir bei den HTML-Beispielen doch immer "Anzeigebeispiel: So sieht's aus"

Das ist bei den PHP-Scripten nicht so ganz einfach, da dazu ja ein PHP-Server mit dem Script notwendig wäre un die Konfiguration passen müsste. Allerdings möchte ich trotzdem die Bildschirmausgabe abbilden, insbesondere, wenn es Fehlermeldungen oder (absichtlich) fehlerhafte Anzeigen gibt.

Was schlagt Ihr vor, wie soll ich das Formatieren? Wie soll ich andeuten, dass es sich um eine Bildschirmausgabe handelt? Sollte ich ein GIF mit einem "Monitor" in den Hintergrund legen?

das würde aber den Stil von Self etwas verändern.

Ich bitte um kurzfristige Antworten, da ich weitermachen möchte.

Harzliche Grüße aus http://www.annerschbarrich.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau
  1. Hallo Tom,

    Das ist bei den PHP-Scripten nicht so ganz einfach, da dazu ja ein PHP-Server mit dem Script notwendig wäre un die Konfiguration passen müsste.

    Einen Server haben wir, wie du siehst, und PHP haben wir auch - guck dir mal die andern PHP-Artikel an. Anpassung der PHP-Konfig geht mit der ini_set-Funktion script-lokal.

    viele Gruesse
      Stefan Muenz

    1. Hallo Stefan,

      Anpassung der PHP-Konfig geht mit der ini_set-Funktion
      script-lokal.

      Nur bedingt. Viele Einstellungen muessen vor der Laufzeit bekannt
      sein, und manche duerfen einfach nicht verstellt werden.

      Grüße,
       CK

      --
      Die Stärke des Geistes ist unendlich, die Muskelkraft dagegen ist begrenzt.
      http://wwwtech.de/
    2. Hello Stefan,

      Das ist bei den PHP-Scripten nicht so ganz einfach, da dazu ja ein PHP-Server mit dem Script notwendig wäre un die Konfiguration passen müsste.

      Einen Server haben wir, wie du siehst, und PHP haben wir auch - guck dir mal die andern PHP-Artikel an. Anpassung der PHP-Konfig geht mit der ini_set-Funktion script-lokal.

      Schön, dass Du so schnell antwortest. Ich habe jetzt nicht angenommen, dass wir gleich so einen "Aufriss" treiben können. Aber dann wäre doch eine reconfig.ini in der http.conf für das Verzeichnis (also ini_per_dir) besser. Dann kann ich mir hier die gewünschte Standardkonfiguration einstellen, das ganze in eine include-Datei für die httpd.conf fürs Verzeichnis verpacken.

      Geh ich da Recht in der Annahme, dass das klappen müsste?

      Und im Script kann ich dan die Umstellungen vornehmen, die der User standardmäßig auch machen müsste, um die gewünschten Testausgaben zu erhalten.

      Sollte ich dann die PHP-Testausgabe auch in einem eigenen Fenster stattfinden lassen?

      Wo finde ich andere PHP-Artikel mit Ausgabe? Der einzige, der das bisher mit "Anzeigebeispiel: So sieht's aus" andeuten will, hat nur tote Links (PHP in Frameset laden)

      Sollte ich penetrant vollständige PHP-Scripte darstellen, also mit Doctype und dem ganzen Gedöns? Das lenkt zwar vom wesentlichen ab, aber ich kenne genug Leute, die das bei PHP-Scripten nicht beachten, weil es ihnen nie (also seltenst) vollständig gezeigt wurde.

      Harzliche Grüße aus http://www.annerschbarrich.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      Nur selber lernen macht schlau
      1. Hallo Tom,

        [...]
        Geh ich da Recht in der Annahme, dass das klappen müsste?

        Das haengt davon ab, was du aendern willst.

        Grüße,
         CK

        --
        <zentrum> wie war noch mal die option in make.conf fuer das benutzen von pipes um das compile zu beschluenigen?
        <CK1> CFLAGS="-pipe"
        <torsten> Oder man frage einen Gentooer seiner Wahl, wie man 2 km Compilerswitches fuer seine CPU hinbekommt ;)
        http://wwwtech.de/
        1. Hello,

          Hallo Tom,

          [...]
          Geh ich da Recht in der Annahme, dass das klappen müsste?

          Das haengt davon ab, was du aendern willst.

          Das ging mir auch grad durch den Kopf, als ich Dein Antwortposting auf Stefan las. Also ich müsste das so anpassen, dass keine Sicherheitslücken aufgerissen werden. Im Wensentlichen geht es in diesem Artikel nur um die vollständie Fehlerausgabe. Dazu muss der Server auch vollständig compiliert sein (track-errors & Freunde)

          Und man muss daran denken, dass die Musterscripte AUF dem Server nicht identisch sein können mit den dargestellten Beispielen, da ich ja die Leute nicht verwirren will und eben auch Angriffsversuche abfangen muss.

          Ist also leider nicht ganz so einfach, wie mit HTML, CSS, JavaScript.

          Harzliche Grüße aus http://www.annerschbarrich.de

          Tom

          --
          Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
          Nur selber lernen macht schlau
          1. Hallo Tom,

            [...] Im Wensentlichen geht es in diesem Artikel nur um die
            vollständie Fehlerausgabe.

            Dafuer gibt es ja http://php.net/error_reporting

            Grüße,
             CK

            --
            Der Verstand steht ueber allem. Was durch die Vorstellungskraft nicht geschaffen werden kann, existiert nicht.
            http://wwwtech.de/
            1. Hello,

              [...] Im Wensentlichen geht es in diesem Artikel nur um die
              vollständie Fehlerausgabe.

              Dafuer gibt es ja http://php.net/error_reporting

              Das ist mir klar.
              Aber $php_errormsg ist nur gefüllt, wenn man track_errors einschalten kann und das geht nur, wenn das Modul eincompiliert wurde, oder irre ich mich da jetzt?

              Das war jetzt auch ein einfaches Beispiel. Ich habe auch noch andere Artikel in der Warteschlange, die ggf. mehr Optionen benötigen, als vorhanden sind. Könntest Du mir bitte mal eine phpinfo() vom Server schicken (email) oder sagen, wo eine liegt?

              Harzliche Grüße aus http://www.annerschbarrich.de

              Tom

              --
              Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
              Nur selber lernen macht schlau
              1. Hallo Tom,

                Aber $php_errormsg ist nur gefüllt, wenn man track_errors
                einschalten kann und das geht nur, wenn das Modul eincompiliert
                wurde, oder irre ich mich da jetzt?

                Wofuer brauchst du diese Variable?

                [...] Könntest Du mir bitte mal eine phpinfo() vom Server
                schicken (email) oder sagen, wo eine liegt?

                http://forum.de.selfhtml.org/phpinfo.php

                Grüße,
                 CK

                --
                Es ist uns nicht möglich, in einem Bereich unseres Lebens richtig zu verhalten, wenn wir in allen anderen falsch handeln. Das Leben ist ein unteilbares Ganzes.
                http://wwwtech.de/
                1. Hello,

                  Aber $php_errormsg ist nur gefüllt, wenn man track_errors
                  einschalten kann und das geht nur, wenn das Modul eincompiliert
                  wurde, oder irre ich mich da jetzt?

                  Wofuer brauchst du diese Variable?

                  Wenn die automatische Ausgabe von Fehlermeldungen unterdrückt wird, weil diese dann i.d.R. ausserhalb der Ausgabesektion eines Scriptes kommen würden, muss man sie selber zur Ausgabe bringen. Wenn es alsomnicht ein so schwerer Fehlker ist, der ohnehin sofortigen Scriptabbruch herbeiführt, kann man dann also sein "Fehlerarray" mit diesen Meldungen füllen und si in einer validen HTML-Seite ausgeben (und dem User einen Button oder Link für die Reaktion anbieten).

                  Siehe auch [pref:t=85512&m=504190]

                  Harzliche Grüße aus http://www.annerschbarrich.de

                  Tom

                  --
                  Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
                  Nur selber lernen macht schlau
                  1. Moin,

                    Wenn die automatische Ausgabe von Fehlermeldungen unterdrückt wird, weil diese dann i.d.R. ausserhalb der Ausgabesektion eines Scriptes kommen würden, muss man sie selber zur Ausgabe bringen.

                    Und was hast du in diesem Kontext gegen set_error_handler()?

                    --
                    Henryk Plötz
                    Grüße aus Berlin
                    ~~~~~~~~ Un-CDs, nein danke! http://www.heise.de/ct/cd-register/ ~~~~~~~~
                    ~~ Help Microsoft fight software piracy: Give Linux to a friend today! ~~
                    1. Hello,

                      Wenn die automatische Ausgabe von Fehlermeldungen unterdrückt wird, weil diese dann i.d.R. ausserhalb der Ausgabesektion eines Scriptes kommen würden, muss man sie selber zur Ausgabe bringen.

                      Und was hast du in diesem Kontext gegen set_error_handler()?

                      Das würde viel zu weit führen. habe gerade mit Chritian Seiler emailed wegen des Artikels, den er zum Thema "User Online" verfasst hatte. Man kann nicht alles berücksichtigen in jedem Stadium des Lesers.

                      Harzliche Grüße aus http://www.annerschbarrich.de

                      Tom

                      --
                      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
                      Nur selber lernen macht schlau
      2. Hallo Tom,

        Wo finde ich andere PHP-Artikel mit Ausgabe? Der einzige, der das bisher mit "Anzeigebeispiel: So sieht's aus" andeuten will, hat nur tote Links (PHP in Frameset laden)

        Oh, danke für den Hinweis! Da scheint beim Umzug was kaputt gegangen zu sein. Ich habe die Dateien neu hochgeladen.

        Viele Grüße
          Patrick Canterino

  2. Hallo Tom,

    ich verstehe Dein Problem nicht so ganz. Du moechtest ein Beispiel einer (PHP-)Fehlermeldung ausgeben. Warum willst Du dafuer diesen Fehler fuer jeden Aufruf neu produzieren? Ausgeliefert wird ja eh nur eine HTML-Seite. Ob die jetzt vom PHP-Parser generiert wurde oder Du sie vorher abgespeichert und auf den Server (als statische Seite) geladen hast, kann dem Benutzer doch egal sein - er sieht ja eh keinen Unterschied.

    Beste Gruesse

    Jan

    1. Hello,

      ich verstehe Dein Problem nicht so ganz. Du moechtest ein Beispiel einer (PHP-)Fehlermeldung ausgeben. Warum willst Du dafuer diesen Fehler fuer jeden Aufruf neu produzieren? Ausgeliefert wird ja eh nur eine HTML-Seite. Ob die jetzt vom PHP-Parser generiert wurde oder Du sie vorher abgespeichert und auf den Server (als statische Seite) geladen hast, kann dem Benutzer doch egal sein - er sieht ja eh keinen Unterschied.

      Soll ich mich jetzt aufregen über Dein Posting?
      Genau das war doch meine ursprüngliche Frage. Wie soll ich den Fake darstellen?
      Ist es jetzt angekommen?

      Stefan hat dann geantwortet, dass ja PHP und Server bereitstehen, um auch aktiv generierte Inhalte darstellen zu können. Ich hatte Bedenken wegen der INI-Einstellungen und Christian hat das dann sogar bestätigt, dass es nicht so auf dei leichte Schuler zu nehmen ist - so habe ich es jedenfalls verstanden.

      Weil Self damit auch irgendwo Neuland betritt - bisher gibt es vier Feature-Artikel für PHP/ASP - und ich habe hier vier sehr weit entwickelte in der Warteschlange - möchte ich einfach die Rahmenbedingungen klären, bevor ich 40 Stunden pro Artikel investiert habe. Es ist mir jeder soviel wert, aber nicht, um ihn dann nochmal ganz neu aufzubauen.

      Verstehst DU mein Problem jetzt?

      Harzliche Grüße aus http://www.annerschbarrich.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      Nur selber lernen macht schlau
      1. Hallo Tom,

        Genau das war doch meine ursprüngliche Frage. Wie soll ich den Fake darstellen?
        Ist es jetzt angekommen?

        Ganz ruhig. Deine Ausgangsfrage habe ich durchaus verstanden. Nicht aber die Diskussion, die daraus geworden ist (INI-Einstellungen etc.).

        Wenn ich mir ein fehlerhaftes Script installiere, bekomme ich von PHP eine Fehlermeldung. Ohne Layout, ohne Schnickschnack.
        Wenn ich ein Beispiel in SELFHTML oeffne, sehe ich die Ausgabe, die der Quelltext im gelben Kasten erzeugt. Auch ohne Layout, auch ohne Schnickschnack. Wo also ist da ein Problem?
        Du schreibst den Quelltext in so einen gelben Kasten, und wenn ich auf "Anzeigebeispiel" klicke, oeffnet sich ein Fenster mit der Ausgabe dessen, was mir PHP auch real um die Ohren werfen wuerde - nur braucht man dazu kein PHP. Gut, um Anmerkungen wie "Aber das hat ja die Endung .htm" zu verhindern, kannst Du der Datei ja auch noch die Endung .php geben - aber mit der Konfiguration der Server hier hat genau dieses Beispiel, das Aufzeigen moeglicher PHP-Fehlermeldungen, gar nichts zu tun. Und einen Fehler absichtlich zu produzieren, um die Ausgabe der Fehlermeldung aufzuzeigen, und dafuer auch noch das Script "absichern" wollen, ist gelinde gesagt Unsinn.

        Stefan hat dann geantwortet, dass ja PHP und Server bereitstehen, um auch aktiv generierte Inhalte darstellen zu können. Ich hatte Bedenken wegen der INI-Einstellungen und Christian hat das dann sogar bestätigt, dass es nicht so auf dei leichte Schuler zu nehmen ist - so habe ich es jedenfalls verstanden.

        Ja. Daher auch mein Einwand.

        Weil Self damit auch irgendwo Neuland betritt - bisher gibt es vier Feature-Artikel für PHP/ASP - und ich habe hier vier sehr weit entwickelte in der Warteschlange - möchte ich einfach die Rahmenbedingungen klären, bevor ich 40 Stunden pro Artikel investiert habe. Es ist mir jeder soviel wert, aber nicht, um ihn dann nochmal ganz neu aufzubauen.

        Verstaendlich. Aber in genau diesem Zusammenhang (Ausgabe moeglicher PHP-Fehler oder sonstiger, im Grunde statischer Seiten) ist nichtmal PHP noetig. Wenn Deine Scripte Dynamik aufweisen und Du diese veranschaulichen willst, ist es klar, dass Du die Umgebung auf dem Server kennen solltest. Wie gesagt - mein Posting bezog sich schlicht und ergreifend auf das absichtliche Erzeugen von PHP-Fehlermeldungen.

        Beste Gruesse

        Jan

        1. Hello Jan, Hallo Devs,

          Ganz ruhig. Deine Ausgangsfrage habe ich durchaus verstanden. Nicht aber die Diskussion, die daraus geworden ist (INI-Einstellungen etc.).

          Ok, Rückspulen und nochmal von vorne:

          Ich habe nun also ein Testscript mit dem Namen 'get_handle.php' im Artikeltext im gelben Kasten
          Ich habe eines mit dem  Namen 'fakes/get_handle_01.php' auf MEINER Festplatte
          Das Script in der echten Form liegt dann noch einmal in 'scripts/get_handle.php'
          Ich habe ein Ergebnis des Testscripts mit dem Namen 'screens/get_handle_01.php'
          darin steht nun:

          Warning: fopen(./textdatei.txt) [function.fopen]: failed to create stream: No such file or directory in /home/thomas/public_html/test/artikel_locking/get_handle.php on line 7
          Das Dateihandle lautet:
          Warning: fclose(): supplied argument is not a valid stream resource in /home/thomas/public_html/test/artikel_locking/get_handle.php on line 9

          Nun stehen da natürlich zwangsläufig meine Pfade drin.
          Ich bin mir immer noch nicht sicher, ob die Aufbereitung so in Ordnung ist.
          Ich muss hier bei vielen Erläuterungen auch ein "vorher / nachher" zeigen.

          Es gibt zu diesem Beispiel dann eben noch die Ausgabe 'screens/get_handle_02.php'
          nachdem eine Datei mit dem Namen './textdatei.txt' angelegt wurde.
          Dann gibt es nämlich die eigentlich erwartete Bildschirmausgabe
          Die ist dann vergleichbar mit den "Anzeigebeispiel: So sieht's aus" von SelfHTML
          Da wird ja schließlich darauf verzichtet, zu zeigen, was fehlerhafter Code bewirkt.
          Das kann ich aber in den PHP-Artiklen so nicht machen. Bei denen kommt es meistens  genau auf eie Fehler an. Richtigen Code findet man in allen Büchern, Anleitungen, wie man in falschem Code die Fehler findet, gibt es aber kaum. Ich sehe das also als Vorübung für die Aufbereitung des Archivs in "1001 Fragen zu PHP und 1000 Antworten" Einige erinnern sich vielleicht noch an meine Postings zu dem Thema.

          #######################################
          Nun lasst mich hier bitte nicht alleine
          #######################################

          Das geht um konzeptionelle Fragen, da sollten wir uns schon mal abstimmen, auch wenn ich nicht zum "Stammtisch" gehöre! Prost!

          Harzliche Grüße aus http://www.annerschbarrich.de

          Tom

          --
          Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
          Nur selber lernen macht schlau
          1. Hallo Tom,

            Nun stehen da natürlich zwangsläufig meine Pfade drin.

            Jeder, der den Artikel spaeter nachzuvollziehen versucht, wird andere Pfade darin stehen haben. Du koenntest in der Einleitung des Artikels ueber Deine Testumgebung informieren, um Missverstaendnisse auszuschliessen (siehe z.B. http://aktuell.de.selfhtml.org/artikel/server/apachetuning/index.html#a1).

            Beste Gruesse

            Jan

            1. Hello,

              Nun stehen da natürlich zwangsläufig meine Pfade drin.

              Jeder, der den Artikel spaeter nachzuvollziehen versucht, wird andere Pfade darin stehen haben. Du koenntest in der Einleitung des Artikels ueber Deine Testumgebung informieren, um Missverstaendnisse auszuschliessen (siehe z.B. http://aktuell.de.selfhtml.org/artikel/server/apachetuning/index.html#a1).

              Ok. Lass ich also so.

              Das mit der "Artikel-Schnittstelle" ist eine gute Idee.

              - Testumgebung
                - erforderliche Vorkenntnisse
                  (den Punkt habe ich schon drin, mit Links auf andere Artikel oder Manuals)

              Jetzt habe ich erst Abschnitt Autor, 0 , 1, 2 und habe schon 700 Zeilen.
              Da sollte ich dann wohl besser gleich mehrere Seiten daraus machen.
              Wie lang sollte denn ein Artikel höchstens werden?

              Harzliche Grüße aus http://www.annerschbarrich.de

              Tom

              --
              Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
              Nur selber lernen macht schlau
      2. Aber hallo,

        Soll ich mich jetzt aufregen über Dein Posting?
        Genau das war doch meine ursprüngliche Frage. Wie soll ich den Fake darstellen?
        Ist es jetzt angekommen?

        wo was nicht angekommen ist , ist hier die frage.

        Ich sags mal so: wenn eine Autofirma einen Ablauf eines Chrashtest ins Net stellen will machen sie einen Film davon und stellen den online. Aber die gehen bestimmt nich her und fahren jedesmal wenn jemand sich das ansehen will ein neues Auto vor die Wand.

        Hoffe das ist nun verständlich.

        In diesem Sinne

        mfg

        Das Schmunzelmonster