PHP调用系统命令修改IP,netmask,gateway,mac,dns
ip_contrl.php:
<?php
//include('header.php');
$ipaddr = $_POST['ipaddr'];
$netmask = $_POST['netmask'];
$gateway = $_POST['gateway'];
$mac = $_POST['mac'];
$dns1 = $_POST['dns1'];
$dns2 = $_POST['dns2'];
//echo "ipaddr=$ipaddr;netmask=$netmask<br>";
if( $ipaddr && $netmask && $gateway && $mac && $dns1 && $dns2 )
{
system("./ip/changeip 1 $ipaddr $netmask $gateway $mac $dns1 $dns2");
echo "<script type='text/javascript'>
alert( '网络配置成功!' );
window.location.href = 'service_manage.php?id=2';
</script>";
}
else
{
exec("ifconfig eth0", $res);
$str = explode( "HWaddr ",$res[0] );
$macaddr = $str[1]; //mac地址
//echo "str[1]=".$str[1]."<br>";
$s = explode( "addr:",$res[1] );
$s1 = explode( " Bcast:",$s[1] );
$ipaddr = $s1[0]; //ip地址
//echo "s1[0]=".$s1[0]."<br>";
$s2 = explode( "Mask:",$s1[1] );
$netmask = $s2[1]; //子网掩码
//echo "s2[1]=".$s2[1]."<br>";
}
?>
<script language="javascript">
function checkFormData()
{
if ( form1.ipaddr.value == "")
{
alert ( "IP地址不能为空!" );
form1.ipaddr.focus();
return false;
}
if ( form1.ipaddr.value.search (".*?((25[0-5]|2[0-4]\\d|1\\d{2}|[1-9]\\d|\\d)\\.){3}(25[0-5]|2[0-4]\\d|1\\d{2}|[1-9]\\d|\\d).*?") != 0 )
{
alert ( "IP格式不正确!" );
form1.ipaddr.focus();
return false;
}
if ( form1.netmask.value
相关文档:
1.1
exit() 函数输出一条消息,并退出当前脚本。
如果 status
是字符串,则该函数会在退出前输出字符串。
如果 status
是整数,这个值会被用作退出状态。退出状态的值在 0 至 254 之间。退出状态 255 由 PHP 保留,不会被使用。状态 0 用于成功地终止程序。
1.2
301 Moved Permanently 客户请求的文档在其他地方, ......
$_SERVER['PHP_SELF'] #当前正在执行脚本的文件名,与document root相关。
$_SERVER['argv'] #传递给该脚本的参数
$_SERVER['argc'] #包含传递给程序的命令行参数的个数(如果运行在命令行模式)。
$_SERVER['GATEWAY_INTERFACE'] #服务器使用的 CGI 规范的版本。例如,& ......
今天刚学完mysqli,去我的IDC运营商那看了一下,发现他们的虚拟主机居然不支持,我又去其他几家看了看,有的支持有的不支持。
我就想自己写个类,让他去判断,能用mysqli就用mysqli,否则就用原始的mysql函数。不过问题马上就来了,自己写类会不会导致执行效率变低了呢?于是我就进行了如下测试。
这是用来计时的类:
/* ......
[root@BIND9-master /usr/local/bin]# php --ini
Configuration File (php.ini) Path: /usr/local/etc
Loaded Configuration File: /usr/local/Zend/etc/php.ini
Scan for additional .ini files in: /usr/local/etc/php
Additional .ini files parsed: &n ......