link-Ziel ansprechen

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

  • link-Ziel ansprechen

    Hallo

    Problem: ich arbeite mit einem sog. webdot-Server, der erzeugt Graphen in beliebigem Format und ist als Dienst installiert.

    Für gewöhnlich ruft man ihn so auf:

    PHP-Code:
    <a href="cgi-bin/webdot/users/dotfile.dot" type="image/svg+xml">hier gibt's den Graphen als svg-file</a> 
    dabei ist: "cgi-bin/webdot/" der Ort, wo der Dienst sich befindet
    und da hängt man mit "users/dotfile.dot" den Ort der Input-Datei an.

    Wenn ich nun im Browser auf den link "hier gibt's.." klicke, dan öffnet so ein Browser Fenster und bietet mir die Ausgabe als svg-File zum download an. Aber das will ich nicht. ich würde gerne das svg-file aus PHP dynamisch erzeugen und dann direkt weiterverarbeiten, d.h. es soll zum entsprechenden zeitpunkt auf dem Server gespeichert werden..

    Wie könnte ich sowas bewerkstelligen?
    Mit
    PHP-Code:
    $fp fopen("cgi-bin/webdot/users/dotfile.dot""r"); 
    bekomme ich nur den Inhalt des inputs, also das dotfile selbst, d.h. so wird der Dienst nicht angestossen.

    Danke, gruss, cal

  • #2
    Mmh, verstehe ich nicht ganz. Soll PHP den existierenden Dienst ersetzen? Ist diese .dot-Datei im /cgi-bin-Verzeichnis bereits ein Perl- oder ähliches Skript? Oder wie?

    Kommentar


    • #3
      Mmh, verstehe ich nicht ganz. Soll PHP den existierenden Dienst ersetzen? Ist diese .dot-Datei im /cgi-bin-Verzeichnis bereits ein Perl- oder ähliches Skript? Oder wie?
      Nein, der Dienst selbst liegt unter "cgi-bin/webdot" und dem gibt man quasi asl Argument die Erweiterung "users/dotfile.dot" mit. Folgendes würde also auch funktionieren "http://public-webdot-server.de/cgi-bin/webdot/http://mein-sever.de/meine-files/dotfile.dot"
      Das dotfile ist eigentlich ein textfiel, das mit bestimmter Syntax einen Graphen beschreibt.

      Ist es jetzt verständlicher?

      Kommentar


      • #4
        Also nochmal: ich glaube, die Funktionsweise dieses Webdot-Dienstes ist gar nicht so wichtig. Der Browser fasst:
        Code:
        <a href="cgi-bin/webdot/users/dotfile.dot" type="image/svg+xml">hier gibt's den Graphen als svg-file</a>
        als Link auf, greift dann darauf zu und sieht, aha, eine Datei, die biete ich zum Download an. Jetzt müsste mein Script genau hier einsteigen und diese Datei gleich selber speichern, und zwar server-seitig.

        Also: Wie kann man automatisch eine Datei von woanders downloaden und speichern. Ich glaube (und hoffe) das ist der Kern des Problems.
        Zuletzt geändert von calito; 10.11.2005, 12:56.

        Kommentar


        • #5
          Rufe doch den URL einfach mit file_get_contents() [1] auf, und spreichere das Ergebnis ab (fopen, frwite, fclose).


          [1] Bei größeren Datenmengen evtl. lieber mit fopen/fread.
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            Re: link-Ziel ansprechen

            PHP-Code:
            $fp fopen("cgi-bin/webdot/users/dotfile.dot""r"); 
            öffnet die Datei übers Filesystem.
            PHP-Code:
            $fp fopen("http://www.example.com/cgi-bin/webdot/users/dotfile.dot""r"); 
            sollte dich einen Schritt weiter bringen, sofern allow_url_fopen = on ist.

            Kommentar


            • #7
              Leider versteht Ihr das Problem glaube ich nicht...

              Es gibt doch einen unterschied zwischen fopen("url","r") und <a href="url>klick it!</a>!

              Bei fopen hole ich den quelltext der seite, die referenziert wird,
              beim klicken auf einen link rufe ich die Seite im Browser auf.

              Mein cgi-dienst will eben aufgerufen werden - und wenn das passiert, dann bietet er ein erzeugtes File zum download an. Ich will also nicht die refernezierte Seite einlesen, sondern ich will das file, das sie sendet, speichern.

              Ich denke, dass das der Unterschied ist - jedenfalls sagen das meine Tests. Aber sehr gerne sogar würde ich mich belehren lassen..

              Gruss cal

              Kommentar


              • #8
                Original geschrieben von calito
                Leider versteht Ihr das Problem glaube ich nicht...
                Oder du unsere Antworten ...
                Es gibt doch einen unterschied zwischen fopen("url","r") und <a href="url>klick it!</a>!

                Bei fopen hole ich den quelltext der seite, die referenziert wird,
                beim klicken auf einen link rufe ich die Seite im Browser auf.
                Nein.
                Es macht einen absolut wesentlichen Unterschied, ob du über fopen eine lokale Datei im Dateisystem des Webservers öffnest, oder über http einen URL.
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar


                • #9
                  mmmmh..

                  woran liegt's dann? vielleicht hieran: Es finktioniert ja auf diese Art und Weise
                  Code:
                  <a href="http://www.example.com/cgi-bin/webdot/http://www.my_server.com/dotfile.dot"
                  
                   type="image/svg+xml">hier gibt's den Graphen als svg-file</a>
                  Also dann wird eben das Download-Fenster aufgerufen, und zwar mit

                  dem gewünschten result.svg, über fopen - mit der gleichen Adresse gibt's das ursprüngliche dotfile.dot.


                  Ist es das type=image/svg+xml, was einen Unterschied ausmacht?

                  Dieser Dienst ist eben etwas tricky und umständlich in der Ansprache..
                  Zuletzt geändert von calito; 10.11.2005, 17:40.

                  Kommentar


                  • #10
                    brich den code um!

                    B2T: Was soll diese Url denn bringen???

                    Kommentar


                    • #11
                      also: Dieser Dienst implementiert die Software graphviz (www.graphviz.org), damit kann man Graphen visualisieren.
                      Dafür schickt man einem (irgendwo installierten) Server ein
                      sog. dotfile. Das beeinhaltet die Graphenbechsreibung
                      in einfacher Form. Zurück erhält man einen schön gelayoutete Graphen
                      in beleibigen formaten. Tja, und mit dieser URL spricht man den Dienst
                      eben an.. - und - wie gesagt - es funktioniert ja auch!! Aber ich will das File eben dynamisch speichern, und dann weiterverarbeiten.

                      Kommentar


                      • #12
                        Ich kann zwar hier nicht weiterhelfen,
                        aber ich vermute, dass das mit fopen geöffnete file schon geparst ist (von seinem Dienst dort) er aber den source dieses files haben möchte.
                        54 68 65 72 65 20 61 72 65 20 6F 6E 6C 79 20 31 30 20 74 79 70 65 73 20 6F 66 20 70 65 6F 70 6C 65 20 69 6E 20 74 68 65 20 77 6F 72 6C 64 3A A 54 68 6F 73 65 20 77 68 6F 20 75 6E 64 65 72 73 74 61 6E 64 20 62 69 6E 61 72 79 2C 20 61 6E 64 20 74 68 6F 73 65 20 77 68 6F 20 64 6F 6E 27 74

                        Kommentar


                        • #13
                          asche über mein haupt - ich hatte bei meinem Aufruf was vergessen,
                          dummerweise den entscheidenden Parameter - und so gab's nicht den
                          richtigen return...

                          Wie kann ich das wiedergutmachen?? Ich dachte immer, wenn ich schon
                          eine Frage stelle, dann komplexe, kreative Probleme.... So irgendwas geiles, wo dann alle gucken und denken - wowski, was es für abgefahrenes zeug es gibt, sowas, also echt..

                          Naja, ist mir hier wohl gründlich misslungen.. .. aber jetzt noch ein crazy Problem zum Schluss: Wie macht man so blinkenden Text auf diese Internetseiten, das habe ich mal gesehen das blinkte so schön, in MEHREREN Farben, so Blinktext, das standen dann verschiedene Wörte, blinkend, einmal auch 3, oder vielleicht auch vier Wörter hintereinander, auf dieser einen Seite im Internet drin, so in rosa mal, und auch orange und natürlich rot und blau, aber noch mehr Farben, also wie... wie geht das?

                          Kommentar


                          • #14
                            Wie macht man so blinkenden Text auf diese Internetseiten
                            entweder so
                            oder so
                            oder so

                            peter
                            Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                            Meine Seite

                            Kommentar

                            Lädt...
                            X