PHP Exec 不工作,但命令本身工作正常

标签 php mysql sybase

我尝试将一些数据插入到2个单独的数据库平台,第一个是mySql,另一个是SQLAnywhere 11。对于mysql,我使用php mysql_query方法插入数据库,对于SQLAnywhere 11 我正在使用 dbisql 命令和 php exec() 函数。该命令本身在 cmd.exe 中正常工作,但是当我用 php 尝试它时,它不起作用。

这是试用代码:

   <?php 

    $cid = rand(0, 100);

    $first_name = "Test";

    $last_name = "Test 2";



    $connect = mysql_connect("localhost", "root", "");

    if ($connect) {

        mysql_select_db("db_person");

        $query = mysql_query("INSERT INTO table_person (cid, first_name, last_name) VALUES ($cid, '$first_name', '$last_name')") or die(mysql_error());

        $query2 = "INSERT INTO table_person (cid, first_name, last_name) VALUES ($cid, '$first_name', '$last_name')";

        $cmd = 'C:/"Program Files"/"SQL Anywhere 11"/Bin32/dbisql.exe -d1 '.strtolower($query2).' -c "UID=dba;PWD=axia1234;DSN=Payroll11"';

        $output = NULL;



        $exec = exec($cmd, $output);

        var_dump($output);

    } else {

        echo "Fail";

    }

?>

尝试运行此脚本几次,它总是有效。

示例:

C:/"Program Files"/"SQL Anywhere 11"/Bin32/dbisql.exe -d1 insert into table_person (cid, first_name, last_name) values (70, 'test', 'test 2') -c "UID=dba;PWD=axia1234;DSN=Payroll11"

如有任何帮助,我们将不胜感激。 提前致谢。

最佳答案

“它不起作用”是什么意思? 它是否执行空记录或什么都不执行?

根据exec quickref

您可以传入指针来获取命令的输出和状态。

 $exec = exec($cmd, $output, $pointer);
 if(!pointer){
   echo "success exec\n"; 
 }
 else{
 echo "failed exec \n";     
 } 

关于PHP Exec 不工作,但命令本身工作正常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41339287/

相关文章:

php - 我怎样才能访问这样的 php 数组

php - "insert into $schoolname (' cat ',' ...) $_POST "if statement "没有将值传递到 $schoolname 表中

sql - 使用 SQL 插入一堆行的最快方法是什么

通过 PEAR 在 OSX 上安装的 PhpDocumentor 无法正常工作 - 缺少文件?

php - 错误 "Unable to use the video in an ad creative. Video id XXX,XXX,XXX,XXX,XXX might not be id of a video, or you might not have permission to see it"

java 到 MYSQL 日期时间格式

mysql - 使用 DetachedCriteria Hibernate 多个子查询

java - 从数据库生成实体类的 Eclipse 不拉关联

postgresql - Postgres 表可以通过列顺序进行优化吗?

javascript - 使用php将结果html文件(包含js代码)导入到mysql