Autor |
Beitrag |
manser
Beiträge: 22
|
Verfasst: Sa 27.10.07 19:35
Hi,
wie kann ich daten per c# an ein PHP Script übergeben?
Habe mir die WebClient Klasse angeschaut, doch leider nicht wirklich nen Beispiel gefunden.
Kann mir jemand von euch helfen? Moderiert von Christian S.: Topic aus Internet / Netzwerk verschoben am Sa 27.10.2007 um 19:36
|
|
manser
Beiträge: 22
|
Verfasst: So 28.10.07 21:25
weiß hier niemand bescheid?
|
|
Christian S.
Beiträge: 20451
Erhaltene Danke: 2264
Win 10
C# (VS 2019)
|
Verfasst: So 28.10.07 21:27
Wahrscheinlich kann nur niemand mit den wenigen Informationen, die Du lieferst, etwas anfangen. Was willst Du übertragen? Textdaten, Bilder, Filme, ... Was erwartet das PHP-Skript? GET, POST, etc.?
_________________ Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
|
|
manser
Beiträge: 22
|
Verfasst: Mo 29.10.07 19:09
erst einmal soll nur text übertragen werden...per Post an ein PHP Script welches auf einem externen Server liegt.
Gruß
Manser
|
|
Christian S.
Beiträge: 20451
Erhaltene Danke: 2264
Win 10
C# (VS 2019)
|
Verfasst: Mo 29.10.07 19:16
Hallo!
Dann sollte die HttpWebRequest-Klasse für Dich gut geeignet sein. Erzeugen z.B mit:
C#-Quelltext 1:
| HttpWebRequest request = (HttpWebRequest)WebRequest.Create(@"http://www.einskript.de"); |
Dann kannst noch die Method-Eigenschaft auf "POST" setzen.
Wenn Du dann etwas senden willst, kannst Du das über den RequestStream (Stichwort: request.GetRequestStream();) machen.
Die Antwort erhälst Du dann mittels request.GetResponse();
Mit den Stichworten und der Doku (die auch ein paar Beispiele enthält) solltest Du erstmal voran kommen. Wenn's nicht weiter geht, einfach nochmal fragen
Grüße
Christian
_________________ Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
|
|
manser
Beiträge: 22
|
Verfasst: Mo 29.10.07 22:11
ok, vielen dank für deine mühe...
jetzt werde ich mich erst einmal selbst ein bischen an dem code probieren.
gruß
manser
|
|
manser
Beiträge: 22
|
Verfasst: Di 30.10.07 22:34
So,
hab jetzt folgenden Code;
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47:
| using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Net; using System.IO;
namespace meinedomain.org { public partial class Form1 : Form { public Form1() { InitializeComponent(); }
private void button1_Click(object sender, EventArgs e) { HttpWebRequest request = (HttpWebRequest)WebRequest.Create(@"http://www.meinedomain.org/test.php"); request.Method = "POST";
string postData = "username=" + textBox1.Text; ASCIIEncoding encoding = new ASCIIEncoding(); byte[] byte1 = encoding.GetBytes(postData);
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = byte1.Length;
Stream newStream = request.GetRequestStream();
newStream.Write(byte1, 0, byte1.Length);
WebResponse myWebResponse = request.GetResponse(); newStream.Close();
} } } |
in dem Script steht folgendes:
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| <?php if ($_POST[username] == 'hund') { $file = "counter.txt"; // Dateizuweisung $ftp = @fopen($file,"r+"); // Öffnet die Datei $count = (int)fgets($ftp,10); // Holt die ersten 10 Zeichen $count++; // Addiert eine 1 rewind($ftp); // Setzt Zeige auf 0. Position fwrite($ftp,$count); // Schreibt fclose($ftp); // Schließt die Datei include($file); // Zeigt sich selbst an } ?> |
aber es tut sich nicht wirklich was wenn ich hund übergebe...
1. Ich weiß nicht ob wirklich was ankommt.
2. Ich weiß nicht wie ich die Antwort des Scripts als Text anzeigen lassen kann.
Gruß
Manser
|
|
Kha
Beiträge: 3803
Erhaltene Danke: 176
Arch Linux
Python, C, C++ (vim)
|
Verfasst: Di 30.10.07 22:49
Denke noch einmal scharf über die Reihenfolge von GetResponse und Close nach - erst schickst du die Abfrage ab, dann beendest du ihre Dateninitialisierung ?
|
|
manser
Beiträge: 22
|
Verfasst: Mi 31.10.07 10:02
verstehe ich nicht ganz, wie müsste es denn richtig sein?
----
das senden an das Script funktioniert jetzt teilweise...(manchmal stürzt das Programm auch ab), doch wie bekomm ich jetzt die Antwort des PHP Scriptes...zurück als String?
also wenn im Script unten noch echo('ok'); stehen würde soll mein Programm das ja auch wissen.
|
|
Christian S.
Beiträge: 20451
Erhaltene Danke: 2264
Win 10
C# (VS 2019)
|
Verfasst: Mi 31.10.07 10:37
manser hat folgendes geschrieben: | verstehe ich nicht ganz, wie müsste es denn richtig sein? |
Wenn Khabarakh so fragt, könnte man fast vermuten, dass sie im Moment falsch ist. Und bei zwei Zeilen sollte es möglich sein, dass Du selber rausfindest, was die richtige Reihenfolge ist. Gibt ja nicht allzu viele Möglichkeiten
manser hat folgendes geschrieben: | das senden an das Script funktioniert jetzt teilweise...(manchmal stürzt das Programm auch ab), doch wie bekomm ich jetzt die Antwort des PHP Scriptes...zurück als String? |
Was denkst Du, macht die Methode Get Response?
Ich möchte Dich wirklich bitten, ein bisschen mehr Eigeninitiative zu zeigen. Offensichtlich hast Du die GetResponse-Methode einfach per Copy & Paste übernommen, ohne Dich damit zu beschäftigen, was da passiert.
_________________ Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
|
|
manser
Beiträge: 22
|
Verfasst: Do 01.11.07 11:26
doch hab mich damit beschäftigt...es funktioniert ja auch soweit...
nur wie kann ich jetzt die Ausgabe des Scripts an mein Programm zurückgeben?
|
|
Christian S.
Beiträge: 20451
Erhaltene Danke: 2264
Win 10
C# (VS 2019)
|
Verfasst: Do 01.11.07 12:15
Du könntest einfach mal überlegen, warum ich das Wort "Response" fett gemacht habe in meinem vorigen Posting. Und Dich dann mal mit der Klasse WebResponse beschäftigen.
_________________ Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
|
|
manser
Beiträge: 22
|
Verfasst: Do 01.11.07 22:19
hab ich, komm nicht weiter und jetzt?
|
|
Christian S.
Beiträge: 20451
Erhaltene Danke: 2264
Win 10
C# (VS 2019)
|
Verfasst: Do 01.11.07 23:47
Und jetzt: Was hast Du versucht, wo hakt es? Was sind Deine Fragen?
_________________ Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
|
|
manser
Beiträge: 22
|
Verfasst: Fr 02.11.07 23:50
ich verstehe es nicht und möchte jetzt wissen wie es richtig geht...
|
|
Christian S.
Beiträge: 20451
Erhaltene Danke: 2264
Win 10
C# (VS 2019)
|
Verfasst: Sa 03.11.07 00:12
*seufz*
Du musst nur die Doku zur WebResponse-Klasse aufrufen, bemerken dass es die Methode "GetResponseStream" gibt (wenn man "GetRequestStream" kennt, sticht das sofort ins Auge) und Dir das Beispiel in der Doku ansehen.
_________________ Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
|
|
manser
Beiträge: 22
|
Verfasst: Sa 03.11.07 10:38
hab ich, mir stach nichts ins Auge und verstehen tue ich es auch noch nicht...
|
|
Christian S.
Beiträge: 20451
Erhaltene Danke: 2264
Win 10
C# (VS 2019)
|
Verfasst: Sa 03.11.07 12:37
Wo hakt es denn? Was hast Du versucht? Was verstehst Du nicht? An welcher Stelle konnte Dir die Doku (die ja sogar Quellcode-Beispiele enthält!) nicht helfen?
_________________ Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
|
|
manser
Beiträge: 22
|
Verfasst: So 04.11.07 18:42
wo es hakt habe ich doch schon geschrieben...
dass ich die doku nicht verstehe habe ich auch schon geschrieben...den quellcode haabe ich ja genutzt...also was willst du noch?
ich bracuehe einfach Hilfe!
|
|
Christian S.
Beiträge: 20451
Erhaltene Danke: 2264
Win 10
C# (VS 2019)
|
Verfasst: So 04.11.07 18:51
Was verstehst Du in der Doku nicht? Welchen Teil des dortigen Quellcodes?
Wo ist der Quellcode, in dem Du mit GetResponseStream arbeitest und der nicht funktioniert?
Zeig mir einfach, dass Du Dich auch selber bemühst. Ich werde Dir Dein Programm nicht schreiben, ich werde Dir helfen es selber zu tun.
_________________ Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
|
|