我是编程新手。我想保存Google图片中的图片。我只能使用免费过滤器。我使用Google API,我有URL,我想将它传递给PHP,但我不知道如何将它从JavaScript传递给PHP。我尝试使用表单和document.write('<a href="prueba4.php?url1=unescapedUrl">save the image</a>');
,但它不起作用。
function MyKeepHandler(result) {
// clone the result html node
var node = result.html.cloneNode(true);
// attach it
var savedResults = document.getElementById("content");
savedResults.appendChild(node);
// extract some info from the result to show to get at the individual attributes.
// see http://code.google.com/apis/ajaxsearch/documentation/reference.html
var title = result.title;
var unformattedtitle = result.titleNoFormatting;
var content = result.content;
var unescapedUrl = result.unescapedUrl;
document.write('<a href="prueba4.php?url1=unescapedUrl">save the image</a>');
// alert("Saving " + unformattedtitle + " " + unescapedUrl + " " + content);
var_dump($x);
}
function OnLoad() {
// Create a search control
var searchControl = new google.search.SearchControl();
// Add in a WebSearch
var webSearch = new google.search.WebSearch();
// Add in a full set of searchers
searchControl.addSearcher(new google.search.ImageSearch());
//var localSearch = new google.search.LocalSearch();
// tell the searcher to draw itself and tell it where to attach
searchControl.draw(document.getElementById("content"));
searchControl.setOnKeepCallback(this, MyKeepHandler);
// execute an inital search
searchControl.execute("tomates");
}
google.setOnLoadCallback(OnLoad);
</script>
</head>
<body style="font-family: Arial;border: 0 none;">
<div id="content">Loading...</div>
</body>
</html>
为了保存图像我正在使用它(如果我使用URL名称,这是有效的):
function saveImage($url,$path) {
$c = curl_init();
curl_setopt($c,CURLOPT_URL,$url);
curl_setopt($c,CURLOPT_HEADER,0);
curl_setopt($c,CURLOPT_RETURNTRANSFER,true);
$s = curl_exec($c);
curl_close($c);
$f = fopen($path, 'wb');
$z = fwrite($f,$s);
if ($z != false) return true;
return false;
}
saveImage($url1,$path);
答案 0 :(得分:0)
我注意到了一件事:
document.write('<a href="prueba4.php?url1=unescapedUrl">save the image</a>');
JavaScript中没有变量插值,因此这将输出确切的文本。将其更改为:
document.write('<a href="prueba4.php?url1=' + unescapedUrl + '">save the image</a>');