-5

我需要将作为电子邮件文本文件接收的数据粘贴到 html 表单中,该表单通过 php 文件将数据发送到 mysql 数据库,该文件将数据过滤到 mysql 表中的相关单元格中。

数据到达并被复制到这样的输入框中:

First name: John
Last name: Smith
telephone: 01234 56789

什么php会从字符串中删除“名字:”并将“约翰”发布到数据库的名字列中,同样使用“姓氏”和“电话”

构建html表单和数据库不是问题;我的 php 虽然还没有跟上速度!

提前致谢。

4

1 回答 1

0

据我了解,您会收到带有数据的纯文本电子邮件。

然后你想解析它。如果你的“标签”是自动生成的并且是一致的,那么你可以很容易地解析它......这样说:

假设您将电子邮件文本加载到变量 $email_content 中。

$lines = explode("\n",$email_content);
$array_of_values = array();
foreach ($lines as $line) {
    if (str_pos(":",$line)!==false) {
        $temp_array = explode(":",$line);
        $array_of_values[trim($temp_array[0])] = trim($temp_array[1]);
    }
}

最后你会得到一个这样的数组:

array(
    'First Name'=> 'John',
    'Last name' => 'Smith',
    'telephone' => '01234 56789'
)

然后,您将能够轻松地通过键访问您喜欢的任何值,然后根据需要将其保存到数据库中。

但是有一些假设 - 你只有 : 在包含标签:值对的行中。此外,行尾字符始终为 /n。但这只是一个指针,而不是现成的解决方案。

于 2012-07-10T16:46:38.327 回答