2016-06-10 54 views
0

所以,我試圖運行JavaScript和一些HTML沒有用戶能夠看到任何代碼和傳遞變量的.php腳本。 我都嘗試捲曲和命令行:從頁面運行php腳本隱含變量

//curl_setopt($req, CURLOPT_URL,"http://projectvintous.com/Ginav363534.php?activate=10297&to=$Itemname&Shirt=$filename&totype=shop"); 
//curl_exec($req); 

$command = "../../Ginav363534.php 10297 $Itemname $filename shirt shop"; 
exec("$ php -f $command"); 

但我無法得到任何工作。沒有得到任何錯誤或任何東西,它只是沒有運行腳本,因爲沒有任何mysqli或文件管理的事情發生。我試圖讓它呈現一個webgl模型,使用用戶作爲紋理上傳的圖像保存爲圖像,然後將其上傳到服務器並將其保存在文件夾和mysqli表中。

這是我怎樣了對方的變量:

$varz = var_dump($argv); 

$activate = $varz[1]; 
$itemname = $varz[2]; 
$filename = $varz[3]; 
$filetype = $varz[4]; 
$type = $varz[5]; 

我也試過

parse_str(implode('&', array_slice($argv, 1)), $_GET); 

之前,沒有運氣也是如此。 有沒有另一種方法來做到這一點,我錯過了什麼?它在我直接在頁面上運行url時起作用,所以我知道它可以工作。

+0

您不應該在exec命令的開頭需要美元符號。 – aynber

回答

0

你正在嘗試捲曲頁面並在頁面上執行Javascript?我不認爲curl不喜歡在頁面上執行任何JS,它只是獲取原始文件內容。我認爲你需要做一些事情,比如使用Node.js和PhantomJS在無頭瀏覽器中打開頁面,這將在頁面上執行JS。

+0

那些也會運行php代碼? –

+0

是的,PhantomJS實際瀏覽頁面,解析CSS,JavaScript,無論如何。我用它來製作Google地圖的圖像,因此它會完全加載頁面,包括所有服務器和客戶端腳本。 –