如何动态地将javascript添加到php页面,其中包含php代码
How to dynamically add javascript to php page with php code in it
SOLVED IT
<?php $startPage = $_COOKIE["currentPage"];?>
<script type="text/javascript">
var startPageVal = <?php echo $startPage; ?>;
<?php echo base64_decode($pajinate_js); ?>
</script>
而$pajinate_js是下面的代码,而不是startPage: startPageVal
我有麻烦弄清楚如何从表单添加JavaScript。基本上我有这样的代码(忽略脚本本身,而不是一行(startPage):
$(function(){
/* initiate the plugin */
$("div.holder").jPages({
containerID : "content",
perPage : 2,
startPage : <?php echo $_COOKIE["currentPage"]; ?>,
startRange : 1,
midRange : 5,
endRange : 1,
}
});
如果我将代码直接放入PHP页面中,我将得到startPage: 3(或我得到的任何值)但如果我在浏览器源中通过Textarea动态执行,我将得到纯文本:
startPage : <?php echo $_COOKIE["currentPage"]; ?>
将导致整个程序无法工作。我使用base64_decode和base64_encode通过数据库传递它,否则mysql插入语句不工作。
希望你明白我的意思。有人知道怎么绕过它吗?我已经测试了这个例子,它的工作,尝试合并php和javascript像这样:
<html>
<form method="post" >
<input type="text" value="10" name="input">
<input type="submit" value='submit'>
</form>
<script type="text/javascript">
var x = <?php echo $_POST['input']; ?> ;
alert(x);
</script>
</html>
这取决于你使用的引号。
<?php
$js = '$(function(){
/* initiate the plugin */
$("div.holder").jPages({
containerID : "content",
perPage : 2,
startPage : '.$_COOKIE["currentPage"].',
startRange : 1,
midRange : 5,
endRange : 1,
}
});';
echo $js;
?>
试试这个:
<?php
$js = '<script>$(function(){
/* initiate the plugin */
$("div.holder").jPages({
containerID : "content",
perPage : 2,
startPage : '.$_COOKIE["currentPage"].',
startRange : 1,
midRange : 5,
endRange : 1,
}
});<script>';
echo $js;
?>
好了,我想我知道问题是什么了-抱歉花了几分钟才明白。你有你的脚本/模板或任何存储在数据库中,需要一个PHP变量的值-只有你不能在你写到数据库之前解析这个变量,因为它是一个cookie值,这是特定于运行脚本的用户。所以你已经写了PHP代码的数据库期望它被评估后你已经运行你的数据库查询?我说的对吗?
这不是它的工作方式-虽然"技术上"可以用这种方式破解它,但这将是非常糟糕的做法,所以…
您真正想做的是动态地构建脚本。例如,您的脚本可以存储为带有标签的字符串,该标签的描述为,稍后将其替换为:
$(function(){
/* initiate the plugin */
$("div.holder").jPages({
containerID : "content",
perPage : 2,
startPage : %%COOKIEVAL%%,
startRange : 1,
midRange : 5,
endRange : 1,
}
});
然后从数据库中检索后,您可以运行如下命令:
$script = val_from_db(); // whatever
echo str_replace('%%COOKIEVAL%%', $_COOKIE["currentPage"], $script);
相关文章:
- 如何通过php页面将数据库值检索到jquery自动完成框中
- 通过php页面中的js强制下载txt
- 如何将字符串值从php页面发送到java脚本页面
- 倒计时计时器应该持续两个php页面
- 使用GoogleMapApi保存标记-重定向到.php页面
- php页面,该页面在清除值后接受输入
- 如何将JavaScript变量的数据传递到另一个php页面
- 从jqueryajax加载php页面卸载当前页面
- 如何摆脱"压缩/块”;PHP页面底部的注释
- 在AJAX调用中获取重定向的php页面名称
- 将文本值从html页面传递到php页面
- 将javascript变量传递到下一个php页面
- 将变量传递到php页面,作为Angular中的状态
- 将php页面URL中的变量传递给JavaScript和另一个php
- 如何使用javascript验证表单中的数据,然后调用php页面
- 将不属于表单的HTML页面中的值传递给php页面
- 将php页面的一个部分渲染为HTML和CSS后生成PDF,并考虑PDF分页符
- 应该如何将密码从纯html/javascript应用程序发送到php页面
- 在htm-php页面中打印Javascript函数
- 从 PHP 表中选择值并将其传递给另一个 PHP 页面