Sql insert语句不能与PDO一起使用,但适用于普通的SQL

时间:2014-04-14 01:17:19

标签: php mysql pdo

我试图用PDO进行插入,并且它不能正常工作。

如果我使用普通的sql工作,就像这样:

$insert = mysql_query("INSERT INTO gallery(img, news_id, date) VALUES('$imgReg', '$postId', '$timestamp')");

但是PDO不起作用,它不会插入我的数据库。

但是这个判断对我来说似乎很好,我有这样:

 $postId = $_POST['postId'];
 $imgReg = $y.'/'.$m.'/'.$img;  
 $timestamp = date('Y-m-d H:i:s');

 $pdo = con();
 $insert = $pdo->prepare("INSERT INTO gallery(img, news_id, date) VALUES(:img, :news_id, :date)");
 $insert->bindValue(':img', $imgReg);
 $insert->bindValue(':news_id',$postId);
 $insert->bindValue(':date',$timestamp);
 $insert->execute();

你觉得这里有什么不对吗?

我的con.php文件:

<?php



function con()
{

$dbHost = 'localhost';
$dbUser = 'root';
$dbPass = '';
$dbName = 'site2';      
try
{
    $pdo = new PDO("mysql:dbname={$dbName};host={$dbHost}", $dbUser, $dbPass);

}

catch(PDOException $e)
{
    echo $e->getMessage();

}

return $pdo;
}

?>

$ postid来自我使用uploadify的I脚本,如下所示:

<script type="text/javascript">
$(document).ready(function() {
  $('#file_upload').uploadify({
    'uploader'  : 'js/uploadify/uploadify.swf',
    'script'    : 'js/uploadify/uploadify.php',
    'cancelImg' : 'js/uploadify/cancel.png',
    'folder'    : '../uploads',
    'multi'     : true,
    'auto'      : false,
    'fileExt'     : '*.jpg;*.gif;*.png',
    'buttonText'  : 'Select images',
    'width'       : 160,
    'height'       : 35,
    'scriptData'  : {'postId':'<?php echo $postid;?>'},
    'onAllComplete' : function(event,data) {
       location.reload(true);
    }
  });
});
</script>

正常的sql正常工作,如下所示:

 define('HOST','localhost');
  define('USER','root');
  define('PASS','');
  define('DBSA','site2');
  $con = mysql_connect(HOST, USER, PASS);
  $database = mysql_select_db(DBSA);


  $reg = mysql_query("INSERT INTO gallery(img, news_id, date) VALUES('$imgReg', '$postId', '$timestamp')");

0 个答案:

没有答案