博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php脚本输出js代码不执行的解决办法和原理。
阅读量:7241 次
发布时间:2019-06-29

本文共 528 字,大约阅读时间需要 1 分钟。

<?php

echo "<script>alert('我弹出来了')</script>";
?>

很简单你一句话就可以在PHP里面输出JS脚本让浏览器执行。

今天碰到一个很诡异的问题,就是这段代码在Chrom和firefox下至少单纯的输出字符串,没有执行,没有弹出alert。

原理:

MIME chrome对text/plain 不做解析的。php利用header可以输出html ,浏览器用最后一次输出header作为content-type

header('Content-Type:text/html;charset=utf-8');

在做图片输出,我用到了一个网上的类ThumbHandler.php,这个类的_output方法里有个输出header改变了content-type;

结果导致alert不弹出,

 

text/plain html是不执行的。

只需要在alert前重新header即可。

if(!uploadFile()){    echo "";    }header('Content-Type:text/html;charset=utf-8');echo ("");//上传图片function uploadFile(){

 

转载地址:http://ofybm.baihongyu.com/

你可能感兴趣的文章
第十三章 接口
查看>>
进度条9
查看>>
robotframework自动化测试之测试数据
查看>>
[NOI2008]志愿者招募
查看>>
同一个闭区间上有界变差函数的和与积都是有界变差函数
查看>>
Elementary Methods in Number Theory Exercise 1.5.10
查看>>
「陶哲軒實分析」 習題 3.5.1
查看>>
大聊Python----协程
查看>>
nginx.pid-nginx: [error] open() "/var/run/nginx.pid" failed (2: No such file or direc
查看>>
在CentOS上配置SAMBA共享目录(转载)
查看>>
Linux之samba搭建
查看>>
第十三周学习笔记
查看>>
ZOJ 2770 Burn the Linked Camp 差分约束 (转)
查看>>
Python随笔1
查看>>
Ubuntu16.04搭建Postfix作为SMTP服务器
查看>>
Linux——网络端口的状态netstat、ifconfig
查看>>
android 单位总结
查看>>
canvas元素简易教程(5)(大部分转自火狐,自己只写了简单的代码分析)
查看>>
ArcCore重构-生成%_offset.h文件
查看>>
关于kafka的新的group无法订阅到topic中历史消息的问题
查看>>