我目前正在寻找一些用于移动设备PHP检测的代码,这可能非常简单.
现在我只有一个问题 - 我希望能够在我的MVC框架中为平板电脑,手机和网页制作独特的视图文件.所以我需要将平板电脑与其他移动设备分开.
目前这是我正在使用的代码:
public function isMobile()
{
if(preg_match('/(alcatel|amoi|android|avantgo|blackberry|benq|cell|cricket|docomo|elaine|htc|iemobile|iphone|ipad|ipaq|ipod|j2me|java|midp|mini|mmp|mobi|motorola|nec-|nokia|palm|panasonic|philips|phone|sagem|sharp|sie-|smartphone|sony|symbian|t-mobile|telus|up\.browser|up\.link|vodafone|wap|webos|wireless|xda|xoom|zte)/i', $_SERVER['HTTP_USER_AGENT']))
return true;
else
return false;
}
Run Code Online (Sandbox Code Playgroud)
但这还不够 - 唯一的检查是设备是移动设备 - 如果不是它是标准告诉框架,我们在计算机上.最后一部分还可以 - 但是我想在实际的移动设备中拆分移动设备 - 以及应该是平板电脑的分组.
我希望,我已经明确表达了我的愿望,并且我希望,你有一些好的方法可以实现这一目标.
提前致谢.
我目前通过AJAX使用以下代码发布我的表单:
$(document).ready(function(){
$("form#createForm").submit(function() { // loginForm is submitted
$("form#createForm input#createForm_submit").attr('disabled','disabled');
tinyMCE.triggerSave();
$.ajax({
type: "POST",
dataType: "json",
url: "perform", // URL of the Perl script
data: $("#createForm").serialize(),
// script call was successful
// data contains the JSON values returned by the Perl script
success: function(data){
$('div.form-group').each(function(){
$(this).removeClass('has-error');
});
if (data.error) { // script returned error
var myList = $('ul.msg-list').empty();
$.each(data.msg, function(key,item) {
$("div."+key).addClass('has-error');
$('<li>').text(item.errtxt).appendTo(myList);
});
$('div#create_createresult').html('some error').html(myList);
$('div#create_createresult').addClass("text-danger");
$("form#createForm input#createForm_submit").removeAttr('disabled');
} // if
else
{ // login was successful
//$('form#login_loginform').hide();
$('div#create_createresult').text(data.msg); …
Run Code Online (Sandbox Code Playgroud) 一个简短的答案 - 通过ajax向另一个页面发送电子邮件+密码是否有任何安全问题?:)
我的想法是,信息可能会在发送中被抓取,这可能是一个缺陷,相比之下,只需使用带有"链接"到登录操作页面的表单操作"传统方式".
提前致谢..
我目前正在尝试检查逗号分隔字符串中的数字是否在数字间隔内。我想做的是检查区域代码(来自逗号分隔的字符串)是否在区域的间隔内。
面积间隔 | 姓名 | 地点数量 |
---|---|---|
1000-1499 | 1区 | ? |
1500-1799 | 2区 | ? |
1800-1999 | 3区 | ? |
姓名 | 区域列表 |
---|---|
地点A | 1200, 1400 |
地点B | 1020, 1720 |
地点C | 1700, 1920 |
地点D | 1940年、1950年、1730年 |
我在这里想要的结果是区域间隔内“区域列表”中唯一位置的数量。因此,位置 D 在 1800-1999“区域”中应该只计数一次,而位置 A 在 1000-1499 位置中也是如此。但位置 B 在 1000-1499 中应算作 1,在 1500-1799 中应算作 1(因为每个区间的数字位于“区域列表”中以逗号分隔的字符串中):
面积间隔 | 姓名 | 地点数量 |
---|---|---|
1000-1499 | 1区 | 2 |
1500-1799 | 2区 | 3 |
1800-1999 | 3区 | 2 |
这怎么可能?
我尝试过使用 COUNTIFS,但它似乎不起作用。
我目前正在尝试使用Google Analytics等功能,并使用Javascript制作数据传输/跟踪脚本.
我的方法是,我想在Google Analytics跟踪脚本等网站上制作一个简短的脚本/代码段 - 这部分非常简单.
问题是,使用Google分析,他们会在代码段(网站上的代码)中创建一个ga变量,以及设置变量,如下所示:
ga('create', 'TRACK-ID');
ga('send', 'something', 'something);
Run Code Online (Sandbox Code Playgroud)
插入HTML网页的JavaScript代码段(就像Google Analytics一样):
(function(i, s, o, g, r, a, m){
i['ChurnimizerTrackObj'] = r;
i[r] = i[r] || function(){
(i[r].q = i[r].q || []).push(arguments);
},
i[r].l = 1 * new Date();
o = o || "script";
a = s.createElement(o),
m = s.getElementsByTagName(o)[0];
a.async = 1;
a.src = g;
m.parentNode.insertBefore(a, m)
})(window, document, 'script', 'cm.js', 'ga');
ga('send', 'test');
ga('create', 'TR-XXXXXX');
Run Code Online (Sandbox Code Playgroud)
好吧,我可以制作ga变量并在我的"本地"文件中插入警报事件(JS文件,应该执行所有逻辑),但我无法理解为什么我的函数不能正常工作以上?我的本地文件是:
(
function(){
alert("something");
(
return (function(a, b, c){
alert("test");
switch(a){ …
Run Code Online (Sandbox Code Playgroud)