欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

自己亲自写的代码 联网报错检查 有大用 有大大用 有大大大用 有大大大大用

custom_twenty_three_fault.module

<?php    

   
function custom_twenty_three_fault_menu()
{
    $items['wireless_fault_troubleshooting'] = array(
        'title' => '无线网故障排查',
        'page callback' => 'custom_twenty_three_fault_wireless_fault_troubleshooting',
        'access arguments' => array('operation ise'),
    );
    $items['email_fault_troubleshooting'] = array(
        'title' => "有网时邮箱故障排查",
        'page callback' => 'custom_twenty_three_fault_email_fault_troubleshooting',
        'access arguments' => array('operation ise'),
    );
    return $items;
}

   
function custom_twenty_three_fault_init()
{
    global $wireless_troubleshooting;
    global $email_troubleshooting;
    if (!empty($_SESSION['wireless_troubleshooting'])) {
        $wireless_troubleshooting = $_SESSION['wireless_troubleshooting'];
        unset($_SESSION['wireless_troubleshooting']);
    }
    if (!empty($_SESSION['email_troubleshooting'])) {
        $email_troubleshooting = $_SESSION['email_troubleshooting'];
        unset($_SESSION['email_troubleshooting']);
    }
}

   
function wireless_fault_troubleshooting_form()
{
    global $wireless_troubleshooting;

   
    $form['gh'] = array(
        '#type' => 'textfield',
        '#title' => t('工号'),
        '#size' => 30,
        '#default_value' => !empty($wireless_troubleshooting['gh']) ? _removeCnEnSpace($wireless_troubleshooting['gh']) : '',
    );
    $pwd = $_POST['pwd'];
    if (empty($_POST['pwd'])) {
        $pwd = !empty($wireless_troubleshooting['pwd']) ? $wireless_troubleshooting['pwd'] : '';
    }
    $form['pwd'] = array(
        '#type' => 'password',
        '#title' => t('密码'),
        '#size' => 30,
        '#attributes' => array('value' => $pwd),
        '#description' => "<a href='javascript:void(0);' onclick='return false' class='do_view_ad_pwd'>显示</a> &nbsp;&nbsp;<span class='view_ad_pwd'></span><span class='pwd_error'></span>"    
    );
    $form['mac'] = array(
        '#type' => 'textfield',
        '#title' => t('无线mac地址'),
        '#size' => 30,
        '#default_value' => !empty($wireless_troubleshooting['mac']) ? _removeCnEnSpace($wireless_troubleshooting['mac']) : '',
    );
    $form['is_pingguo'] = array(
        '#type' => 'checkbox',
        '#title' => t('是苹果电脑(检测jamf分组)'),
        '#return_value' => 1,
        '#default_value' => $wireless_troubleshooting['is_pingguo'],
    );

   
    $form['#attributes']['class'][] = 'ad_user_pwd_form';

   
    $form['submit'] = array('#type' => 'submit', '#value' => t('排查'));
    return $form;
}

   
//判断AD用户信息是否有异常    
function _judge_ad_info($gh,$ad_info)
{
    $diqu = _my_node_jses_terminal_manager_diqu();
    if(empty($ad_info)){
        form_set_error('','未查到此人的AD信息,此工号为: '.$gh);
        return;
    }
    switch ($ad_info['useraccountcontrol'][0]) {
        case 512:
            break;
        case 514://是禁用的状态    
        case 546://是禁用的状态    
        case 66050://是禁用的状态    
        case 66080://是禁用的状态    
        case 66082://是禁用的状态    
            $get['useraccountcontrol'] = 66048;
            form_set_error('','此工号: '.$gh.' 已禁用 '.l('普通启用','query_ad_info', array('query' => array('gh'=>$gh,'diqu'=>$diqu,'useraccountcontrol'=>512),'attributes' => array('target'=>'_blank')))
                .'&nbsp;&nbsp;'.l('密码永不过期启用(高阶用户)','query_ad_info', array('query' => array('gh'=>$gh,'diqu'=>$diqu,'useraccountcontrol'=>66048),'attributes' => array('target'=>'_blank')))
                );
        return;
            break;
        case 544:
        case 66048:
        case 262656:
        break;
        default;//似乎除了 512 和 66048 之外 都是 禁用的状态    
            break;
    }
    if(!empty($ad_info['lockouttime'][0])){
            form_set_error('','此工号: '.$gh.' 已锁定  锁定时间为: ' . date('Y-m-d H:i:s', intval($ad_info['lockouttime'][0] / (1000 * 10000)) - 11644473600) .
            '&nbsp;&nbsp;&nbsp;&nbsp;'.l('解锁','query_ad_info', array('query' => array('gh'=>$gh,'diqu'=>$diqu,'unlock'=>1),'attributes' => array('target'=>'_blank'))));
            return;
    }

   
    if($ad_info['useraccountcontrol'][0] != 66048){//此时不是   密码永不过期(高阶用户)    
        $pwdlastset_time = intval($ad_info['pwdlastset'][0] / (1000 * 10000)) - 11644473600;
        $expire_time = strtotime("+60 days", $pwdlastset_time);
        $curr_time = time();
        $diff_days = ceil(($expire_time - $curr_time) / (24 * 3600));
        if ($diff_days >= 0) {
            if ($diff_days < 2) {
                $msg_string = '密码到期时间 '.date('Y-m-d H:i:s', $expire_time). ' 还有<span style="color:red;">' . $diff_days . '</span> 天过期';
                drupal_set_message($msg_string,'warning');
            }else{
                $msg_string = '密码到期时间 '.date('Y-m-d H:i:s', $expire_time). ' 还有 ' . $diff_days . ' 天过期';
                drupal_set_message($msg_string);
            }
        } else {
            $diff_days = '<span style="color:red;">' . abs($diff_days) . '</span>';
            $msg_string =  '密码到期时间 '.date('Y-m-d H:i:s', $expire_time). ' 过期了 ' . $diff_days . ' 天';
            form_set_error('',$msg_string);
        }
    }
}

   
function wireless_fault_troubleshooting_form_validate($form, &$form_state)
{
    //下面是 对  AD 的检查    
    $gh = $ad_gonghao = _removeCnEnSpace($form_state['values']['gh']);

   
    $diqu = _my_node_jses_terminal_manager_diqu();
    $ad_info = _get_ad_info_from_ad($gh, array('*'), $diqu);
    _judge_ad_info($gh,$ad_info);//判断用户AD信息是否有异常    

   
    $host = _get_ad_host();
    $domain = _get_ad_domain();
    $ad_user = $ad_gonghao . '@' . $domain;//域用户名    
    $password = _removeCnEnSpace($form_state['values']['pwd']);//域用户密码    


   
    if (empty($ad_gonghao) || empty($password)) {
        form_set_error('', 'AD用户名或密码不能为空!');
        return;
    }
    $conn = ldap_connect($host);
    if ($conn) {
        ldap_set_option($conn, LDAP_OPT_PROTOCOL_VERSION, 3);//声明使用版本3    
        ldap_set_option($conn, LDAP_OPT_REFERRALS, 0); // Binding to ldap server    
        ldap_set_option(NULL, LDAP_OPT_DEBUG_LEVEL, 7);
        $bd = @ldap_bind($conn, $ad_user, $password);
        if ($bd) {
//            drupal_set_message($ad_user.'  '.$password);    
            drupal_set_message("工号{$ad_gonghao}  AD用户名密码正确!");
        } else {
            form_set_error('', "AD用户名或密码不对, <a href='/es_ad_modify_my_pwd?gh={$ad_gonghao}&pwd={$password}' target='_blank'>修改密码</a> ,    
           或刚刚在企业微信修改,未同步,请 <a href='/es_ad_modify_my_pwd?gh={$ad_gonghao}&pwd={$password}' target='_blank'>立即同步密码</a> ");
            return;
        }
    } else {
        form_set_error('', '未能连接AD服务器!');
        return;
    }


   
    $memberofs = $ad_info['memberof'];
    foreach ($memberofs as $key => $value) {
        $value = substr($value, 3, stripos($value, ',') - 3);
        if (in_array(strtoupper($value), _get_field_ad_net_level_no_other_js())) {
            $ad_net_level_tag = $value;
        }
    };
    if (empty($ad_net_level_tag)) {
        form_set_error('', "{$ad_gonghao} 没有网络等级,请到 <a href='/query_ad_info?gh={$ad_gonghao}' target='_blank'>{$ad_gonghao}</a> 查看 是否有JS-NST,或JS-MST或 JS-TST 或JS-OFFICE的权限!");
        return;
    }
    drupal_set_message("{$ad_gonghao} 的姓名为 {$ad_info['displayname'][0]},具有 {$ad_net_level_tag} 的上网权限");

   
    //下面是 对  ise 的检查    
    $mac = _removeCnEnSpace($form_state['values']['mac']);//    


   
    if (empty($mac)) {
        form_set_error('', '无线mac地址不能为空');
        return;
    }
    $mac_maohao = $mac = $mac_wireless = _isMacAddressOrEmtpy($mac, ':');


   
    if (!$mac_wireless) {
        form_set_error('', '无线mac地址错误');
        return;
    }
    $ise_result = _query_ise($mac_maohao);
    if (empty($ise_result['endpointgroup'])) {
        form_set_error('', "此无线mac {$mac_maohao} 未加入ise组,请 <a href='/query_modify_ise?mac={$mac_maohao}&op=查询' target='_blank'>查询并加入</a>,或者 <a href='/list_devices?field_jses_mac_wireless_value={$mac_maohao}' target='_blank'>修改设备列表</a>!");
        return;
    } else {
        drupal_set_message("此无线mac {$mac_maohao}  ,在ise组上的组为 {$ise_result['endpointgroup']}");
    }
    $ad_net_level = _get_field_ad_net_level_flip()[$ad_net_level_tag];
    $ise_level = _ise_level_flip()[$ise_result['endpointgroup']];
    if ($ad_net_level == 'js_office' && $ise_level != 'js_office') {
        drupal_set_message("AD等级为 {$ad_net_level_tag},ise的网络等级为 {$ise_result['endpointgroup']} ,虽然不相等,但是不影响网络连接");
    } else if ($ad_net_level == $ise_level) {
        drupal_set_message("AD等级与ise的网络等级 相等");
    } else if ($ad_net_level != $ise_level) {
        form_set_error('', "AD等级 <span style='color:red;'>{$ad_net_level_tag}</span> 与ise的网络等级  <span style='color:red;'>{$ise_result['endpointgroup']}</span>  <span style='color:red;font-weight: bold;'>不相等,影响连网</span>,请 <a href='/query_modify_ise?mac={$mac_maohao}&op=查询' target='_blank'>ise 查询并修改为 {$ad_net_level_tag} </a>,或者修改  <a href='/query_ad_info?gh={$ad_gonghao}' target='_blank'>{$ad_gonghao}</a> 的连网权限,或者 <a href='/list_devices?field_jses_mac_wireless_value={$mac_maohao}' target='_blank'>修改设备列表</a>!");
        return;
    }

   
    $is_pingguo  = _removeCnEnSpace($form_state['values']['is_pingguo']);
    if($is_pingguo)//假如是苹果电脑    
    {
        $token_expires = get_jamf_token();
        $token_expires = json_decode($token_expires,true);
        $token = $token_expires['token'];
        $a_computer_info_xml_from_jamf = _get_groups_account_by_mac_from_jamf($mac,$token,'General&groups_accounts');
        $xml = simplexml_load_string($a_computer_info_xml_from_jamf); //是个xml的内容    
        $groups_account = $xml->groups_accounts->computer_group_memberships->group;//得到的是所有组(包括静态组)的信息    
        $groups_account = _object_to_array($groups_account);
        $groups_static_key_is_value = _get_jamf_level($groups_account);////结果类似于类似于 array('JS-MAC-Office-Group'=>'js_office')    array('JS-MAC-NST-Group'=>'js_nst')    
        if(!empty($groups_static_key_is_value) && count($groups_static_key_is_value)>1){ //这个mac 在jamf 中有两个或两个以上的分组    
            $groups_static_str = implode(',',array_flip($groups_static_key_is_value));
            form_set_error('', "有两个jamf静态组 <span style='color:red;'>{$groups_static_str}</span>.   请到 <a href='https://jamfsrv.luxshare-ict.com:8443' target='_blank'> jamf 网站   </a>    查看, 或者 <a href='/list_devices?field_jses_mac_wireless_value={$mac_maohao}' target='_blank'>修改设备列表</a>!");
            return;
        }else if(empty($groups_static)){//这个mac 在jamf 中没有分组    
            form_set_error('', "在jamf中 <span style='color:red;'>没有静态分组</span>.   请到 <a href='https://jamfsrv.luxshare-ict.com:8443/' target='_blank'> jamf 网站  </a>  查看, 或者 <a href='/list_devices?field_jses_mac_wireless_value={$mac_maohao}' target='_blank'>修改设备列表</a>!");
            return;
        }else {//此时这个mac 在jamf 中有且仅有一个分组    
            $jamf_level =  current($groups_static_key_is_value);//这是 $jamf_level  在 jamf分组中的值 即 'js_office'    
            $jamf_level_tag = key($groups_static_key_is_value);//这里 $jamf_level_tag  取得的就是标签 JS-MAC-Office-Group 或 JS-MAC-NST-Group 等等    
            if ($ad_net_level == 'js_office' && $jamf_level != 'js_office') {
                drupal_set_message("AD等级为 {$ad_net_level_tag},jamf的静态分组 {$ise_result['endpointgroup']} ,虽然不相等,但是不影响网络连接");
            }
            else if ($ad_net_level == $jamf_level) {
                drupal_set_message("AD等级与jamf的静态分组 相等");
            } else if ($ad_net_level != $jamf_level) {
                form_set_error('', "AD等级 <span style='color:red;'>{$ad_net_level_tag}</span> 与jamf的静态分组  <span style='color:red;'>{$jamf_level_tag}</span>  <span style='color:red;font-weight: bold;'>不相等,影响连网</span>,请到 <a href='https://jamfsrv.luxshare-ict.com:8443/' target='_blank'> jamf 网站 </a> 查看,或者修改  <a href='/query_ad_info?gh={$ad_gonghao}' target='_blank'>{$ad_gonghao}</a> 的连网权限,或者 <a href='/list_devices?field_jses_mac_wireless_value={$mac_maohao}' target='_blank'>修改设备列表</a>!");
                return;
            }
        }
    }

   
    //下面是对 dhcp 的检查,无须检查吧,因为即使不保留的话,也会连上网的    
    if($ad_net_level_tag == 'JS-OFFICE'){ //假如是office网的情况下    
        drupal_set_message("建议看看 <a href='/list_devices?field_jses_mac_wireless_value={$mac_maohao}' target='_blank'>嘉善设备列表</a> 是否正常 ");
    }else{//假如不是office网的情况下    
        drupal_set_message("建议看看 <a href='/list_dhcps?field_jses_mac_value={$mac_maohao}' target='_blank'>DHCP</a> 是否保留;   <a href='/list_devices?field_jses_mac_wireless_value={$mac_maohao}' target='_blank'>嘉善设备列表</a> 是否正常 ");
    }




   
    drupal_set_message("按照上面的提示操作后如果还不能连网,windows电脑可能需要<span style='color:red;'>1)ipguard看下权限组,2)使用办公小能手,3)插上有线网或ise无线网(或无线office网)激活,4)时间对不对,5)重置网卡,三种方法,6)实在不行,各种权限可以删掉(AD更新密码,ipguard拉到未分组,ise修改一下分组,再修改成原来的分组),重新增加一次,7)看dhcp有没有拉黑,8)重启</span> 电脑试试!", 'warning');
    drupal_set_message("按照上面的提示操作后如果还不能连网,mac电脑可能需要<span style='color:red;'>1)jamf看下权限组,2)使用办公小能手,3)联软看下权限组,4)插上有线网或ise无线网(或无线office网)激活,5)时间对不对,6)重置网卡,7)实在不行,各种权限可以删掉(AD更新密码,ipguard拉到未分组,ise修改一下分组,再修改成原来的分组),重新增加一次,8)看dhcp有没有拉黑,9)重启</span> 电脑试试!", 'warning');
    drupal_set_message("以上的操作可以解决90%以上的连网问题!");


   
    $_SESSION['wireless_troubleshooting']['gh'] = $gh;
    $_SESSION['wireless_troubleshooting']['pwd'] = $password;
    $_SESSION['wireless_troubleshooting']['mac'] = $mac;
    $_SESSION['wireless_troubleshooting']['is_pingguo'] = $is_pingguo;
}

   
function custom_twenty_three_fault_wireless_fault_troubleshooting()
{
    return drupal_get_form('wireless_fault_troubleshooting_form');
}

   
function email_fault_troubleshooting_form()
{
    global $email_troubleshooting;

   
    $form['demo'] = array(
        '#markup' => "<div style='font-size: 100%;color:#8c2e0b;background-color:#fef5f1;border: 1px solid #ed541d;padding: 5px 20px 5px 10px;margin-bottom: 10px; display: inline-block;'>请检查电脑时间,windows请试试重新配置邮箱 <a href='/sites/default/files/files/2023/07/1-u/t-16/%E6%96%B0%E7%89%88%E9%82%AE%E7%AE%B1%E9%87%8D%E6%96%B0%E5%8C%B9%E9%85%8D%E8%B4%A6%E6%88%B7.exe' target='_blank'>配置新版邮箱</a>&nbsp;&nbsp;<a href='/sites/default/files/files/2023/07/1-u/t-16/2016%E7%89%88%E9%82%AE%E7%AE%B1%E9%87%8D%E6%96%B0%E5%8C%B9%E9%85%8D%E8%B4%A6%E6%88%B7.exe' target='_blank'>配置2016版邮箱</a>!</div>",
    );

   
    $form['gh'] = array(
        '#type' => 'textfield',
        '#title' => t('工号'),
        '#size' => 30,
        '#default_value' => !empty($email_troubleshooting['gh']) ? _removeCnEnSpace($email_troubleshooting['gh']) : '',
    );
    $pwd = $_POST['pwd'];
    if (empty($_POST['pwd'])) {
        $pwd = !empty($email_troubleshooting['pwd']) ? $email_troubleshooting['pwd'] : '';
    }
    $form['pwd'] = array(
        '#type' => 'password',
        '#title' => t('密码'),
        '#size' => 30,
        '#attributes' => array('value' => $pwd),
        '#description' => "<a href='javascript:void(0);' onclick='return false' class='do_view_ad_pwd'>显示</a> &nbsp;&nbsp;<span class='view_ad_pwd'></span><span class='pwd_error'></span>"    
    );
    $form['ip'] = array(
        '#type' => 'textfield',
        '#title' => t('ip地址'),
        '#size' => 30,
        '#default_value' => !empty($email_troubleshooting['ip']) ? _removeCnEnSpace($email_troubleshooting['ip']) : '',
        '#description' => "&nbsp;&nbsp;<a href='/get_ip' target='_blank'>查看ip地址</a>,是<span style='color:red;'>用户的电脑</span>的ip,不是运维人员的电脑ip",
    );
    $form['#attributes']['class'][] = 'ad_user_pwd_form';
    $form['submit'] = array('#type' => 'submit', '#value' => t('排查'));
    return $form;
}

   
function email_fault_troubleshooting_form_validate($form, &$form_state)
{
//    drupal_set_message("请检查电脑时间,并且试试重新配置邮箱 <a href='/sites/default/files/files/2023/07/1-u/t-16/%E6%96%B0%E7%89%88%E9%82%AE%E7%AE%B1%E9%87%8D%E6%96%B0%E5%8C%B9%E9%85%8D%E8%B4%A6%E6%88%B7.exe' target='_blank'>配置新版邮箱</a>&nbsp;&nbsp;<a href='/sites/default/files/files/2023/07/1-u/t-16/2016%E7%89%88%E9%82%AE%E7%AE%B1%E9%87%8D%E6%96%B0%E5%8C%B9%E9%85%8D%E8%B4%A6%E6%88%B7.exe' target='_blank'>配置2016版邮箱</a>!", 'error');    
    //下面是 对  AD 的检查    
    $gh = $ad_gonghao = _removeCnEnSpace($form_state['values']['gh']);
    $diqu = _my_node_jses_terminal_manager_diqu();
    $ad_info = _get_ad_info_from_ad($gh, array('*'), $diqu);
    _judge_ad_info($gh,$ad_info);//判断用户AD信息是否有异常    




   
    $_SESSION['email_troubleshooting']['gh'] = $gh;
    $host = _get_ad_host();
    $domain = _get_ad_domain();
    $ad_user = $ad_gonghao . '@' . $domain;//域用户名    
    $password = _removeCnEnSpace($form_state['values']['pwd']);//域用户密码    
    $_SESSION['email_troubleshooting']['pwd'] = $password;

   
    if (empty($ad_gonghao) || empty($password)) {
        form_set_error('', 'AD用户名或密码不能为空!');
        return;
    }
    $conn = ldap_connect($host);
    if ($conn) {
        ldap_set_option($conn, LDAP_OPT_PROTOCOL_VERSION, 3);//声明使用版本3    
        ldap_set_option($conn, LDAP_OPT_REFERRALS, 0); // Binding to ldap server    
        ldap_set_option(NULL, LDAP_OPT_DEBUG_LEVEL, 7);
        $bd = @ldap_bind($conn, $ad_user, $password);
        if ($bd) {
//            drupal_set_message($ad_user.'  '.$password);    
            drupal_set_message("工号{$ad_gonghao}   AD用户名密码正确!");
        } else {
            form_set_error('', "AD用户名或密码不对, <a href='/es_ad_modify_my_pwd?gh={$ad_gonghao}&pwd={$password}' target='_blank'>修改密码</a> ,可能AD密码过期,或锁定,请到 <a href='/query_ad_info?gh={$ad_gonghao}' target='_blank'>{$ad_gonghao}</a> 查看    
           或刚刚在企业微信修改,未同步,请 <a href='/es_ad_modify_my_pwd?gh={$ad_gonghao}&pwd={$password}' target='_blank'>立即同步密码</a> ");
            return;
        }
    } else {
        form_set_error('', '未能连接AD服务器!');
        return;
    }


   
    $memberofs = $ad_info['memberof'];
    foreach ($memberofs as $key => $value) {
        $value = substr($value, 3, stripos($value, ',') - 3);
        if (in_array(strtoupper($value), _get_field_ad_net_level_no_other_js())) {
            $ad_net_level_tag = $value;
        }
    };
    if (empty($ad_net_level_tag)) {
        form_set_error('', "{$ad_gonghao} 没有网络等级,请到 <a href='/query_ad_info?gh={$ad_gonghao}' target='_blank'>{$ad_gonghao}</a> 查看 是否有JS-NST,或JS-MST或 JS-TST 或JS-OFFICE的权限!");
        return;
    }
    drupal_set_message("{$ad_gonghao} 的姓名为 {$ad_info['displayname'][0]},具有 {$ad_net_level_tag} 的邮箱权限");

   
    //下面是 对  ip 的检查    
    $ip = _removeCnEnSpace($form_state['values']['ip']);//    
    $_SESSION['email_troubleshooting']['ip'] = $ip;


   
    if (empty($ip)) {
        form_set_error('', 'ip地址不能为空');
        return;
    }
    $ip_prefix = substr($ip, 0, (strripos($ip, '.') + 1));//ip前缀,包含点    
    $ip_suffix = substr($ip, strrpos($ip, '.') + 1);//ip后缀,不包含点    
    $networks = _get_net_from_dhcp();

   
    //下面是非特殊情况    
    if ('192.168.69.' != $ip_prefix && '192.168.177.' != $ip_prefix && '192.168.136.' != $ip_prefix && '10.181.80.' != $ip_prefix) {
        foreach ($networks as $key => $value) {
            foreach ($value as $son_key => $son_value) {
                foreach ($son_value as $son_son_key => $son_son_value)
                    if ($son_son_value == $ip_prefix) {
                        $dhcp_net_level = $key;
                        break 3;
                    }
            }
        }
    } //下面是特殊情况    
    else if ('192.168.69.' == $ip_prefix ||  '192.168.177.' == $ip_prefix ||  '192.168.136.' == $ip_prefix ||  '10.181.80.' == $ip_prefix) {
        if ('192.168.69.' == $ip_prefix) {
            if ($ip_suffix >= 1 && $ip_suffix <= 30) {//下面这里为了简便就写死吧    
                $dhcp_net_level =  'other___a1_npi_l1_69';
            } else if ($ip_suffix >= 40 && $ip_suffix <= 60) {
                $dhcp_net_level =   'other___a1_npi_l1_691';

   
            } else if ($ip_suffix >= 70 && $ip_suffix <= 90) {
                $dhcp_net_level =   'other___a1_js_vn_debug_692';
            } else if ($ip_suffix >= 100 && $ip_suffix <= 120) {
                $dhcp_net_level =   'other___a1_npi_l5_693';
            }
        } else if ('192.168.177.' == $ip_prefix) {
            if ($ip_suffix >= 10 && $ip_suffix <= 62) {//下面这里为了简便就写死吧    
                $dhcp_net_level =   'other___a1_tpi_l1';
            }
        } else if ('192.168.136.' == $ip_prefix) {
            if ($ip_suffix >= 10 && $ip_suffix <= 62) {//下面这里为了简便就写死吧    
                $dhcp_net_level =   'other___a2_tpi_l1';
            }
        } else if ('10.181.80.' == $ip_prefix) {
            if ($ip_suffix >= 10 && $ip_suffix <= 62) {//下面这里为了简便就写死吧    
                $dhcp_net_level =   'other___b_tpi_l1';
            }
        }
    }
    empty($dhcp_net_level) && $dhcp_net_level='other network';

   
    $ad_net_level = _get_field_ad_net_level_flip()[$ad_net_level_tag];
    if ($dhcp_net_level != $ad_net_level) {
        form_set_error('', "用户的网络等级 {$ad_net_level_tag} 与ip所在的网络 {$dhcp_net_level} <span style='color:red;'>不一样</span>,请OA开单,把电脑接入相同网络");
        return;
    } else {
        drupal_set_message("用户的网络等级与ip所在的网络相同");
    }
    drupal_set_message("按照上面的提示操作后如果还打不开邮箱,电脑可能需要<span style='color:red;'>1)重启</span>电脑试试!", 'warning');
    drupal_set_message("以上的操作可以解决90%以上的邮箱问题!");
    $_SESSION['wireless_troubleshooting']['gh'] = $gh;
    $_SESSION['wireless_troubleshooting']['pwd'] = $password;
    $_SESSION['wireless_troubleshooting']['ip'] = $ip;

   
}

   
function custom_twenty_three_fault_email_fault_troubleshooting()
{
    return drupal_get_form('email_fault_troubleshooting_form');

   
}


普通分类: