phpmyadmin出现中文乱码??
解决方案:
第一步:在后台插入数据库编码格式语言:
$sqlutf=' set names utf8 ' ;
$connect= mysqli_connect( );
mysqli_query( $connect , $sqlutf );
第二步:是因为插入的每一行使用的编码方式默认为latin1,如图,点击操作,将排序规则修改为utf8_unicode_ci,并勾选(将所有行都修改),就行了;
正常应该显示为:
原理看链接:https://blog.youkuaiyun.com/GX_1_11_real/article/details/80748227
数据库报错集锦:
1,mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in 。。。。
mysqli_fetch_array() 的第一个参数必须是mysqli_query查询的结果,也就是说查询出错,可以利用以下语句查询出错原因:
if (!$result) {
printf("Error: %s\n", mysqli_error($dbc));
exit();
}
本次出错是因为查询的字段定义的长度不够,存储 的数据过长导致查询异常;还要最主要的,前台传送一个数据过来,后台获取:
$all=file_get_contents("php://input");
$alls=json_decode($all);
$account=$alls->account;
$sql="select password from tables2 where account=".$account;
照理说,后台传过来的$account应该是字符串,而正常查询语句是:select password from table2 where account=' 2424758199@qq.com ’ , 这个关键的地方就是如何将$account变量和前面的语句拼接,并且在变量前加单双引号:
后修改:$sql="select password from tables where account=' $account ' "; 因为在php的双引号内变量会被解析,但是单引号不解析,所以相当于解析了变量之后在变量外添加单引号的效果。