写入MySQL数据库中文乱码问题只需要加入以下代码
mysqli_query($dbc,'set names 'utf8''); 注意是names 不是name
但如果是从数据库中 读取出到页面出现中文乱码问题,则应该改变浏览器的编码格式,改为UTF-8与数据库中的编码格式相同。
mysqli_query($dbc,'set names 'utf8''); 注意是names 不是name
但如果是从数据库中 读取出到页面出现中文乱码问题,则应该改变浏览器的编码格式,改为UTF-8与数据库中的编码格式相同。
利用phpmailer来群发邮件已测试成功,下面记录一些注意事项。
1、为了能够每次根据收件人名字来写正文称呼,我需要把收件人name写到my_send_mail()的方法体中。
2、在方法体中需要用到
require_once'class.phpmailer.php';由于还要嵌入循环体内,所以必须用require_once而不能用require.否则出现无法加载类错误
3、测试中分别向QQ邮箱,GMAIL和126邮箱发送邮件。在几次测试当中,我发现QQ邮箱的编码支持最好,基本没有乱码的出现,而Gmail中发送人常显示乱码,126中发送人与正文常上出现乱码。
还是乱码问题:
要解决乱码问题,关键是要规范编码的使用,并且知道问题出在哪。譬如页面输出中出现乱码,我在MySQL中用了UTF-8则在取出数据到页面时也得把编码设定为UTF-8. 在搜狗浏览器中右键可以自己设定编码,但在谷歌浏览器中,我未能找到设置的地方。当在邮件中出现乱码,主要表现为发件人为乱码,可以在PHP加入以下代码。
$mail->CharSet = "utf-8"; // 这里指定字符集!
$mail->Encoding = "base64"; //这行也很重要! 它能把乱码打包成文件,然后再根据编码输出