PHP Stream auslesen

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

  • PHP Stream auslesen

    Hallo zusammen

    Also ums kurz zu machen: Ich habe einen Stream (mit C#), einen Post-Request. Der sieht folgendermassen aus:
    Code:
    //Create a Web-Request to an URL
            HttpWebRequest htreq = (HttpWebRequest)WebRequest.Create("http://.....");
    
            //Define Proxy Settings
            htreq.Proxy = new WebProxy("derproxy", true);
            htreq.Proxy.Credentials = CredentialCache.DefaultCredentials;
    
    
            //Defined poperties for the Web-Request
            htreq.Method = "POST";
            htreq.MediaType = "HTTP/1.1";
            htreq.ContentType = "text/xml";
            htreq.UserAgent = "Example Client";
    
            //Defined data for the Web-Request
            byte[] byteArrayData = Encoding.ASCII.GetBytes("TestString");
            htreq.ContentLength = byteArrayData.Length;
    
            //Attach data to the Web-Request
            Stream dataStream = htreq.GetRequestStream();
            dataStream.Write(byteArrayData, 0, byteArrayData.Length);
            dataStream.Close();
    
            //Send Web-Request and receive a Web-Response
            HttpWebResponse httpWebesponse = (HttpWebResponse)htreq.GetResponse();
    
            //Translate data from the Web-Response to a string
            dataStream = httpWebesponse.GetResponseStream();
            StreamReader streamreader = new StreamReader(dataStream, Encoding.UTF8);
            string response = streamreader.ReadToEnd();
            streamreader.Close();
            this.response = response;
    Das funktioniert soweit. Mit diesem Stream schicke ich noch einen Teststring mit ("TestString").

    Wo ist dieser nun ersichtlich..? Muss ich den irgendwie umkodieren?
    Also mein PHP-File auf dem Server sieht bis jetzt folgendermassen aus:

    PHP-Code:
    <?php
    print_r 
    ($_POST);
    print_r ($_GET);
    print_r ($_SERVER['REQUEST_METHOD']);
    print_r ($_SERVER['QUERY_STRING']);
    print_r ($_SERVER['HTTP_USER_AGENT']);
    print_r ($_SERVER['PHP_SELF']);
    print_r ($_SERVER['argv']);
    print_r ($_SERVER['argc']);
    ?>

    Da lässt sich aber nix tolles daraus erkennen oO Wo ist mein String geblieben?

    Danke im Voraus für eure Hilfe!

    MfG
    Onyxagargaryll
    Zuletzt geändert von Onyxagargaryll; 14.05.2008, 13:54.

  • #2
    So als Verständnisfrage: Der String wird doch an den C-Teil geschickt. Da frage ich mich wie denn PHP zu diesem String kommen sollte?
    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

    Kommentar


    • #3
      Hmm ein klares Argument oO stimmt..
      kennt PHP C-Funktionen? ^^ kaum, ne..

      Wenn du andere Möglichkeiten ausser einem Get-String kennst, um einen String o.ä. an PHP zu übergeben, wäre ich dir für die Information sehr dankbar

      Sonst versuch ichs in der Zwischenzeit mal mit einem Get-String.

      Danke für die Antwort und MfG
      Der C#-Neuling

      Kommentar


      • #4
        Schick doch den String von C nach PHP
        Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

        [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
        Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

        Kommentar


        • #5
          Auf dem Server..? Also mit C abfangen und an PHP übergeben?
          oder wie meinst du das?

          EDIT: Ich hab einen fiesen Workaround gefunden ^^ Ich manipuliere den UserAgent, dass da jetzt nimmer "Firefox" steht, sondern der String selbst o.ä. :P So und per Get habe ich immerhin 2 Möglichkeiten, was zu übergeben ^^
          Zuletzt geändert von Onyxagargaryll; 14.05.2008, 13:57.

          Kommentar


          • #6
            Also mit C abfangen und an PHP übergeben?
            zum Beispiel. Oder auf PHP verzichten und den Wert nur mit C vearbeiten oder auf C verzichten und den Wert direkt an PHP senden. Nur automatisch wird dieser Wert wenn er an eine C-Komponente geschickt wurde nicht PHP zur Verfügung stehen.
            Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

            [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
            Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

            Kommentar


            • #7
              Ja hmmm okay
              Das werd ich so machen.
              Danke dir, hat mir schonmal viel fürs Verständnis geholfen!

              Wünsche noch einen schönen Tag!

              MfG
              Onyxagargaryll

              Kommentar


              • #8
                @jahlives, C# nicht C, er schickt Daten von einer (Web)Application an PHP

                @TopicStarter, wie sieht das Ziel aus?

                HttpWebRequest htreq = (HttpWebRequest)WebRequest.Create("http://.....");

                Du hast abgekürzt so dass man nicht erkennen kann, ob der Link nur auf die HP zeigt, oder auch ein bestimmtes Ziel hat.

                Kommentar


                • #9
                  Hallo asp2php

                  WebApplikation jein; Mit einer WindowsForm mach ich halt den Request mit c# (also eigentlich ja ^^).

                  Das Ziel: übergabe einer oder mehrerer Strings, ohne GET zu benutzen oder den UserAgent zu manipulieren.

                  Der Link sieht in etwa so aus: "http://irgendwas.ch/csharp/server.php"

                  Weitere Daten werden wenn benötigt gerne herausgegeben

                  MfG
                  Onyx

                  Kommentar


                  • #10
                    Verstehe jahlives Beiträge nicht ganz. Aber ich glaube, Onyx sucht nach $HTTP_RAW_POST_DATA. Das C#-Beispiel macht nichts anderes, als das PHP-Skript aufzurufen und dabei TestString als Inhalt mitzugeben. Da es sich nicht um ein Schlüssel-Werte-Paar handelt, ist TestString nicht in $_POST enthalten!

                    Kommentar


                    • #11
                      Super, da haben wirs!
                      Genau das wars, was ich suchte.

                      Dann danke ich allen herzlichst für ihre Mühe und wünsche einen schönen Tag

                      MfG
                      Onyx
                      Zuletzt geändert von Onyxagargaryll; 14.05.2008, 15:01.

                      Kommentar

                      Lädt...
                      X