忘了说,我是用adodb,数据库access
我也用了addslashes来保存,但有'号就存不了后面的。

解决方案 »

  1.   

    http://pcbook.51soft.com/doc/adodb/index.htm
    范例 3: 新增
    新增一笔记录到订单资料表,里面包含了日期和字串,为了能被资料库正常存取,字串必需校正,以避免部份标记字元。例如:有单引号的字串,John's。<?
    include('ADOdb.inc.php');       # load code common to ADOdb
    $conn = &ADONewConnection('access');    # create a connection$conn->PConnect('northwind');   # connect to MS-Access, northwind dsn
    $shipto = $conn->qstr("John's Old Shoppe");$sql = "insert into orders (customerID,EmployeeID,OrderDate,ShipName) ";
    $sql .= "values ('ANATR',2,".$conn->DBDate(time()).",$shipto)";if ($conn->Execute($sql) === false) {
            print 'error inserting: '.$conn->ErrorMsg().'<BR>';
    }
    ?>
      

  2.   

    $sql .= "values ('ANATR',2,".$conn->DBDate(time()).",$shipto)";
      

  3.   

    SQL语句里不用再加''了,qstr()已经自动加了.
      

  4.   

    $db->qstr($str,get_magic_quotes_gpc());这样才正确的.直接qstr($str);会有问题.