失敗原因:
因為空間服務商關閉了fsockopen()函數功能。
解決方法:
找到phpcms/modules/member/classes/client.class.php第361行,取代fsockopen為pfsockopen即可。
fsockopen()函數被停用的解決方法:
伺服器同時停用了fsockopen pfsockopen,那麼就用其他函數取代,如stream_socket_client()。注意:stream_socket_client()和fsockopen()的參數不同。
具體操作:
搜尋程式中的字串fsockopen( 替換為stream_socket_client( ,然後,將原fsockopen函數中的連接埠參數「80」刪掉,並加到$host。
範例如下:
修改前:
$fp = fsockopen($host, 80, $errno, $errstr, 30);
或
$fp = fsockopen($host, $port, $errno, $errstr, $connection_timeout);
修改後:
$fp = stream_socket_client("tcp://".$host."80", $errno, $errstr, 30);
或
$fp = stream_socket_client("tcp://".$host.":".$port, $errno, $errstr, $connection_timeout);
推薦教學:phpcms教學
以上是phpcms註冊會員操作失敗的詳細內容。更多資訊請關注PHP中文網其他相關文章!