c # запись в текстовый файл на сайте через php - PullRequest
0 голосов
/ 27 января 2012

В c # я могу поместить данные в отдельные строки. Например, текущая дата, которую я помещаю в строку с именем line1, и некоторую информацию, которую я помещаю в строку с именем line2.

То, что я хочу сделать сейчас, отправляет эти 2 строки на веб-адрес, который обрабатывает эти строки, и записывает их в простой текстовый файл. (или я могу написать в текстовый файл на веб-сайте непосредственно из C #?)

Мои знания php очень низкие, но пока я обнаружил, что этот код работает:

<?php 
 $File = "name.txt"; 
 $Handle = fopen($File, 'a');
 $Data = "line1\n"; 
 fwrite($Handle, $Data); 
 $Data = "line2\n"; 
 fwrite($Handle, $Data); 
 print "Data Added"; 
 fclose($Handle); 
 ?>

Приложение C # работает на компьютере, а не на веб-сайте (окно WPF). Но теперь он содержит только содержимое $ Data, записанное в файл «name.txt». Кто-нибудь знает, как я мог связать текст, который привязан к строкам в C3, к полям данных, определенным в PHP, чтобы текст из строк записывался в текстовый файл на сайте? Или можно написать напрямую в текстовый файл без php между ними?

Ответы [ 2 ]

2 голосов
/ 27 января 2012

Итак, у вас есть приложение на C #, которое вы хотите использовать для отправки 2 бит данных на веб-сайт на основе PHP, и хотите ли веб-сайт записать данные в файл? Если это то, что вы хотите, вам нужно сделать что-то вроде следующего ...

На сайте создайте принимающий файл PHP. Кости этого были бы что-то вроде:

<?php 
$File = "name.txt"; 
$Handle = fopen($File, 'a');
$line1 = $_GET["line1"] . "\n"; 
fwrite($Handle, $line1); 
$line2 = $_GET["line2"]; 
fwrite($Handle, $line2); 
print "Data Added"; 
fclose($Handle); 
echo "Completed writing data to the file";
?>

и для отправки этих данных из приложения C # на веб-сайт сделайте что-нибудь простое, например

WebClient wc = new WebClient();
Console.WriteLine(wc.DownloadString("http://example.com/Receiver.php?line1=this is the first line&line2=and this is the second"));

( ПРИМЕЧАНИЕ. В этот код не включена обработка ошибок, и любой, кто знает URL-адрес получателя, сможет перезаписать ваш файл всем, что ему нравится. Будьте осторожны при реализации этого. ТАКЖЕ ПРИМЕЧАНИЕ: Прошло много лет с тех пор, как я много сделал с PHP, поэтому вам, вероятно, потребуется настроить код. И ДРУГОЕ: подход WebClient.DownloadString настолько же прост, насколько это возможно. Вы можете посмотреть на HttpWebRequests, если вам нужно больше контроля )

1 голос
/ 27 января 2012

Вы можете писать в текстовый файл на веб-сайте непосредственно из C #.

System.IO.StreamWriter file = new System.IO.StreamWriter(Server.MapPath("/file.txt"););
file.WriteLine("First line.");
file.WriteLine("Secondline.");
file.Close();

Это создаст файл в корне вашего веб-сайта (пользователь, управляющий сайтом, должен иметь права на запись в этомкаталог)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...