gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-11-29 19:41:09 25 4
gpt4 key购买 nike

我尝试将一些数据插入到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/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com