Używam takiego kodu do wysyłania pliku ale nie pojawia się on na serwerze kod PHP jest na 100% prawidłowy ale problem występuje w C++ kod wygląda tak
int upload(string arg1, string arg2) {
WSADATA wsaData;
if (WSAStartup(MAKEWORD(2, 2), &wsaData) != 0) {
return 1;
}
SOCKET Socket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
struct hostent *host;
host = gethostbyname("host");
SOCKADDR_IN SockAddr;
SockAddr.sin_port = htons(80);
SockAddr.sin_family = AF_INET;
SockAddr.sin_addr.s_addr = *((unsigned long*)host->h_addr);
if(connect(Socket, (SOCKADDR*)(&SockAddr), sizeof(SockAddr)) != 0) {
return 1;
}
char* header = (char*)("POST / HTTP/1.1\r\n"
"Host: host\r\n"
"Accept: text/html,aplication/xhtml+xml,application/xml;q=9,*/*;q=0.8\r\n"
"Content-Type: multipart/form-data; boundary=upload\r\n"
"Content-Length: 254\r\n"
"First boundary: upload\r\n"
"Content-Disposition: form-data; name=\"_file\"; filename="+arg1+"\r\n"
"Content-Type: application/ocet-stream\r\n\r\n"
"Data: "+arg2+"\r\n"
"Content boundary: \r\nupload\r\n").c_str();
send(Socket, header, strlen(header), 0);s
char buffer[10000];
recv(Socket, buffer, 10000, 0);
closesocket(Socket);
WSACleanup();
return 0;
}
Co tu zrobić aby plik był wysyłany?