我在表中有两列(MYSQL数据库)
一列包含别名,另一列包含真实姓名
Coln1:The_Spiderman coln2:-Peter,J,Parker
**注意:Coln 1实际上是文件的名称。因此,它不能包含特殊字符。 但是,Coln2可以包含逗号
我有一个csv文件,其中包含一组实际存在于所述表的Col1中的值。它们可以包含空格,下划线。
我计划的是做以下事情:
a)从csv文件中逐个读取每个值 b)使用该值在mysql表上进行查找并获取真实姓名 c)将真实姓名写入相同的csv文件
我有一些PHP的经验,但我无法将所有这些放在一起。
有人可以帮助我吗?
由于 窗扇
**ANSWER:**
感谢@briosheje提供的建议 以下是我提出的建议: -
<?php
$row = 1;
if (($handle = fopen("group.txt", "r")) !== FALSE)
{
while (($data = fgetcsv($handle, 2000, ",")) !== FALSE)
{
$num = count($data);
$row++;
$link = mysqli_connect("localhost","user","pwd","dbname");
for ($c=0; $c < $num; $c++)
{
$query = "SELECT name FROM table where alias = '" . $data[$c] . "'";
$result = $link->query($query) OR die("Error in the consult.." . mysqli_error($link));
while($row = mysqli_fetch_array($result))
{
$fp = fopen('output.txt', 'a');
fwrite($fp, $row["name"].PHP_EOL);
}
}
fclose ($fp);
}
}
fclose ($handle);
答案 0 :(得分:0)
要使用fgetcsv从CSV中检索数据。
它会返回一个包含CSV中数据的数组。
要详细说明数据,请使用SQL查询进行比较(在连接到数据库之后,当然,我假设您知道如何操作)。
如果您不知道如何使用PHP查询数据库,请检查this。
在查询数据库并进行比较后,假设在CSV文件中不会有任何重复,请将fgetcsv返回的数组的值替换为您需要的值,然后使用fputcsv完成作业。 / p>
希望这会给你一个想法!
答案 1 :(得分:0)
如果你试图通过PHP提取mysql记录。然后你必须遵循5个简单的步骤。
5.关闭连接。
步骤1,2和第5步到处都是一样的。第3页和第4页真正改变页面到页面并使用它可以提取值。
示例 - &gt;
include('config.php'); // Your database config
if (isset($_GET['id'])) {
$q = mysql_query("SELECT * FROM $login_db_table WHERE id='" . mysql_real_escape_string($_GET['id']) . "'") or die('Database error.');
$user = mysql_fetch_array($q, MYSQL_ASSOC);
?>
<h1><?= $user['username'] ?></h1>