Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Подскажите!!!! Добавлено: 22.01.06 15:38  

Автор вопроса:  DIAgen
Как можно работать на VB с PHP,тоесть послать запрос и получить ответ, без использования WENBROVER!!!!!!!

Ответить

  Ответы Всего ответов: 6  

Номер ответа: 1
Автор ответа:
 [root]



Вопросов: 45
Ответов: 1212
 Web-сайт: bit.pirit.info
 Профиль | | #1
Добавлено: 22.01.06 19:07
по запросу PHP в поиске на форуме вылезла куча тем, так что посмотри
там - может что найдешь полезного

Ответить

Номер ответа: 2
Автор ответа:
 Павел



Администратор

ICQ: 326066673 

Вопросов: 368
Ответов: 5968
 Web-сайт: www.vbnet.ru
 Профиль | | #2
Добавлено: 22.01.06 19:47
Internet Transfer Control или Winsock или XmlHTTP, если речь идет о VB6.

Если речь о .NET, то идеально подойдет System.Net.HttpWebRequest.

Ответить

Номер ответа: 3
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #3 Добавлено: 22.01.06 21:44
Ищем VBSocket где-то на dasharm.com например
ищем описание HTTP протокола... и узнаём что заголовок пакета с
передачей параметра выглядит примерно так:

Private Sub Form_Load()
Winsock1.Protocol = sckTCPProtocol
Winsock1.Close
Winsock1.LocalPort = 0
Winsock1.Connect "audiostore.ru", 80
While Not Winsock1.State = 7
DoEvents
Wend
Parametrs = "Username=Vasya&Password=XXX"
Winsock1.SendData "POST http://xxxxxxxxxxxxxxx.ru/register/login.phtml HTTP/1.1" & vbCrLf
Winsock1.SendData "Referer: http://xxxxxxxxxxxxxxx.ru/" & vbCrLf
Winsock1.SendData "Content-Type: application/x-www-form-urlencoded" & vbCrLf
Winsock1.SendData "Proxy-Connection: Keep-Alive" & vbCrLf
Winsock1.SendData "Host: http://www.xxxxxxxxxxxxxxx.ru" & vbCrLf
Winsock1.SendData "Connection: close" & vbCrLf
Winsock1.SendData "Content-Length: " & CStr(Parametrs) & vbCrLf & vbCrLf
Winsock1.SendData "Pragma: no-cache" & vbCrLf & vbCrLf
Winsock1.SendData Parametrs & vbCrLf
End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim Data As String
Winsock1.GetData Data
Text1.Text = Text1.Text & Data$
End Sub

Private Sub Winsock1_Close()
Winsock1.Close
End Sub


Это через винсок, с вбсокетом под рукой нету, но там почти точно так
же...

Ответить

Номер ответа: 4
Автор ответа:
 [root]



Вопросов: 45
Ответов: 1212
 Web-сайт: bit.pirit.info
 Профиль | | #4
Добавлено: 23.01.06 08:26
На сайте есть статья о Internet Transfer Control и о Winsock

Ответить

Номер ответа: 5
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #5 Добавлено: 23.01.06 13:26
Возьми да посмотри! :)

Ответить

Номер ответа: 6
Автор ответа:
 DIAgen



Вопросов: 1
Ответов: 1
 Профиль | | #6 Добавлено: 23.01.06 13:46
я нашел такой код

Public Const INTERNET_OPEN_TYPE_PRECONFIG = 0
Public Const INTERNET_OPEN_TYPE_DIRECT = 1
Public Const INTERNET_OPEN_TYPE_PROXY = 3
Public Const scUserAgent = "VB Project"
Public Const INTERNET_FLAG_RELOAD = &H80000000
Public Declare Function InternetOpen Lib "wininet.dll" Alias "InternetOpenA" (ByVal sAgent As String, ByVal lAccessType As Long, ByVal sProxyName As String, ByVal sProxyBypass As String, ByVal lFlags As Long) As Long
Public Declare Function InternetOpenUrl Lib "wininet.dll" Alias "InternetOpenUrlA" (ByVal hOpen As Long, ByVal sUrl As String, ByVal sHeaders As String, ByVal lLength As Long, ByVal lFlags As Long, ByVal lContext As Long) As Long
Public Declare Function InternetReadFile Lib "wininet.dll" (ByVal hFile As Long, ByVal sBuffer As String, ByVal lNumBytesToRead As Long, lNumberOfBytesRead As Long) As Integer
Public Declare Function InternetCloseHandle Lib "wininet.dll" (ByVal hInet As Long) As Integer

Public Function OpenURL(ByVal sUrl As String) As String
Dim hOpen As Long
Dim hOpenUrl As Long
Dim bDoLoop As Boolean
Dim bRet As Boolean
Dim sReadBuffer As String * 2048
Dim lNumberOfBytesRead As Long
Dim sBuffer As String
hOpen = InternetOpen(scUserAgent, INTERNET_OPEN_TYPE_PRECONFIG, vbNullString, vbNullString, 0)
hOpenUrl = InternetOpenUrl(hOpen, sUrl, vbNullString, 0, INTERNET_FLAG_RELOAD, 0)
bDoLoop = True
While bDoLoop
sReadBuffer = vbNullString
bRet = InternetReadFile(hOpenUrl, sReadBuffer, Len(sReadBuffer), lNumberOfBytesRead)
sBuffer = sBuffer & Left$(sReadBuffer, lNumberOfBytesRead)
If Not CBool(lNumberOfBytesRead) Then bDoLoop = False
Wend
If hOpenUrl <> 0 Then InternetCloseHandle (hOpenUrl)
If hOpen <> 0 Then InternetCloseHandle (hOpen)
OpenURL = sBuffer
End Function

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам