簡體   English   中英

如何在Safari擴展程序中運行帶有cURL代碼的PHP腳本?

[英]How can I run a PHP script with cURL code in a Safari extension?

我正在嘗試在Safari擴展中運行PHP機器人功能。

這是我試圖組合在一起的HTML代碼,但是它是一堆PHP,cURL和HTML,我真的不知道自己在做什么。

在從http://www.barattalo.it/2010/08/09/send-push-notification-to-iphone-with-php-and-pushme-to/獲得此代碼之前,我從未嘗試使用cURL ,而當我嘗試啟動$ ch時,該擴展似乎停止工作。 這顯然破壞了代碼的全部目的,因為我需要它來運行cURL命令。

有任何技巧可以使它正常工作嗎?

 function performCommand(event)
 {    if (event.command === "sendLink") { 
pushMeTo($u,$t,$s);      }


 function pushMeTo($widgeturl, $text, $signature)
 { $agent = "Mozilla/5.0 (windows; U; Windows NT 6.0; en-US; rv:1.9.0.12) Gecko/2009070611 Firefox/3.0.12";
  $ch = curl_init();
   curl_setopt($ch, CURLOPT_URL, $widgeturl);
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
   curl_setopt($ch, CURLOPT_USERAGENT, $agent);
  $page = curl_exec($ch);
   preg_match("/form action=\"(.*?)\"/", $page, $form_action);
   preg_match("/textarea name=\"(.*?)\"/", $page, $message_field);
   preg_match("/input type=\"text\" name=\"(.*?)\"/", $page, $signature_field);

  $ch = curl_init();

  $strpost = $message_field[1].'=' . urlencode($text) . '&'.$signature_field[1].'=' . urlencode($signature);
   curl_setopt($ch, CURLOPT_POSTFIELDS, $strpost );
   curl_setopt($ch, CURLOPT_URL, $form_action[1]);
   curl_setopt($ch, CURLOPT_POST, 1);
   curl_setopt($ch, CURLOPT_HEADER, 0);
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
   curl_setopt($ch, CURLOPT_USERAGENT, $agent);    
  $page = curl_exec($ch);
 }

您將無法按照自己的方式做自己想做的事。 在他的評論中,zneak是絕對正確的。 您的擴展程序在客戶端運行,而PHP在服務器端運行。 您的Javascript不知道如何編寫PHP代碼。

或者,您的擴展程序可以將Ajax請求觸發到可以運行PHP代碼的URL。 我在我的一個擴展中執行此操作,我必須撥打服務電話。 效果很好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM