在Facebook上共享PHP GD创建的图像
使用PHPGD图像库,我成功地输出了一个带有url参数(a、b、c)文本的图像 我需要能够将这些图片发送到Facebook共享url,以便将它们发送到社交媒体在Facebook上共享PHP GD创建的图像,php,facebook,image,gd,Php,Facebook,Image,Gd,使用PHPGD图像库,我成功地输出了一个带有url参数(a、b、c)文本的图像 我需要能够将这些图片发送到Facebook共享url,以便将它们发送到社交媒体 https://www.facebook.com/sharer/sharer.php?u=http://example.com/script.php?a=1&b=2&c=3 但是,共享链接似乎不接受我的php参数。当我测试url时,它会拉取图像,但不会发送任何数字,因此不会携带任何文本 有没有办法保存带有参数的完整图像并
https://www.facebook.com/sharer/sharer.php?u=http://example.com/script.php?a=1&b=2&c=3
但是,共享链接似乎不接受我的php参数。当我测试url时,它会拉取图像,但不会发送任何数字,因此不会携带任何文本
有没有办法保存带有参数的完整图像并将其发送到Facebook共享url?我是通过电子邮件中嵌入的链接来实现这一点的,因此它不能使用比基本HTML更复杂的任何东西。您可能需要对url进行编码,这样?、=和&就不会被facebook php脚本读取 有关编码的详细信息,请参阅 ??是%3F,=是%3D,&是%26 因此,您的url应该是:
https://www.facebook.com/sharer/sharer.php?u=http://example.com/script.php%3Fa%3D1%26b%3D2%26c%3D3
注意:我没有测试过这一点,因为我不想发布到facebook:)您可能需要对url进行编码,以使?、=和&不会被facebook php脚本读取 有关编码的详细信息,请参阅 ??是%3F,=是%3D,&是%26 因此,您的url应该是:
https://www.facebook.com/sharer/sharer.php?u=http://example.com/script.php%3Fa%3D1%26b%3D2%26c%3D3
注意:我没有测试过这个问题,因为我不想在facebook上发布:)所以我最终解决了这个问题。在放弃将包含url参数的php图像推送到Facebook后,我尝试将该图像放到电子邮件中。除了Gmail,这在几乎所有客户机上都很有效。我不得不转换url参数来绕过Gmail代理,该代理允许显示图像,而且它现在也恰好可以在Facebook共享器中使用。万岁 我最初的设置方法是将php图像与url参数链接,并使用
$\u GET
将它们放置在图像上:
脚本错误。php
$var1 = $_GET['a'];
$var2 = $_GET['b'];
$var3 = $_GET['c'];
$uri = $_SERVER['REQUEST_URI'];
$path = substr($uri, strpos($uri, "a=")); // start your url parameters here
$delim = 'abc=&'; // enter all characters you use in parameters (a, b, c, =, &)
$tok = strtok($path, $delim);
$tokens = array();
while ($tok !== false) {
array_push($tokens, $tok);
$tok = strtok($delim);
}
$var1 = $tokens[0];
$var2 = $tokens[1];
$var3 = $tokens[2];
正确的方法如下:
script.php
$var1 = $_GET['a'];
$var2 = $_GET['b'];
$var3 = $_GET['c'];
$uri = $_SERVER['REQUEST_URI'];
$path = substr($uri, strpos($uri, "a=")); // start your url parameters here
$delim = 'abc=&'; // enter all characters you use in parameters (a, b, c, =, &)
$tok = strtok($path, $delim);
$tokens = array();
while ($tok !== false) {
array_push($tokens, $tok);
$tok = strtok($delim);
}
$var1 = $tokens[0];
$var2 = $tokens[1];
$var3 = $tokens[2];
这样做的目的是查看url并从中提取指定字符($delim)以放入数组中。然后使用这些字符后面的内容,将它们的值设置为一个标记,并将该标记放置在图像上
下面是我如何设置要在电子邮件中显示的php图像:
<img src="http://example.com/script.php/a=1&b=2&c=3">
所以我最终解决了这个问题。在放弃将包含url参数的php图像推送到Facebook后,我尝试将该图像放到电子邮件中。除了Gmail,这在几乎所有客户机上都很有效。我不得不转换url参数来绕过Gmail代理,该代理允许显示图像,而且它现在也恰好可以在Facebook共享器中使用。万岁 我最初的设置方法是将php图像与url参数链接,并使用
$\u GET
将它们放置在图像上:
脚本错误。php
$var1 = $_GET['a'];
$var2 = $_GET['b'];
$var3 = $_GET['c'];
$uri = $_SERVER['REQUEST_URI'];
$path = substr($uri, strpos($uri, "a=")); // start your url parameters here
$delim = 'abc=&'; // enter all characters you use in parameters (a, b, c, =, &)
$tok = strtok($path, $delim);
$tokens = array();
while ($tok !== false) {
array_push($tokens, $tok);
$tok = strtok($delim);
}
$var1 = $tokens[0];
$var2 = $tokens[1];
$var3 = $tokens[2];
正确的方法如下:
script.php
$var1 = $_GET['a'];
$var2 = $_GET['b'];
$var3 = $_GET['c'];
$uri = $_SERVER['REQUEST_URI'];
$path = substr($uri, strpos($uri, "a=")); // start your url parameters here
$delim = 'abc=&'; // enter all characters you use in parameters (a, b, c, =, &)
$tok = strtok($path, $delim);
$tokens = array();
while ($tok !== false) {
array_push($tokens, $tok);
$tok = strtok($delim);
}
$var1 = $tokens[0];
$var2 = $tokens[1];
$var3 = $tokens[2];
这样做的目的是查看url并从中提取指定字符($delim)以放入数组中。然后使用这些字符后面的内容,将它们的值设置为一个标记,并将该标记放置在图像上
下面是我如何设置要在电子邮件中显示的php图像:
<img src="http://example.com/script.php/a=1&b=2&c=3">
哈哈,没问题。之前当我尝试时,url显示为?a=1,其余部分丢失。编码后,url现在看起来是?a=1&b=2&c=3,这是完整的url。但是,图像仍然缺少文本。尽管拉完整的url,它似乎没有生成图像上的文本。缓存问题?它正在拖动背景图像,因此它必须运行脚本,否则所有内容都将为空。@cul8r成功吗?我也面临同样的问题。@IgorO是的,事实上!我用我解决这个问题的方式更新了这个问题。哈哈,没问题。之前当我尝试时,url显示为?a=1,其余部分丢失。编码后,url现在看起来是?a=1&b=2&c=3,这是完整的url。但是,图像仍然缺少文本。尽管拉完整的url,它似乎没有生成图像上的文本。缓存问题?它正在拖动背景图像,因此它必须运行脚本,否则所有内容都将为空。@cul8r成功吗?我也面临同样的问题。@IgorO是的,事实上!我用我解决这个问题的方法更新了这个问题。