2015-09-14 62 views
-2

我有一個從兩個select>框輸入輸入的php頁面。 該文件是process.php。這是代碼:如何從PHP頁面輸入python

<?php 

       $option = $_POST['org1']; 
       echo $option; 


       $option1 = $_POST['org2']; 
       echo $option1; 
       exec('C:\Python27\parh\common.py $option $option1', $output); 
      echo $output; 
       ?> 

現在我不得不採取的在Python $option$option1輸入是這樣

   common.py 


      <code> 
       import requests 
       import sys 
       sys.argv[1] 
       sys.argv[2] 

       d = {} 
       with open("metabolicpathways.txt") as f: 
       for line in f: 
        (key, val) = line.split('\t') 
        d[(key)] = val 



       def intersect(a, b): 
       return list(set(a) & set(b)) 

       pathways = requests.get('http://rest.kegg.jp/list/pathway/'+sys.argv[1]) 
       pathways2 = requests.get('http://rest.kegg.jp/list/pathway/'+sys.argv[2]) 
       hsa=[] 
       bar=[] 
for line in pathways.content.split('\n'): 
    #print line 
    pathwayid = line.split('\t')[0].replace('path:', '') 
    #print 'HUMAN-->',pathwayid[3:] 
    hsa.append(pathwayid[3:]) 

print "\n\n\n\n"  

for line2 in pathways2.content.split('\n'): 
    pathwayid2 = line2.split('\t')[0].replace('path:', '') 
    #print 'BACILLUS-->',pathwayid2[3:] 
    bar.append(pathwayid2[3:]) 

hsa = filter(None, hsa) 
bar = filter(None, bar) 

common=intersect(hsa,bar) 
for j in common: 
    if j in d.keys(): 
     print "Common Pathway -->",j," - ",d[j],"\n" 



    </code> 

但是當我WAMP服務器上運行。我沒有得到任何output.plz幫助我。 我已經嘗試了很多,但我無法弄清楚我犯的錯誤。

+0

你是什麼意思_you沒有得到任何output_是什麼意思?有沒有錯誤?請詳細說明。 –

+0

我沒有得到輸出的意思是「我沒有得到python腳本所需的輸出: –

+0

print」Common Pathway - >「,j,」 - 「,d [j],」\ n「。輸出我想要。 –

回答

0

也許你需要你的完整路徑蟒蛇因爲WAMP服務器不知道它:

$python = 'C:\\Python27\\python.exe'; // depend on your system so check it and replace the path if need to 
exec($python.' C:\Python27\parh\common.py $option $option1', $output); 
+0

okk.thanx ..我會試試.. –

+0

沒有@ron。它仍然沒有輸出。 –

+0

我想在php頁面做什麼執行一個python程序。python程序返回一個數組。我想問一個php頁面如何從python輸入一個數組。輸出中只有「數組」的Boz即將到來? –