2011-07-07 112 views
-3

在我的PHP页面PHP的exec()命令问题

我有这个执行函数将PDF转换成swf

EXEC('“C:\\程序 文件\\ \\ SWFTools pdf2swf。 “Files \\ xampp \\ htdocs \\ system \\ logs \\ reports \\ temp \\ sample.pdf” -o“C:\\ Program Files \\ xampp \\ htdocs \\ system \\ logs \\ reports \\ temp \\ sample.swf“ -f -T 9 -t -s storeallcharacters');

本地主机它的工作原理,但每当我把这个函数在其他服务器上,让我们说http://192.168.0.2:8888/system/它不转换的PDF格式在所有...

请帮我度过这次难关......

谢谢

+0

你的服务器上有相同的目录和完整路径吗? –

+2

错误信息在哪里?不'exec'返回错误?你为什么没看php的错误日志? -1不好解释。 –

+0

在服务器上,脚本是这样的 exec('“C:\\ Program Files \\ SWFTools \\ pdf2swf.exe”“C:\\ Program Files \\ Apache Software Foundation \\ Apache2.2 \\ htdocs \\ system \\ logs \\ reports \\ temp \\ sample.pdf“-o”C:\\ Program Files \\ Apache Software Foundation \\ Apache2.2 \\ htdocs \\ system \\ logs \\ reports \ \ temp \\ sample.swf“-f -T 9 -t -s storeallcharacters'); – Jhay

回答

0

好的我已经解决了我的问题。让别人知道我做了什么;

这里是我的代码

// First, I create a new .bat file using fopen 

$ourFileName = "C:\\FILE\\PATH\\TO\\sample.bat"; 
$ourFileHandle = fopen($ourFileName, 'w') or die("can't open file"); 

// Then write the content in it with your pdf2swf.exe syntax to convert from PDF to SWF 

fwrite($ourFileHandle, '"C:\\Program Files\\SWFTools\\pdf2swf.exe" "C:\\FILE\\PATH\\TO\\sample.pdf" -o "C:\\FILE\\PATH\\TO\\sample.swf" -f -T 9 -t -s storeallcharacters'); 

// Close the handle 
fclose($ourFileHandle); 

// After all above executed successfully, we now run the newly created .bat file using PHP exec() function. 

exec('"C:\\FILE\\PATH\\TO\\sample.bat"'); 

我不知道是否有任何其他的方式来做到这一点,但这个使用Windows Server 2003对我的作品

与Apache 2和PHP 5.2

0

PHP是服务器端。 exec()只适用于服务器上的命令。当使用exec()时,想象身体上在你的服务器上并输入这些命令。我假设你的问题是你的服务器上没有程序C:\\Program Files\\SWFTools\\pdf2swf.exe,并且文件也没有。

+0

请看看这个图片 http://imageshack.us/photo/my-images/202/execproblem.jpg/ 我已经通过命令提示符执行命令,这是一个成功...它将pdf转换成我的服务器上的swf ... – Jhay

+0

现在@Oltarus是什么? – Jhay

+0

对不起,我不知道。 – SteeveDroz