2015-11-03 18 views
0

在CMD中执行是好的,但在php中mysql_affected_rows()总是返回0;如何使用mysql的函数replace()

$con=mysql_connect('127.0.0.1', 'root', '123456'); 
mysql_select_db('gitsrc',$con); 
$result=mysql_query('update articles set title=replace(title, "abc","xyz")'); 
if($result) { 
    echo "success".mysql_affected_rows(); 
} else { 
    echo "fail".mysql_error(); 
} 

我使用PDO,没关系,但我用它在很多网站上。现在,我不能使用PDO,如何解决这个问题?

$DB = new PDO('mysql:host=127.0.0.1;port=3306;dbname=gitsrc;charset=UTF8;','root','123456', array(PDO::ATTR_PERSISTENT=>true)); 
$DB->query("SET NAMES utf8;"); 
$result = $DB->query('update articles set title=replace(title, "abc","xyz")'); 
if($result){ 
    echo "success"; 
} else { 
    echo "fail"; 
} 
+0

你能证明你的表中的数据? –

+0

谢谢大家,我知道为什么。我的数据有中文。必须使用'mysql_query('set names utf8');' – unofficial

+0

它的工作,如何关闭这个问题? – unofficial

回答

0

使用set names utf8

mysql_query('set names utf8'); 

怎么一回事,因为你的数据库是chinese

+0

感谢@unofficial如果你想添加更多的细节,请编辑我的回答:) –

相关问题