小编Joh*_*ann的帖子

创建新Socket时添加超时

我有一个带DHCP的本地网络和几台PC.其中一个应该是我的服务器并自动连接到所有其他(客户端).我的想法是:首先,我在每个客户端(CServer)上创建一个服务器,从服务器(SClient)监听客户端程序.当SClient连接到CServer时,SClient向CServer发送他的IP,因此他知道该IP上将有服务器.然后在尝试IP范围内的所有IP(例如192.168.1.xxx)后,启动真实服务器,所有客户端连接到已知服务器IP.但是当我尝试以下操作时,SClient在尝试连接到192.168.1.0时只在第一个IP冻结.我如何定义超时或类似的东西,让SClient丢弃不成功的连接并继续使用192.168.1.1?

import java.lang.*;
import java.io.*;
import java.net.*;

class SClient {
    public SClient() {
        for(int i = 120; i < 125; i++){
            try{
                InetAddress addr = InetAddress.getLocalHost();
                String addrs = addr+"";
                String ip = addrs.substring(addrs.indexOf("/")+1);
                Socket s1 = new Socket("192.168.1." + i, 1254);

                OutputStream s1out = s1.getOutputStream();
                DataOutputStream dos = new DataOutputStream (s1out);
                dos.writeUTF(ip);
                dos.close();
                s1out.close();
                s1.close();
            }catch(IOException e){}
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

import java.lang.*;
import java.io.*;
import java.net.*;

class CServer {
    public CServer() throws IOException{
        ServerSocket s = new ServerSocket(1254); …
Run Code Online (Sandbox Code Playgroud)

java

8
推荐指数
1
解决办法
8187
查看次数

致命错误:调用未定义的方法mysqli_stmt :: get_result()

由于我已经将我的网站移动到新的vServer,我总是收到此错误消息

Fatal error:  Call to undefined method mysqli_stmt::get_result()
Run Code Online (Sandbox Code Playgroud)

这些代码行正常工作

$mysql = new mysqli($db_host, $db_user, $db_password, $db_database);
$partys = NULL;
$res_partys = $mysql->query("SELECT * FROM party ORDER BY begin");
while($row_partys = $res_partys->fetch_array()) {
    $partys[] = $row_partys;
}
$count_reg = $mysql->prepare("SELECT COUNT(*) FROM guestlist WHERE partyid = ?");
$count_reg->bind_param('i', $party['partyid']);
$count_reg->execute();
Run Code Online (Sandbox Code Playgroud)

$count_res = $count_reg->get_result();失败了.Mysqli支持已启用.

Accorind到一些互联网资源我需要PHP MySQL本机驱动程序,但我只在我的Debian 7机器上安装了php5-mysql,因为安装php5-mysqlnd via apt-get install php5-mysqlnd会自动删除Froxlor,这是我的服务器管理面板.

是否还有其他方法可以安装mysqlnd,除非通过apt-get download php5-mysqlnddpkg 下载并安装它,因为这会因为未满足的要求而在每次跟随apt-get调用时抛出错误,并从源代码编译PHP包括mysqlnd?

php mysql mysqli prepared-statement mysqlnd

6
推荐指数
1
解决办法
6246
查看次数

.animate()之后的jQuery .removeAttr('style')不起作用

我有以下导航

<nav>
   <a href="#" class="current">HOME</a>
   <a href="#">ABOUT</a><a href="#">CONTACT</a>
</nav>
Run Code Online (Sandbox Code Playgroud)

这个造型:

nav a {
    font-family: monospace;
    display: inline-block;
    width: 114px;
    height: 29px;
    font-size: 14px;
    line-height: 29px;
    text-align: center;
    text-decoration: none;
    color: white;
    background-color: #004870;
}
nav a {
    margin-left: 7px;
}
nav a.current{
    background-color: #585858;
    color: white;
}
Run Code Online (Sandbox Code Playgroud)

而想要动画的背景色mouseover,以#585858和回#a3a3a3mouseleave和样式属性,以便再次取出.

我尝试了这段代码,但样式属性仍然存在mouseleave:

$(document).ready(function() {
   $('nav a:not(.current)').mouseenter(function() {
   $(this).stop().animate( {
          backgroundColor: '#585858'
   }, 300);
});
$('nav a:not(.current)').mouseleave(function() {
$(this).stop().animate( {
    backgroundColor: '#004870'
}, 300).removeAttr('style'); …
Run Code Online (Sandbox Code Playgroud)

html jquery

2
推荐指数
1
解决办法
5843
查看次数

标签 统计

html ×1

java ×1

jquery ×1

mysql ×1

mysqli ×1

mysqlnd ×1

php ×1

prepared-statement ×1