[Réglé] ip:port en char traduire en decimal. master query

ip:port en char traduire en decimal. master query [Réglé] - PHP - Programmation

Marsh Posté le 01-07-2008 à 19:36:43    

Bonjour, j'utilise une fonction qu'on ma gentiment passé (je sais pas de support) elle fonctionne bien c'est sur le format de la réponse que je bute, en fait j'ai fait ma propre fonction (plus basique) et le résultat est identique on dirait que c'est codé quand j'y affiche.
 
je me connect à un serveur, lui demande une liste d'adresse ip et me renvoie ce que je ne sas pas convertir :/
 
ma fonction:

Code :
  1. $ip = "cod4master.activision.com"; $port = 20810; // COD4
  2. $fp = fsockopen("udp://$ip",$port, $errno, $errstr, 2); // Opens connection to server
  3. $query = "ÿÿÿÿgetservers 6 full empty"; // Query sent to server
  4. if (!$fp) {
  5. echo "$errstr ($errno)<br />\n";
  6. } else {
  7. stream_set_timeout($fp, 2);
  8. fputs($fp, $query);
  9. $resultat = fread($fp, 8192);
  10. file_put_contents('test.txt', $resultat);
  11. echo $resultat;
  12. }


 
j'ai en echo:
ÿÿÿÿgetserversResponse �\ÁÛ(q \WvDšq \Øë!q\Moàài‡\Uìe_q \TóþÅq*\Âa¦pq \ÍêË¢q \Øäšq \>h±µq \QÝéq \U¾°q \Âa¥­q \ q \Ñ,zq \O…<4q"\ÐOÓq \Q±q#\Xˆ nq \Nk#q"\UÖ†’q \>h«dq \ÁÀ:Kq4\ q \J?Bjq \U‡(q \ÁÈžq!\Qßq \>h¬~q \MJÇ5q"\QÙ²q \UÖ?¾q \>h«»q \K~@Òq!\ÃjFq \Á!º q>\Á/S¯q\ÁÈž&q \Á/Sèq\>]Í4n�\B7‰~q \BÇô–q \Bþm‚q \XW$oq*\Ãçq \Ù’]|q"\Qß(q*\Â\Âa¥Pq \Øâzq \Q³eq \ЧúÁq \>h2q \ÃhÖq \Чú:q\Ñ,aÓq \ÙÐávq$\Á/S?qG\Âa¦*q \\h­åq \JVÁq$\>JJq*\MoÏ”i‡\Uꊶq"\EÜq \UìelU\ Ëq \J?B$q \Uìd,q \Y "Ôq \Cž%ªq \Ãi&q \ÃRŸEq \>C*Îq \U_q"\ hq \[yªq4\UƒÂ¼q \Y¸ƒq#\E Þq!\Mg8Tq \X¿Rq"\ÃBSªq \Ù£†q \QÛ3q!\ØëEq \Uê‰n�\Ãz†q \Чúdq \MKx!*\[ÀÒXq\ÁÈžàq \?q<q \@"¸q \Q©¹pq \Tô´Ä*\áq \HèÂãq$\Õ…m6q \Oƒ61q \Ðe*eq"\EOT
 
je ne sais pas convertir sa en string, et j'ai cherché, surement pas assez mais si quelqu'un peut m'aider c'est pas de refus merci.


Message édité par ouiouioui10 le 04-07-2008 à 10:35:02
Reply

Marsh Posté le 01-07-2008 à 19:36:43   

Reply

Marsh Posté le 01-07-2008 à 21:25:32    

echo (string)$resultat; :D


---------------
NewsletTux - outil de mailing list en PHP MySQL
Reply

Marsh Posté le 02-07-2008 à 10:02:44    

oui j'ai essayé sa change rien c'est exactement la même réponse.
si je query un serveur de jeux j'obtient du texte, ex:

Code :
  1. ÿÿÿÿstatusResponse \_Clan\{_T.D.G.V_}\_Email\admin@tdgv.org\_Location\FR\_Statistiques\www.statscod4.tdgv.org\_Website\www.tdgv.org\g_compassShowEnemies\0\g_gametype\war\gamename\Call of Duty 4\mapname\mp_farm\protocol\6\shortversion\1.7\sv_allowAnonymous\1\sv_disableClientConsole\0\sv_floodprotect\1\sv_hostname\^4F^7R^1A {_T.D.G.V_} RANKED ^7www.tdgv.org\sv_maxclients\28\sv_maxPing\350\sv_maxRate\25000\sv_minPing\0\sv_privateClients\2\sv_punkbuster\1\sv_pure\1\sv_voice\1\ui_maxclients\28\pswrd\0\mod\0


mais le master lui renvoie ce charabia pour moi :/ sa commence bien en string:

Code :
  1. ÿÿÿÿgetserversResponse ....


 
quelqun a une autre idée? Merci en tout cas.


Message édité par ouiouioui10 le 02-07-2008 à 10:03:20
Reply

Marsh Posté le 02-07-2008 à 13:27:02    

tu parles d'un autre serveur du même jeu ?


---------------
NewsletTux - outil de mailing list en PHP MySQL
Reply

Marsh Posté le 02-07-2008 à 13:43:51    

je parle du master, il y a d'un coté les serveur de jeux
de l'autre le master
et enfin les joueurs.
 
les serveurs de jeux envoie leur ip au master
les joueurs demande au master la liste des ip pour choisir un serveur.
 
en php si je me connecte a un serveur de jeux et lui demande ses infos j'obtiens un string lisible
si je fait pareil pour le master j'obtiens un string crypter ou je sais pas quoi

Reply

Marsh Posté le 03-07-2008 à 11:43:06    

bon c'est un string qui est renvoyé, et chaque ip:port (ex 124.32.52.3:28960) est en char

 

quelques ip:
    [0] => [yˆÃq%
    [1] => ÁÛ(q
    [2] => U¾ q
    [3] => Rbá¶q
    [4] => WvDšq
    [5] => Øë!q
    [6] => E ^q
    [7] => UƒÊq
    [8] => Uìe_q
    [9] => TóþÅq*
    [10] => Âa¦pq
    [11] => ÍêË¢q
    [12] => Øäšq
    [13] => >h±µq
    [14] => Noåq
    [15] => Y`à'q*
    [16] => QÝéq
    [17] => U¾°q
    [18] => Âa¥­q
    [19] => Õ•ùq%
    [20] =>  q
    [21] => Ñ,zq

 

comment trouvé la valeur décimal de chaque char en php automatiquement :/ je cherche depuis hier.
vu que certain ont pas 6 caractères je suppose il sont pas affichable dans le navigateur.

 

pour avoir l'ip il manque une fonction pour convertir chaque $b:
$b[0] . "." . $b[1] . "." . $b[2] . "." . $b[3] . ":" . $b[4].$b[5]

 

ici je trouve quelque décimal mais pas tous http://www.easycalculation.com/ascii-hex.php

 

<êL¼PÝ => 60.234.76.188:22100
le port je suis pas sur, je trouve 80221 et le seul serveur avec cette ip et port avec 221 dedans est celle la, j'ai utilisé http://javascript.internet.com/mis [...] -code.html pour convertir.


Message édité par ouiouioui10 le 03-07-2008 à 12:10:09
Reply

Marsh Posté le 03-07-2008 à 14:18:10    

bon j'ai trouvé pour les ip grâce à ce post http://forum.hardware.fr/hfr/Progr [...] 1925_1.htm
donc sur chaque valeur de mon array je fait:

Code :
  1. $ip = (int)ord($b[0]).".".(int)ord($b[1]).".".(int)ord($b[2]).".".(int)ord($b[3]).":";
  2. $ip .=(int)ord($b[4]) . '.' . (int)ord($b[5]);
 

l'ip et :x.x de gauche est ce que je converti et à droite l'ip:port correct:
88.198.105.66:109.107 - 88.198.105.66:28011

 

203.88.125.2:109.96 - 203.88.125.2:28000

 

203.88.125.2:109.97 - 203.88.125.2:28001

 

203.88.125.2:109.98 - 203.88.125.2:28002

 

85.25.130.15:113.32 - 85.25.130.15:28960

 

85.25.130.15:113.33 - 85.25.130.15:28961

 

donc il y a que le port de faux, reste à trouver la logique * / + - quoi à quoi.

 

je déchaine les passions avec mon sujet lol


Message édité par ouiouioui10 le 03-07-2008 à 14:34:07
Reply

Marsh Posté le 03-07-2008 à 14:41:21    

ok alors

 

256 * x + y
x est le 1er nombre du port
y le deuxième

 

j'ai pas tester toute les IP, j'ajoute réglé une fois fait.


Message édité par ouiouioui10 le 03-07-2008 à 15:13:50
Reply

Marsh Posté le 04-07-2008 à 10:34:08    

c'est bon sa fonctionne, merci à tous ce forum est super je post et trouve la solution rapidement :)


Message édité par ouiouioui10 le 04-07-2008 à 10:34:37
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed