Мне нужно выполнить следующее и мне нужна помощь с № 2 ниже

  1. На моем сайте есть страница с формой, и отправленные данные формы необходимо записать в базу данных на моем сайте.
  2. После записи в базу данных те же данные, представленные в форме, необходимо отправить на страницу, которая обрабатывает их на другом сайте, как если бы отправка формы поступила со страницы этого другого сайта. Страница, которая обрабатывает его на другом сайте, является php-страницей.
1
Mark 4 Сен 2009 в 20:50
У вас есть контроль над PHP на другом сайте в № 2?
 – 
cdmckay
4 Сен 2009 в 20:58

2 ответа

Это немного неясно, но я предполагаю, что вы пытаетесь сделать «сообщение формы» на другой странице .php после того, как ваши данные будут записаны в базу данных.

Дополнительную информацию можно найти в этой замечательной статье Скотта Хансельмана, но вот краткое изложение:

public static string HttpPost(string URI, string Parameters) 
{
   System.Net.WebRequest req = System.Net.WebRequest.Create(URI);
   req.Proxy = new System.Net.WebProxy(ProxyString, true);
   //Add these, as we're doing a POST
   req.ContentType = "application/x-www-form-urlencoded";
   req.Method = "POST";
   //We need to count how many bytes we're sending. Post'ed Faked Forms should be name=value&
   byte [] bytes = System.Text.Encoding.ASCII.GetBytes(Parameters);
   req.ContentLength = bytes.Length;
   System.IO.Stream os = req.GetRequestStream ();
   os.Write (bytes, 0, bytes.Length); //Push it out there
   os.Close ();
   System.Net.WebResponse resp = req.GetResponse();
   if (resp== null) return null;
   System.IO.StreamReader sr = new System.IO.StreamReader(resp.GetResponseStream());
   return sr.ReadToEnd().Trim();
}
1
Dan Esparza 4 Сен 2009 в 20:58

Идеальное решение вашей проблемы заключается в том, что вы создаете веб-службу на сайте php, а ваш код asp.net вызывает веб-службу. http://en.wikipedia.org/wiki/Web_service

Создание веб-службы на PHP: http://www .xml.com/pub/a/ws/2004/03/24/phpws.html

Вызов веб-службы в ASP.Net: http://www.codeproject.com/KB /webservices/WebServiceConsumer.aspx

В качестве альтернативы вы можете создать http-запрос с вашего asp.net на сайт php, разместив все элементы формы на сайте php.

Вот пример: http://www.netomatix.com/httppostdata.aspx

NB: вы почти гарантированно столкнетесь со вторым подходом в среднесрочной и долгосрочной перспективе, я не рекомендую его, если только вы не контролируете сайт php.

1
4 Сен 2009 в 21:01