Besoin Aide (Client PHP/Serveur C++)

qbasic Messages postés 23 Date d'inscription samedi 29 janvier 2005 Statut Membre Dernière intervention 16 septembre 2008 - 21 mars 2008 à 09:01
qbasic Messages postés 23 Date d'inscription samedi 29 janvier 2005 Statut Membre Dernière intervention 16 septembre 2008 - 21 mars 2008 à 14:35
slt bien a vous je suis en train de coder un serveur en c++ socket en protocole tcp




et un client en php C++

LE SERVEUR C++ :

#include <cstdlib>
#include
#include <fstream>
using namespace std;
#include <winsock2.h>
#pragma comment(lib, "ws2_32.lib")
int main()
{
WSADATA WSAData;
WSAStartup(MAKEWORD(2,0), &WSAData);
SOCKET sock;
SOCKET csock;
SOCKADDR_IN sin;
SOCKADDR_IN csin;
sock = socket(AF_INET, SOCK_STREAM, 0);
sin.sin_addr.s_addr   = INADDR_ANY;
sin.sin_family    = AF_INET;
sin.sin_port    = htons(3421);
bind(sock, (SOCKADDR *)&sin, sizeof(sin));
listen(sock, 0);
while(1)
{
int sinsize = sizeof(csin);
int nombre_de_caractere;
char buff[20];
char buffer[20];
int tempo;
if((csock = accept(sock, (SOCKADDR *)&csin, &sinsize)) != INVALID_SOCKET)
{
cout << buff << "Conection [OK] \n";
//send(csock, "Hello world!\r\n", 14, 0);
}
}
}

LE CLIENT PHP:

<?php
  //client de detection migakernel
   
    $serveur  = $_SERVER["REMOTE_ADDR"];
    $document = "/";
   
    echo "Recherche du Kernek servel de MigaDesktop sur $serveur (port 3421)
";
   
    $idSocket = @fSockOpen($serveur, 3421, $codeErreur, $msgErreur, 5);
    if (!$idSocket) {
        echo "
<H1>Migakernel n'est pas installer sur cette ordinateur";
    } else {
 echo "
<H1>Migakernel est installer sur cette ordinateur";
 stream_set_blocking($idSocket, TRUE);
    stream_set_timeout($idSocket, 5);
   
 fputs($idSocket, "vista");
 //socket_write($idSocket, 'migadesktop' , strlen($in)); 
 fclose($idSocket);
 }
   
      /*
    // Envoi de données au serveur
    fputs($idSocket, "GET $document HTTP/1.1\r\n");
    fputs($idSocket, "Host: localhost\r\n");
    fputs($idSocket, "\r\n");                  // Marque la fin de l'entête
   
    // Lecture de la réponse
    while (!feof($idSocket)) {
        $donnees = fgets($idSocket, 512);
        echo "<xmp>$donnees</xmp>";            // Affichage du code source
    }
    */
?>

 Et je voudrai que le client php envoie une chaine de carcter par exemple et que le serveur la recoive , l'affiche et envoie la confirmation de reception au client

pouvez vous m'adez a completez mon code , merci

4 réponses

DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
21 mars 2008 à 11:23
Et si tu nous disais où ca plante ?

Shell
0
qbasic Messages postés 23 Date d'inscription samedi 29 janvier 2005 Statut Membre Dernière intervention 16 septembre 2008
21 mars 2008 à 11:57
sa ne plante pas la conection se passe normalement , c'est juste que je ne sais pas comment recevoir des donée envoyé par le client
0
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
21 mars 2008 à 14:20
Dans la partie serveur (C/C++) sert toi de la fonction recv(...) pour écouter ce qui arriver sur le socket connecté.

Shell
0
qbasic Messages postés 23 Date d'inscription samedi 29 janvier 2005 Statut Membre Dernière intervention 16 septembre 2008
21 mars 2008 à 14:35
je connais cette fonction mais je ne sais pas l'utiliser
  pourais-tu m'expliquer comment faire ?


pourai tu m'expliquer par msn

mek-in-gold@live.fr

c pour le projet migadesktop




 




 
0
Rejoignez-nous