我要疯了!SOCKET问题 高手看看 描述一下错误???$metinhost变量未定义吧? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 那个是我写错了 应该是$host 怎么出了个metin?怪怪错误就是IE 不动了 一动不动 呵呵 时间长了以后 连IIS都死了 发过去 然后获得服务器返回的信息SOCKET过去到服务器后 服务器会返回一条信息 根据我发的这条信息就这样 你发送的454345web server当然不支持这个命令,http server只能认识一些诸如head,get,post。<?//=========================================//测试$host = "192.168.0.19";$host_port = "8888";$host_timeout = "10";$socket = socket_create(AF_INET, SOCK_STREAM, 0);if ($socket < 0) { echo "socket_create() 失败: reason: " . socket_strerror ($socket) . "\n";}else { echo "OK1.\n";} //=========================================$result = socket_connect($socket, $host, $host_port);if ($result < 0) { echo "socket_connect() 失败.\nReason: ($result) " . socket_strerror($result) . "\n<br>";} else { echo "OK2.\n"; }//=========================================$send = "HEAD / HTTP/1.0\r\n\r\n";socket_write ($socket, $send, strlen ($send));$str = socket_read($socket,2048);//接受返回echo "$str";//=========================================socket_close ($socket);?> 如果是web server,守护端口,是不认识你的这个所谓的4545这串的,所以可能一直等到浏览器超时。你可以用java或者vc自己写一个简单的服务器端的小程序,来解析发过来的命令串,然后返回串即可。 呵呵,你还是看看socket编程的原理吧。 goodname再帮帮忙 拜托 回复人: goodname(CSDN新版论坛总版主) ( ) 信誉:102 2003-06-16 19:47:00 得分:0 呵呵,你还是看看socket编程的原理吧。 client和server端可以传送任何字符。一般来说,server端,开一个端口比如说80,等候任何消息得到达。接收后,如何处理,是server端的程序说了算得。比如说,我接到一个字符串,然后就返回这个字符串,或者返回这个字符串的倒序,随便server端的规则说算得。你发送了字符串,你到底想干什么呢???我不明白。 终于搞定了感谢goodname ,终于发现是$send = "454345";这里的错误 这里的454345是我乱输入的整个过程是这样的 有一个服务器端 4455端口 当用户在页面上输入用户名和密码的时候页面会连接这个4455端口 就是$send=""我乱输的这个 呵呵 找个就是服务器要接受的字串然后判断 是否正确 返回字串中包含正确 错误信息我刚才仔细看了一下 错误果然是在这个$send = "$".ask." ".$id." ".$name." ".$number."$";上 ;我发的字串格式错误; 呵呵当我把格式改了以后就好了 多亏你提醒了发送HEAD / HTTP/1.0\r\n\r\n,我想 是不是格式的问题 呵呵 果然是 看来平时还是多应该和你这种高手学习!小弟在这里感谢了! 送分! php 基本问题 init-file 使用失败的问题 php http_request请求得到的response 请问如何实现邮件拆分 php中如何调用mysql的存储过程?? 用php 解析execl 的问题? + 急急急急急急 高分求购啊!!!!! 请问邮件群发,会不会使服务器堵塞,如果会,请问如何才能有效的群发邮件而又不会堵塞服务器的方法吗?,如果有请帮小弟我这个大忙呀。在 如何在windows下配置Mcrypt 急!帮助 数组合并 是否APACHE不支持中文目錄與文件名呢?
错误就是IE 不动了 一动不动 呵呵 时间长了以后 连IIS都死了
SOCKET过去到服务器后 服务器会返回一条信息 根据我发的这条信息
就这样
454345
web server当然不支持这个命令,http server只能认识一些
诸如head,get,post。<?
//=========================================
//测试
$host = "192.168.0.19";
$host_port = "8888";
$host_timeout = "10";$socket = socket_create(AF_INET, SOCK_STREAM, 0);
if ($socket < 0)
{
echo "socket_create() 失败: reason: " . socket_strerror ($socket) . "\n";
}
else { echo "OK1.\n";} //=========================================
$result = socket_connect($socket, $host, $host_port);
if ($result < 0)
{
echo "socket_connect() 失败.\nReason: ($result) " . socket_strerror($result) . "\n<br>";
}
else { echo "OK2.\n"; }
//=========================================
$send = "HEAD / HTTP/1.0\r\n\r\n";
socket_write ($socket, $send, strlen ($send));
$str = socket_read($socket,2048);//接受返回
echo "$str";
//=========================================
socket_close ($socket);
?>
所以可能一直等到浏览器超时。你可以用java或者vc自己写一个简单的服务器端的小程序,来解析发过来的命令串,然后返回串
即可。
再帮帮忙 拜托
呵呵,你还是看看socket编程的原理吧。
接收后,如何处理,是server端的程序说了算得。
比如说,我接到一个字符串,然后就返回这个字符串,或者返回这个字符串的倒序,随便server端的规则说算得。你发送了字符串,你到底想干什么呢???我不明白。
感谢goodname ,终于发现是$send = "454345";这里的错误 这里的454345是我乱输入的
整个过程是这样的 有一个服务器端 4455端口 当用户在页面上输入用户名和密码的时候
页面会连接这个4455端口 就是$send=""我乱输的这个 呵呵 找个就是服务器要接受的字串
然后判断 是否正确 返回字串中包含正确 错误信息我刚才仔细看了一下 错误果然是在这个$send = "$".ask." ".$id." ".$name." ".$number."$";上 ;我发的字串格式错误; 呵呵当我把格式改了以后就好了 多亏你提醒了发送HEAD / HTTP/1.0\r\n\r\n,我想 是不是格式的问题 呵呵 果然是 看来平时还是多应该和你这种高手学习!小弟在这里感谢了! 送分!