IIS环境下PHP版本过低无法Sql查询的解决
需求:帝国后台添加个后台框,输入地址,原页面重写成所指链接页面
重点:当输入框输入地址,提交到后台后,打开原链接,该页面会读取php文件GetUrlPage.php
<?php
header("Content-Type: text/html;charset=utf-8");
$str='';
$result['status']=1;
$id = $_POST["id"];
$con=mysqli_connect("localhost","root","root","ce");
if(mysqli_connect_errno($con)){
echo "连接 MySQL 失败:".mysqli_connect_error();
}
$sql="SELECT change_url FROM phome_ecms_download where id=".$id;
$row=mysqli_query($con,$sql);
if($row['change_url']){
$str=getHttps($row['change_url']);
}
if($str){
$result['status']=2;
$result['info']=$str;
}
//获取外链页面
function getHttps($url){
//初始化
$ch = curl_init();
//设置选项,包括URL
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); // https请求 不验证证书和hosts
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); $output = curl_exec($ch); //执行并获取HTML文档内容
$str = $output;//转换为源代码形式
//释放curl句柄
curl_close($ch);
return $str ;
} echo json_encode($result);
?>
根据排错,发现 $sql 无法输出相应的值,换做低版本写法:
<?php
header("Content-Type: text/html;charset=utf-8");
$str='';
$result['status']=1;
$id = $_POST["id"];
$conn=@mysql_connect("localhost","root","root","ce") or die('服务器连接失败'.mysql_error()); @mysql_select_db('phome') or die('数据库连接错误'.mysql_error()); mysql_query("set names 'utf8'"); $sql ="SELECT change_url FROM phome_ecms_download where id=".$id; $query=mysql_query($sql); $row=mysql_fetch_array($query,MYSQL_ASSOC); if($row['change_url']){ $str=getHttps($row['change_url']); } if($str){ $result['status']=2; $result['info']=$str; } //获取外链页面 function getHttps($url){ //初始化 $ch = curl_init(); //设置选项,包括URL curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); // https请求 不验证证书和hosts curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); $output = curl_exec($ch); //执行并获取HTML文档内容 $str = $output;//转换为源代码形式 //释放curl句柄 curl_close($ch); return $str ; } echo json_encode($result); ?>
经测试OK!!!
结论:PHP版本低于程序语句标准,Sql语句不起作用!
IIS环境下PHP版本过低无法Sql查询的解决的更多相关文章
- IIS环境下如何批量添加、修改、删除绑定的域名
IIS环境下如何批量添加和修改所绑定域名 1.关闭IISADMIN服务和W3SVC服务,可以从服务里面关闭,也可以直接执行命令:net stop iisadmin /y: 2.打开“C:\WINDOW ...
- 有了SSL证书,如何在IIS环境下部署https?【转载】
昨天各位小伙伴都很开心的领取了自己的SSL证书,但是大部分小伙伴却不知道如何部署,也许是因为第一次接触SSL这种高端的东西吧,不过个人觉得就是懒懒懒...本来小编也挺懒的,但是答应了各位小伙伴的,那么 ...
- 有了SSL证书,如何在IIS环境下部署https?
昨天各位小伙伴都很开心的领取了自己的SSL证书,但是大部分小伙伴却不知道如何部署,也许是因为第一次接触SSL这种高端的东西吧,不过个人觉得就是懒懒懒...本来小编也挺懒的,但是答应了各位小伙伴的,那么 ...
- 伪静态的实现方法:IIS环境下配置
URL 静态化可以提高搜索引擎抓取,开启本功能需要对 Web 服务器增加相应的 Rewrite 规则,且会轻微增加服务器负担.本教程讲解如何在 IIS 环境下配置各个产品的 Rewrite 规则. 下 ...
- SpringCloud+Feign环境下文件上传与form-data同时存在的解决办法(2)
书接上文. 上文中描述了如何在 SpringCloud+Feign环境下上传文件与form-data同时存在的解决办法,实践证明基本可行,但却会引入其他问题. 主要导致的后果是: 1. 无法与普通Fe ...
- IIS环境下部署https【转载】
1.首先我们要取走我们的证书,保存在我们本地的电脑里,然后复制到服务器即可. 2.取走后接下来干嘛?当然是打开文件看看里面有些什么啊.我们找到IIS那个压缩包并解压. 3.解析得到pfx文件,也就是我 ...
- 【Oracle】在WIN NT 64位环境下安装win64_11gR2_database。并用PL/SQL连接
因为现在大多数服务器环境均为64位环境,而且有一部分使用的windows server的环境,在此做了一番小研究,如何在64位环境下安装oracle11g_64bit服务端 (1)首先www.orac ...
- windows环境下使用MySQL导入数据乱码报错的解决办法
Linux及Mac系统下使用source xxx.sql 可直接导入测试数据(注意必须先切换到当前xxx.sql的目录下), 但在Windows环境下导入会出现乱码报错的情况, 主要是因为编码的问题, ...
- IIS环境下部署项目
1.环境部署 1.1安装IIS7 进入控制面板,选择"程序和功能",进入如下页面后,点击"Turn Windows features on or off". 找 ...
随机推荐
- PHP入门培训教程PHP程序员要掌握哪些技术
总有那么一群人,学个半吊子就急着找工作,面试题做不出来,吹牛都吹不来所以你只能低工资.PHP程序员要掌握哪些技术?那么兄弟连PHP培训 就来小结一下. 面试前请参考:(前三阶段完成80%在北京月薪5k ...
- 有关于TreeSet的自我理解
TreeSet是依靠TreeMap来实现的. TreeSet是一个有序集合,TreeSet中的元素将按照升序排列,缺省是按照自然排序进行排列,意味着TreeSet中的元素要实现Comparable接口 ...
- 修改select的默认样式
在我们用select的时候,通常因为他的默认样式比较丑而用自己样式,那首先要去掉他的默认样式 去掉select的边框和点击时的蓝色边框 select{border: none;outline: non ...
- 手动写Makefile编译Android NDK的so
之所以摒弃NDK,是因为NDK编译出来的so太大,而且导出表总有一些没用的符号.而且手动编译的话,可以得到编译过程中间的.i和.s文件,可以删除一些没用的汇编代码.现在代码列出来:我的NDK C的代码 ...
- C++ 对象间通信框架 V2.0 ××××××× 之(二)
公共头文件:ss_type_def.h ================================================================================ ...
- CCPC E Problem Buyer
题目描述 有一些区间,还有一些点. 问最小的k使得选出任意k个区间,每个点都可以匹配上区间,一个区间只能匹配一次. 题解 考虑对于每一个点,我们有\(x\)个区间包含它,那么答案的一个下界是\(n-x ...
- AGC030F - Permutation and Minimum
https://atcoder.jp/contests/agc030/tasks/agc030_f 题解 我们先把这个排列从\(1 \sim 2n\)表达出来,然后题面中的每一对数我们可以用一条线把他 ...
- 170816-关于Java基础的习题
1. switch 括号里的可以是 int .char. byte.short.String,还有枚举类型,应用举例 不可以是long.double 2. 调用ma()方法之后,ma()方法将错误类型 ...
- 后端PHP框架laravel学习踩的各种坑
安装完laravel的ventor目录后出现“Whoops, looks like something went wrong.”这样的错误信息 打开config/app.php,打开debug为tru ...
- Vue音乐播放器(三):项目目录介绍,以及图标字体、公共样式等资源准备
我们所有的开发都是基于修改src下面的目录 里面的文件去做开发即可 stylus的使用是需要下载stylus-loader的包的 渲染效果 配置修改eslintrc.js 配置了webpack.bas ...