通过 url 将 javascript var 传递给 PHP

Posted

技术标签:

【中文标题】通过 url 将 javascript var 传递给 PHP【英文标题】:Passing javascript var to PHP through url 【发布时间】:2013-05-15 19:27:02 【问题描述】:

我有两个 javascript 变量 var 1 和 var 2 我需要通过 GET 方法传递给 php

$('#output_images').html('<img src="MergeIcons.php?icon1=var1&econdIcon=var2 />');

在我的 .php 文件中,我使用 GD PHP 合并两个图标并使用 imagepng 将图像发回。

$firstIcon = $_GET['icon1'];   
$secondIcon = $_GET['icon2'];  

// Process images

header('Content-Type: image/png');
imagepng($dest);

当我通过直接图像路径并且不使用 var1 和 var 2 时,它可以正常工作,但使用 var1 和 var 2 时它不起作用。可能是什么问题?

【问题讨论】:

查看萤火虫中的src 值很可能仍然是var1var2,而不是您想要的值。 你似乎没有对变量做任何事情,究竟是什么地方失败了? 能有$firstIcon$secondIcon的内容的具体例子吗?注意第一个代码中的拼写错误。如有必要,还要考虑urldecode()。 查看错误日志,我想它会注意到:undefined index 'icon2' as you use econdIcon instead in src. 我认为您的img src 中有错字。你有icon1=var1&amp;econdIcon=var2。为什么不是secondIcon 【参考方案1】:

您只是没有正确连接这些值。如果你不想要文字 var1var2 或许试试这个:

$('#output_images').html('<img src="MergeIcons.php?icon1='+var1+'&econdIcon='+var2+'" />');

您还需要确保您的参数名称在 javascript 和 PHP 中匹配(它们现在不适用于 icon2

【讨论】:

Var1和Var2的值其实就是图片路径。例如,Var1 = Images/abc.png 和 Var2 = Images/xyz.png。如果我直接传递图像路径它可以工作,但当我传递变量时却不行。看起来,var 值没有被传递,但变量名被传递了。【参考方案2】:

目前您正在将 var1 和 var2 作为字符串发送到 PHP。它们需要作为变量发送...

$('#output_images').html('<img src="MergeIcons.php?icon1='+var1+'&econdIcon='+var2+'" />');

【讨论】:

这不起作用,它不会将 div "output_images" 附加到 img 标签。没有添加任何内容。【参考方案3】:

假设您复制并粘贴它,我确实在 url 中看到一个错字,&econdIcon=var2,可能需要是 &icon2=var2

Mike Brant 也是对的,它们需要连接起来。

【讨论】:

以上是关于通过 url 将 javascript var 传递给 PHP的主要内容,如果未能解决你的问题,请参考以下文章

通过javascript将参数传递给动作不会传递整数值

MVC - 将整个模型作为参数传递给 JavaScript 中的 Url.Action

使用 Javascript 将传入的 URL 参数传递给 iframe src

通过url在两个页面之间传值

通过 url 将参数传递给 sql server 报告服务

如何用JavaScript获得后台传过来的参数