url:function(row){
var a = JSON.stringify(row.yq_ids);
console.log(a);
return 'market/areaccount/overdue?yq_ids='+escape(a);
}
然后在overdue方法中将yq_ids转成数组:
$yq_ids = json_decode($_GET['yq_ids'],true);
url:function(row){
var a = JSON.stringify(row.yq_ids);
console.log(a);
return 'market/areaccount/overdue?yq_ids='+escape(a);
}
然后在overdue方法中将yq_ids转成数组:
$yq_ids = json_decode($_GET['yq_ids'],true);
一、获取页面中所有form的文本值并打包(下文省略部分代码):
var forms = $(".warpper1").find("form");
var arr = new Object();
for(var i=0;i<forms.length;i++){
var id = forms.eq(i).attr("id");
arr[id] = $("#"+id).serializeArray();
}
console.table(arr);
$.ajax({
url:'/Home/Members/perfect_now',
data:arr,
dataType:'html',
type:'post',
success:function(data){
console.log(data);
}
});
二、将后台获取的$_POST转化成易于插入数据库表的数据结构:
//print_r($_POST);
foreach($_POST as $k=>$v){
$num = 0;
foreach($v as $key=>$val){
if($val['name'] == $v[0]['name'] && $key != 0){
++$num;
}
$_POST[$k][$num][$val['name']] = $val['value'];
if($key != $num){unset($_POST[$k][$key]);}
unset($_POST[$k][$num]['name']);
unset($_POST[$k][$num]['value']);
}
}
//print_r($_POST);exit;
HTML部分
<img id="pscover" src="__PUBLIC__/Home/images/z_70.jpg" alt="" /> <input type="file" name="scover" id="scover" /> <img id="pqr" src="__PUBLIC__/Home/images/z_70.jpg" alt="" /> <input type="file" name="qr" id="qr"/>
JS部分(注意引入jQ)
window.onload = function(){
var arr = new Array();
arr["img[id='pscover']"] = "input[name='scover']";
arr["img[id='pqr']"] = "input[name='qr']";
for(var i in arr){
void function(i){
$(arr[i]).on("change",function(){
var pic = this.files[0];
pic_preview(pic,i);
})
}(i)
}
function pic_preview(pic,obj){
var f = new FileReader();
f.readAsDataURL(pic);
f.onload = function (e){
$(obj).attr("src",this.result).show();
}
}
}
html代码:
<input class="inpt-hm" type="text" id="mobile" name="mobile" placeholder="请输入手机号码"> <input class="yzma-put" type="text" placeholder="请输入验证码"> <input id="btnSendCode" type="button" id="btn" value="发送验证码" onclick="sendMessage()">
2. js代码:
var InterValObj; //timer变量,控制时间
var count = 60; //间隔函数,1秒执行
var curCount;//当前剩余秒数
function sendMessage() {
curCount = count;
var mobile = $("input.inpt-hm").val();
if(mobile.length != 11 || mobile.substr(0,1)!=1){
alert("手机格式不正确!");
$("input.inpt-hm").select();
return false;
}else{
//设置button效果,开始计时
$("#btnSendCode").attr("disabled", "true");
$("#btnSendCode").val(curCount + "秒后重新发送");
//启动计时器,1秒执行一次
InterValObj = window.setInterval(SetRemainTime, 1000);
$.ajax({
url:"/SendSMS.php",
data:{
mobile:mobile
},
dataType:'json',
type:'post',
success:function (data) {
console.table(data);
if(data['success'] == "false"){
alert("系统错误");
}
}
});
}
}
//timer处理函数
function SetRemainTime() {
if (curCount == 0) {
window.clearInterval(InterValObj);//停止计时器
$("#btnSendCode").removeAttr("disabled");//启用按钮
$("#btnSendCode").val("重新发送验证码");
}
else {
curCount--;
$("#btnSendCode").val(curCount + "秒后重新发送");
}
}
3. SendSMS.php
<?php
/**
* 启瑞云短信接口Demo(utf-8)
*/
class SendDemo
{
const SENDURL = 'http://api.qirui.com:7891/mt';
private $apiKey;
private $apiSecret;
/**
* 构造方法
* @param string $apiKey 接口账号
* @param string $apiSecret 接口密码
*/
public function __construct($apiKey, $apiSecret)
{
$this->apiKey = $apiKey;
$this->apiSecret = $apiSecret;
}
/**
* 短信发送
* @param string $phone 手机号码
* @param string $content 短信内容
* @param integer $isreport 是否需要状态报告
* @return void
*/
public function send($phone, $content, $isreport = 1)
{
$requestData = array(
'un' => $this->apiKey,
'pw' => $this->apiSecret,
'sm' => $content,
'da' => $phone,
'rd' => $isreport,
'dc' => 15,
'rf' => 2,
'tf' => 3,
);
$url = self::SENDURL . '?' . http_build_query($requestData);
return $this->request($url);
}
/**
* 请求发送
* @return string 返回发送状态
*/
private function request($url)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
}
//end
//实例化类,测试发送
//接口账号
$apiKey = '1777270010';
//接口密码
$apiSecret = 'bcd9e627095d553da10d';
//接受短信的手机号码
$phone = empty($_POST["mobile"])?"15872024172":$_POST["mobile"];
//短信内容(【签名】+短信内容),系统提供的测试签名和内容,如需要发送自己的短信内容请在启瑞云平台申请签名和模板
$yzm = rand(1000,9999);
$content = '【首房在线】'.$phone.'您好,您的验证码是:'.$yzm.",请在3分钟内完成验证。";
session_start();
$_SESSION['yzm'] = $yzm;
$sms = new SendDemo($apiKey, $apiSecret);
$result = $sms->send($phone, $content);
print_r($result );
/*
jquery中的each是用来遍历数组的而map则是用来映射生成一个新数组的
each方法中的return false相当于循环中的break,return true相当于循环中的continue
map方法中的return 相当于个新数组映射成的一个元素,没有return就相当于新的数组中忽略掉了这个元素
*/
/*遍历数组*/
var arr=["a","b","c"];
console.log("js遍历数组1");
for(var i=0;i<arr.length;i++){
console.log(i+"--"+arr[i]);
}
console.log("js遍历数组2");
for(var i in arr){
console.log(i+"--"+arr[i]);
}
console.log("jquery.each遍历数组");
$.each(arr,function(i,item){
console.log(i+"--"+item);
});
console.log("jquery.each遍历数组2");
$(arr).each(function(i,item){
console.log(i+"--"+item);
});
console.log("jquery.map遍历数组1,注意这里回调函数中第一个参数是元素,第二个是索引");
$.map(arr,function(i,item){
console.log(i+"--"+item);
});
console.log("jqery.map遍历数组2");
console.log($(arr).map(function(i,item){
console.log(i+"--"+item);
}).length);
/*遍历对象*/
var obj={name:"xiaoming",age:20,addr:"tianminglu"};
console.log("js遍历对象")
for(var i in obj){
console.log(i+"--"+obj[i]);
}
console.log("jquery.each遍历对象1");
$.each(obj,function(i,item){
console.log(i+"--"+item);
});
console.log("jquery.each遍历对象2")
$(obj).each(function(i,item){
console.log(i+"--"+item);
});
console.log("jquery.map遍历对象1,注意这里回调函数中第一个参数是元素,第二个是索引");
$.map(obj,function(i,item){
console.log(i+"--"+item);
});
console.log("jquery.map遍历对象2");
$(obj).map(function(i,item){
console.log(i+"--"+item);
});
近期评论