tangotaenzer: dateiname

Liebe Leute im Forum;

ich habe schon oft bei webseiten gesehen, dass nicht der richtige Dateiname angezeigt wird, sondern z.B. folgendes steht:

http//:meinewebseite.de/index.php?id=3

was bedeutet das ...php?id=3

und wie macht man das?

Vielen Dank!

  1. Grüße,
    der verweis auf ".php?blabla" ist normal - macht man genauso wie Verweis auf "bumm.html" - alles was hinter "?" steht kann vom server besonders verarbeitet werden, die programmiersprache PHP nimmt diese als Anweisungen, willst du mehr darüber Erfahren?
    [ja] [nein]
    MFG
    bleicher

    1. Hello,

      die programmiersprache PHP nimmt diese als Anweisungen, willst du mehr darüber Erfahren?

      Nö, in PHP sind das genauso Parameter, wie im übrigen Web.

      Liebe Grüße aus dem Cyberspace

      Tom vom Berg

      --
      Nur selber lernen macht schlau
      http://bergpost.annerschbarrich.de
      1. Grüße,
        eine antwort sollte irgendwo zwischen sinvoll und sinning liegen.
        MFG
        bleicher

    2. Grüße,
      der verweis auf ".php?blabla" ist normal - macht man genauso wie Verweis auf "bumm.html" - alles was hinter "?" steht kann vom server besonders verarbeitet werden, die programmiersprache PHP nimmt diese als Anweisungen, willst du mehr darüber Erfahren?
      [ja] [nein]
      MFG
      bleicher

      Liebe Leute,

      ja ich möchte mehr darüber erfahren. Habe auch schon php auf meiner seite verwendet. Aber php ist ja wirklich sehr umfangreich. Ich finde das garnicht schlecht, wenn der Leser einer Webseite manchmal nicht weiß, wie der tatsächliche Dateiname lautet. Deshalb würde mich schon interessieren wie das funktioniert.

      schon mal danke und bitte nicht vom Thema abschweifen!

  2. Hallo,

    ich habe schon oft bei webseiten gesehen, dass nicht der richtige Dateiname angezeigt wird

    das ist ganz normal, denn im HTTP-Kontext gibt es keine Dateien. Es gibt nur Ressourcen, die einen (nahezu) beliebigen Namen haben, und den Webserver dazu bewegen, irgendwas auszugeben. Dieses "irgendwas" ist vom Betreiber frei konfigurierbar. Es kann im einfachsten Fall tatsächlich der Inhalt einer Datei sein; aber auch ein Text, der aus einer komplexen Datenbankabfrage erzeugt wird.

    sondern z.B. folgendes steht:
    http//:meinewebseite.de/index.php?id=3

    Ein "herkömmlich" konfigurierter Webserver versteht das als Aufforderung, das PHP-Script "index.php" aufzurufen, diesem Script den Parameter id=3 zu übergeben, und die Ausgabe dieses Scripts an den Client zurückzusenden.

    was bedeutet das ...php?id=3
    und wie macht man das?

    Was genau möchtest du wissen? Du stehst am Abgrund und bist kurz davor, in die Welt des HTTP-Protokolls, der Serverkonfiguration, der PHP-Programmierung einzudringen. Möchtest du das? Denn ohne Grundlagen dieser Themen ist das, was du vermutlich wissen willst, sehr schwer zu erklären.

    So long,
     Martin

    --
    Wenn du beim Kochen etwas heißes Wasser übrig hast, friere es ein.
    Heißes Wasser kann man immer gebrauchen.
    1. Hello,

      Was genau möchtest du wissen?
      Du stehst am Abgrund und bist kurz davor, in die Welt des HTTP-Protokolls, der Serverkonfiguration, der PHP-Programmierung einzudringen.

      Wieso am Abgrund? MMn steht er am Fuße einer langen Treppe und wagst sich an den Aufstieg :-)

      Liebe Grüße aus dem Cyberspace

      Tom vom Berg

      --
      Nur selber lernen macht schlau
      http://bergpost.annerschbarrich.de
      1. Hi,

        »» Du stehst am Abgrund und bist kurz davor, in die Welt des HTTP-Protokolls, der Serverkonfiguration, der PHP-Programmierung einzudringen.
        Wieso am Abgrund? MMn steht er am Fuße einer langen Treppe und wagst sich an den Aufstieg :-)

        wenn's denn eine Treppe wäre! Ich würde eher sagen, es ist ein steiniger, steiler Pfad, auf dem Geröllfelder ebenso lauern wie reißende Bäche, schlüpfrige Eisflächen und senkrecht zu erklimmende Wände.

        Halb so wild, wenn man einen kundigen Begleiter bei sich hat. Beherrschbar, wenn man bedächtig und vorsichtig ist und sich nicht überschätzt. Reizvoll, wenn man bereits durch andere Disziplinen im Training ist.
        Aber wenn man diesen Weg mit der Unbekümmertheit eines Flachland-Joggers in Angriff nimmt, ist das Risiko groß, dass man scheitert oder sich überfordert sieht.

        Ciao,
         Martin

        --
        Alkohl ist ungesund,
        Rauchen ist schädlich,
        Sex ist unanständig
        - und die Erde ist eine flache Scheibe.
      2. Was genau möchtest du wissen?
        Du stehst am Abgrund und bist kurz davor, in die Welt des HTTP-Protokolls, der Serverkonfiguration, der PHP-Programmierung einzudringen.
        Wieso am Abgrund? MMn steht er am Fuße einer langen Treppe und wagst sich an den Aufstieg :-)

        Aufstieg: Wenn die Theorie in die Praxis umgesetzt werden kann.
        Abgrund: Wenn zum Beispiel mod_rewrite nicht verfügbar ist.

        mfg Beat

        --
        ><o(((°>           ><o(((°>
           <°)))o><                     ><o(((°>o
        Der Valigator leibt diese Fische
  3. Liebe Leute,

    ja ich möchte mehr darüber erfahren. Habe auch schon php auf meiner seite verwendet. Aber php ist ja wirklich sehr umfangreich. Ich finde das garnicht schlecht, wenn der Leser einer Webseite manchmal nicht weiß, wie der tatsächliche Dateiname lautet. Deshalb würde mich schon interessieren wie das funktioniert.

    schon mal danke!

    1. Hallo tangotaenzer,

      wenn Du einen Webserver mit PHP zur Verfügung hast, dann speichere einfach mal unten stehenden Code in einer Datei namens "test.php" im Server-Verzeichnis. Dann rufe im Browser mal folgende Varianten auf (ich gehe mal von einem lokalen Webserver aus, ansonsten musst Du "127.0.0.1" entsprechend anpassen):

      http://127.0.0.1/test.php
      http://127.0.0.1/test.php?id=1
      http://127.0.0.1/test.php?id=2
      http://127.0.0.1/test.php?id=3

      Zusammen mit den anderen Antworten wird's dann vielleicht etwas klarer, ansonsten nochmal nachfragen...

      Alex

      <?php  
      if(isset($_GET['id']))  
       {  
        switch($_GET['id'])  
         {  
          case '1':  
           echo 'Das ist Seite 1.';  
           break;  
          case '2':  
           echo 'Das ist Seite 2.';  
           break;  
          default:  
           echo 'Ungültige Anfrage!';  
         }  
       }  
      else  
       {  
        echo 'Hallo Welt!';  
       }  
      ?>
      
      1. Hallo Alex,
        das Prinzip ist verstanden. Doch wie kann man jetzt bspw. anstatt der Angabe eines kurzen Textes eine ganze Datei öffnen. Habe es probiert mit einer HTML und auch mit einer PDF, sowie einer PHP, ist mir aber nicht wirklich gelungen. Bei der PDF konnte man garnichts lesen, bei der PHP wurde meine Formatierung mit CSS nicht realisiert.

        Vielen Dank und viele Grüße

        1. Hallo,

          das Prinzip ist verstanden. Doch wie kann man jetzt bspw. anstatt der Angabe eines kurzen Textes eine ganze Datei öffnen.

          zum Umgang mit Dateien allgemein schau dir mal die Dateifunktionen von PHP an - vor allem fopne(), fread() und fclose(); in Spezialfällen vielleicht auch fgetcsv() oder file_get_contents().

          Willst du aber den Inhalt einer Datei einfach in die HTML-Ausgabe einflechten, bietet sich readfile() an.

          Habe es probiert mit einer HTML und auch mit einer PDF, sowie einer PHP, ist mir aber nicht wirklich gelungen.

          Ich weiß nicht, was du da wirklich getrieben hast, aber es hört sich nicht sinnvoll an. Das Ergebnis, das beim Browser ankommt, muss immer noch ein strukturell korrektes HTML-Dokument sein. Wenn du jedoch ein komplettes HTML-Dokument einbindest - also einschließlich head und den body-Tags - dann kommt beim Browser nur Kauderwelsch an.
          Das Einfügen einer PDF-Datei ist dagegen *überhaupt nicht* sinnvoll, denn das PDF-Dateiformat ist völlig unterschiedlich; das Ergebnis wäre ein wüster Zeichensalat. Und eine PHP-Datei einzufügen ist ähnlich problematisch wie beim HTML-Beispiel oben, noch dazu würde dann der PHP-Quellcode offengelegt (aber nicht ausgeführt), was man in der Regel auch nicht will.

          Bei der PDF konnte man garnichts lesen

          Sag' ich doch. ;-)

          bei der PHP wurde meine Formatierung mit CSS nicht realisiert.

          Das ist eine seltsame Beobachtung, kann aber daran liegen, dass das daraus resultierende HTML-Dokument im Browser völlig invalid ist.

          So long,
           Martin

          --
          Schildkröten können mehr über den Weg berichten als Hasen.
          1. Hallo Martin,

            verstehe dann aber noch nicht das Prinzip dieser Dateienumleitung, wenn es mit den herkömmlichen Dateien nicht funktioniert. Mein HTML-Code ist valide.
            Da ich jetzt dafür sensibilisiert bin, sehe ich diese Angaben bei allen möglichen Webseiten. Also muss es doch hierfür eine sinnvolle Anwendung geben!?! Ich finde daran ja auch so genial, dass man den ursprünglichen Dateinamen nicht mehr sieht. Schon von daher würde es mich interessieren.

            Viele Grüße

        2. Hallo,

          das Prinzip ist verstanden. Doch wie kann man jetzt bspw. anstatt der Angabe eines kurzen Textes eine ganze Datei öffnen.

          Meinst Du so etwas?

          <?php  
          if(isset($_GET['id']))  
           {  
            switch($_GET['id'])  
             {  
              case '1':  
               include('seite1.html');  
               break;  
              case '2':  
               include('seite2.html');  
               break;  
              default:  
               echo 'Ungültige Anfrage!';  
             }  
           }  
          else  
           {  
            include('startseite.html');  
           }  
          ?>
          

          Hierbei müssen die Dateien startseite.html, seite1.html und seite2.html als vollständige HTML-Dateien (je nach include_path [bestenfalls] im selben Verzeichnis) vorhanden sein.
          Wenn Du nun vor obigem Code einen HTML-Kopfbereich und darunter einen Fußbereich ausgibst (die auf allen Seiten gleich aussehen sollen) und die eingebundenen Dateien den Hauptteil dazwischen ausgeben, hast Du schon so etwas wie ein kleines CMS.

          Ale×

          1. Hallo Alex,

            danke für Deine Antwort, genau das habe ich gemeint. Habe es heute ausprobiert und hat alles wunderbar geklappt.

            Viele Grüße