public function rules() { //验证提交数据 $validate_error = array(); if (empty($_POST['email'])) { $validate_error['email'] = '邮箱不能为空'; return $validate_error; } if (!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) { $validate_error['email'] = '邮箱格式不正确'; return $validate_error; } if (empty($_POST['password'])) { $validate_error['password'] = '******'; return $validate_error; } if (strlen($_POST['password']) < 6) { $validate_error['password'] = '******'; return $validate_error; } if ($_POST['password'] != addslashes($_POST['password'])) { $validate_error['password'] = '******'; return $validate_error; } if (empty($_POST['password_repeat'])) { $validate_error['password_repeat'] = '请确认密码'; return $validate_error; } if ($_POST['password'] !== $_POST['password_repeat']) { $validate_error['password_repeat'] = '两次输入的密码不一致'; return $validate_error; } //极验验证码判断 require_once GEETEST . 'lib/class.geetestlib.php'; session_start(); $GtSdk = new GeetestLib(); if ($_SESSION['gtserver'] == 1) { $result = $GtSdk->validate($_POST['geetest_challenge'], $_POST['geetest_validate'], $_POST['geetest_seccode']); if ($result == TRUE) { //验证通过 } else { $validate_error['captcha'] = '滑动验证失败, 请重新验证'; return $validate_error; } } else { if ($GtSdk->get_answer($_POST['geetest_validate'])) { //验证通过 } else { $validate_error['captcha'] = '滑动验证失败, 请重新验证'; return $validate_error; } } if (!$_POST['agreebbrule']) { $validate_error['agreebbrule'] = '您必须同意服务条款后才能注册'; return $validate_error; } //**end return true; }
public function check_user() { $value = $_POST; $value = $this->security->xss_clean($value); $GtSdk = new GeetestLib(); $result = $GtSdk->validate($value['geetest_challenge'], $value['geetest_validate'], $value['geetest_seccode']); if ($result == TRUE) { $this->session->set_userdata('geetest_seccode', $value['geetest_seccode']); if (preg_match("/^1[34578]\\d{9}\$/", $value['username'])) { # 判断是否是电话,若是则按电话号码查询 $this->phone = $value['username']; $row = $this->user_model->check_phone_is($this->phone); if ($row != false) { # code... $this->token = rand(1000, 9999); $data = array('success' => 1, 'token' => $this->token, 'phone' => $row['phone'], 'email' => $row['email']); $this->session->set_userdata('token', $this->token); $this->session->set_userdata('phone', $row['phone']); $this->session->set_userdata('email', $row['email']); echo $this->token; } else { echo "-1"; } // echo json_encode($data); } else { if (filter_var($value['username'], FILTER_VALIDATE_EMAIL)) { #判断是否是邮箱,若是则按邮箱查询 $this->email = $value['username']; $row = $this->user_model->check_email_is($this->email); if ($row != false) { # code... $this->token = rand(1000, 9999); $data = array('success' => 1, 'token' => $this->token, 'phone' => $row['phone'], 'email' => $row['email']); $this->session->set_userdata('uid', $row['uid']); $this->session->set_userdata('token', $this->token); $this->session->set_userdata('phone', $row['phone']); $this->session->set_userdata('email', $row['email']); echo $this->token; } else { echo "-1"; } // echo json_encode($data); } else { #传过来的既不是邮箱又不是电话,返回错误 $data = array("success" => -1); // echo json_encode($data); echo "-1"; } } } else { #验证码错误 $data = array("success" => -10); // echo json_encode($data); echo "-10"; exit; } }
function s_check_logincheck() { if (option::xget("s_check", "login_check") != 0) { $geetest = new GeetestLib(); $geetest->set_privatekey("2d5be5ba4207f11d33f7ae5e14a1c33e"); if (isset($_POST['geetest_challenge']) && isset($_POST['geetest_validate']) && isset($_POST['geetest_seccode'])) { $result = $geetest->validate($_POST['geetest_challenge'], $_POST['geetest_validate'], $_POST['geetest_seccode']); } if ($result == TRUE) { } else { if ($result == FALSE) { ReDirect("index.php?mod=login&error_msg=" . urlencode('登陆失败,请拖动滑块完成验证')); die; } else { ReDirect("index.php?mod=login&error_msg=" . urlencode('登陆失败,请拖动滑块完成验证')); die; } } } }
<?php /** * 本文件示例只是简单的输出 Yes or No */ // error_reporting(0); require_once dirname(dirname(__FILE__)) . '/lib/class.geetestlib.php'; session_start(); $GtSdk = new GeetestLib(); if ($_SESSION['gtserver'] == 1) { $result = $GtSdk->validate($_POST['geetest_challenge'], $_POST['geetest_validate'], $_POST['geetest_seccode']); if ($result == TRUE) { echo 'Yes!'; } else { if ($result == FALSE) { echo 'No'; } else { echo 'FORBIDDEN'; } } } else { if ($GtSdk->get_answer($_POST['geetest_validate'])) { echo "yes"; } else { echo "no"; } }
/** * 验证验证码 */ protected function checkCode($value) { if (isset($_POST['geetest_challenge']) && isset($_POST['geetest_validate'])) { require EXTENSION_DIR . 'Geetestlib.php'; $GtSdk = new GeetestLib(); if ($this->session->userdata('gtserver') == 1) { $result = $GtSdk->validate($_POST['geetest_challenge'], $_POST['geetest_validate'], $_POST['geetest_seccode']); if ($result == TRUE) { return TURE; } else { if ($result == FALSE) { return FALSE; } else { return FALSE; } } } else { if ($GtSdk->get_answer($_POST['geetest_validate'])) { return TURE; } else { return FALSE; } } } else { $code = $this->session->get('captcha'); $value = strtolower($value); $this->session->unset_userdata('captcha'); return $code == $value ? true : false; } }
<?php require_once "./class.geetestlib.php"; $geetestlib = new GeetestLib(); $data = json_decode($_POST['data'], true); $result = $geetestlib->validate($data['geetest_challenge'], $data['geetest_validate'], $data['geetest_seccode']); if ($result == 1) { echo "yes"; } else { echo "no"; }
public function onCheckAnswer($code = null) { //检查是否存在私钥 $privatekey = $this->params->get('private_key', ''); if ($privatekey == null || $privatekey == '') { $this->_subject->setError(JText::_('PLG_GEETEST_ERROR_NO_PRIVATE_KEY')); return false; } //常量私钥 if (!defined('PRIVATE_KEY')) { define('PRIVATE_KEY', $privatekey); } $input = JFactory::getApplication()->input; $geetest_challenge = $input->get('geetest_challenge', '', 'string'); $geetest_validate = $input->get('geetest_validate', '', 'string'); $geetest_seccode = $input->get('geetest_seccode', '', 'string'); $GtSdk = new GeetestLib(); if (isset($_SESSION['gtserver']) && $_SESSION['gtserver'] == 1) { $result = $GtSdk->validate($geetest_challenge, $geetest_validate, $geetest_seccode); if ($result == TRUE) { $return = true; } else { if ($result == FALSE) { $this->_subject->setError(JText::_('PLG_GEETEST_ERROR_INVALID')); $return = false; } else { $this->_subject->setError(JText::_('PLG_GEETEST_ERROR_UNKNOWN')); $return = false; } } } else { if ($GtSdk->get_answer($geetest_seccode)) { $return = true; } else { $this->_subject->setError(JText::_('PLG_GEETEST_ERROR_INVALID')); $return = false; } } //var_dump($return);exit(); return $return; }
/** * 图像转换 * @param Request $request */ public function icon(Request $request) { $title = "Icon图片格式转换工具 | CoderFix.cn"; $func = __FUNCTION__; $author = "lixiaoyu"; $description = "Http调试工具"; $icon_arr = ['class' => 'hidden', 'time' => date("Y-m-d H:i:s"), 'filename' => '', 'filepath' => '', 'size' => 0]; $error = ['class' => 'hidden', 'text' => '']; if ($request->method() == 'POST') { session_start(); $GtSdk = new \GeetestLib(); if ($_SESSION['gtserver'] == 1) { $result = $GtSdk->validate($_POST['geetest_challenge'], $_POST['geetest_validate'], $_POST['geetest_seccode']); if ($result == TRUE) { } else { if ($result == FALSE) { $error['text'] = "验证失败!"; } else { $error['text'] = "验证失败!"; } } } else { if ($GtSdk->get_answer($_POST['geetest_validate'])) { } else { $error['text'] = "验证失败!"; } } if ($error['text'] == "" && isset($_FILES['upimage']['tmp_name']) && $_FILES['upimage']['tmp_name'] && is_uploaded_file($_FILES['upimage']['tmp_name'])) { if ($_FILES['upimage']['type'] > 210000) { $error['text'] = "你上传的文件体积超过了限制 最大不能超过200k"; } else { $fileext = array("image/pjpeg", "image/gif", "image/x-png", "image/png", "image/jpeg", "image/jpg"); if (!in_array($_FILES['upimage']['type'], $fileext)) { $error['text'] = "你上传的文件格式不正确 仅支持 jpg,gif,png"; } else { if ($im = @imagecreatefrompng($_FILES['upimage']['tmp_name']) or $im = @imagecreatefromgif($_FILES['upimage']['tmp_name']) or $im = @imagecreatefromjpeg($_FILES['upimage']['tmp_name'])) { $imginfo = @getimagesize($_FILES['upimage']['tmp_name']); if (!is_array($imginfo)) { $error['text'] = "图形格式错误!"; } else { switch ($_POST['size']) { case 1: $resize_im = @imagecreatetruecolor(16, 16); $size = 16; break; case 2: $resize_im = @imagecreatetruecolor(32, 32); $size = 32; break; case 3: $resize_im = @imagecreatetruecolor(48, 48); $size = 48; break; case 4: $resize_im = @imagecreatetruecolor(64, 64); $size = 64; break; case 5: $resize_im = @imagecreatetruecolor(128, 128); $size = 128; break; default: $resize_im = @imagecreatetruecolor(64, 64); $size = 64; break; } imagecopyresampled($resize_im, $im, 0, 0, 0, 0, $size, $size, $imginfo[0], $imginfo[1]); $icon = new Iconv(); $gd_image_array = array($resize_im); $icon_data = $icon->GDtoICOstr($gd_image_array); $filename = "temp/" . date("Ymdhis") . rand(1, 1000) . ".ico"; if (file_put_contents($filename, $icon_data)) { // $output = "生成成功!请点右键->另存为 保存到本地<br><a href="/" mce_href="/""".$filename."/" target=/"_blank/">点击下载</a>"; // echo $filename; //数据展示 $icon_arr = ['class' => '', 'time' => date("Y-m-d H:i:s"), 'filename' => $_FILES['upimage']['name'], 'filepath' => $filename, 'size' => $size]; } } } else { $error['text'] = "生成错误请重试"; } } } } else { $error['text'] = "请选择图片!"; } } if ($error['text'] != "") { $error['class'] = ""; } return view('icon', ['author' => $author, 'desc' => $description, 'icon' => $icon_arr, 'title' => $title, 'error' => $error, 'func' => $func]); }