以下代码用于浏览csv文件。 从csv中获取数据并存储在MySQL数据库中。
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
</head>
<body>
<form name="import" method="post" enctype="multipart/form-data">
કેમ છે: <input type="file" name="file" /><br />
<input type="submit" name="submit" value="Submit" />
</form>
<?php
include ("connection.php");
if(isset($_POST["submit"]))
{
$file = $_FILES['file']['name'];
$handle = fopen($file, "r");
$c = 0;
while(($filesop = fgetcsv($handle, 1000, ",")) !== false)
{
$name = $filesop[0];
$marks = $filesop[1];
mysql_query("set name utf8");
$query = "INSERT INTO temp (name, marks) VALUES ('".$name."','".$marks."')";
echo $query;
$sql = mysql_query($query);
}
}
?>
</div>
</body>
</html>
以下代码用于连接数据库。
<?php
$hostname = "localhost";
$username = "root";
$password = "";
$database = "test";
$conn = mysql_connect("$hostname","$username","$password") or die(mysql_error());
mysql_select_db("$database", $conn) or die(mysql_error());
?>
当我运行代码时,其存储的数据如“????????”。
我的CSV文件如下
关注phpmyadmin版本信息
以下是我的表结构
答案 0 :(得分:1)
如果你在数据库中存储 ???????? ,那么,
如果简单echo "rvm install 2.2.3" | /bin/bash -l
无法正常工作,您需要先检查Router.run(routes, Router.HistoryLocation
,将其更改为database collation
或utf8_general_ci
。
其次,如果utf8mb4_general_ci
没问题,那么字符串也可能已经采用utf_general_ci
格式,并且您再次强行转换它。
使用以下函数将字符串转换为collation
。
utf8
然后在你的代码中
utf8
并查看此处并设置db function convToUtf8($str){
if( mb_detect_encoding($str,"UTF-8, ISO-8859-1, GBK")!="UTF-8" )
return iconv("gbk","utf-8",$str);
else
return $str;
}