从帖子数据创建php变量

时间:2016-07-28 21:46:30

标签: php

我将ajax数据传递给我的php电子邮件处理文件 - contact.php - 使用这个简单的帖子功能:

$.post('contact.php', post_data, function(response) {
        var rout = response.text;
        // do something w/ response

post_data是一个简单的对象。数据的格式为键/值对,如下所示:{Name: 'me', Email: 'me@site.com'}

关键名称不会提前知道,所以我需要找到一种方法来遍历post_data&在php中创建变量,最好是同名,即名称$name,电子邮件$email等。

我还需要一种方法来添加这些变量&他们对$message_body的价值如下:

<br />Name: me <br />
Email: me@site.com

1 个答案:

答案 0 :(得分:2)

显然,您的解决方案是使用键值迭代$_POST数组,其中key将是表单上输入的名称value - 此输入的

$message_body = '';
foreach ($_POST as $key => $value) {
    $message_body .= $key . ': ' . $value . '<br />';
}

更新:您可以进行任何过滤和消毒:

foreach ($_POST as $key => $value) {
    // or check with `in_array()`
    if ($key != 'excluded_key_1') {
        $message_body .= sanitizeValue($key) . ': ' . sanitizeValue($value) . '<br />';
    }
}

其中sanitizeValue是您清理数据的功能,例如。