gpt4 book ai didi

php - 使用 php 将古吉拉特语数据从 csv 存储到 MySQL 数据库

转载 作者:行者123 更新时间:2023-11-28 23:46:49 25 4
gpt4 key购买 nike

以下代码用于浏览 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 文件如下所示

enter image description here

以下phpmyadmin版本信息

enter image description here

下面是我的表结构

enter image description here

最佳答案

如果您要将 ???????? 存储在数据库中,那么,

你需要先检查database collat​​ion,如果简单的utf_general_ci 没有,则将其更改为utf8_general_ciutf8mb4_general_ci '工作。

其次,如果 collat​​ion 没问题,那么也有可能字符串已经是 utf8 格式,而您正在再次强制转换它。

使用以下函数将字符串转换为utf8

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;
}

然后在你的代码中

while(($filesop = fgetcsv($handle, 1000, ",")) !== false)
{
$name = convToUtf8($filesop[0]);
$marks = convToUtf8($filesop[1]);
//mysql_query("set name utf8"); No need to do this now
$query = "INSERT INTO temp (name, marks) VALUES ('$name','$marks')";
echo $query;
$sql = mysql_query($query);
}

并查看此处并设置 db collat​​ion enter image description here

关于php - 使用 php 将古吉拉特语数据从 csv 存储到 MySQL 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33455835/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com