0

你好这是我的代码:

<?

$DBNAME='astbase.db';
$MYTABLE ='extens';

$wsdl = "wwwwww";
$reply = "wwww";
$idsms = "4";
$exten = 100;

$base= new PDO('sqlite:'.$DBNAME);//, 0666, $err);
$query = "CREATE TABLE IF NOT EXISTS $MYTABLE(id INTEGER PRIMARY KEY,exten VARCHAR(255), wsdl TEXT, reply text, idsms INTEGER)";    
$results = $base->exec($query);
print_r($results);

$query = "INSERT INTO $MYTABLE(id,exten,wsdl,reply,idsms) VALUES(NULL,'$exten','$wsdl','$reply',$idsms)";
$results = $base->exec($query);
print_r($results);

?>

当我在命令行(php5 script.php)中执行脚本时,它工作正常,但是当我用网络浏览器运行它时,只执行第一条语句!!!怎么了 ??

谢谢

4

1 回答 1

1

你应该

  • 检查您的 PHP 错误日志文件
  • sqlite_last_error()在您的第一条语句之后调用该函数(手动

我猜这是一个权限问题,即您的网络服务器无权写入您的 sqlite 数据库文件所在的目录。

它适用于命令行,因为它使用您自己的用户权限(而在浏览器中它使用 Apache 的用户,该用户通常拥有较少的权限)。

于 2012-05-10T08:40:14.063 回答