字段映射结果插入到mysql数据库中

时间:2017-01-20 00:06:11

标签: php mysql arrays facebook lead

我正在尝试完成sync dataFacebook潜在客户形式添加到MySQL database的脚本的最后一项功能。我正在尝试map MySQL columns to Facebook引导表单字段,然后在Facebook中添加new entry时,将每个内容添加到MySQL列作为行,具体取决于mapping中选择的script setting page }}

我现在有2个数组

1。第一个$mapfieldarray contain key ==> value其中   - keyMySQL columns
  - valueFacebook fields我映射到列

  Array
         (
            [key] => phone_number_col
             [values] => phone_number

         )
     (
             [key] => full_name_col
             [values] => full_name


         )

2。,第二个数组为$leadField contain name ==> value   - 输入值为的nameFacebook field的地方   - valuereturn field entry value

           Array

             ( [name] => phone_number 
             [values] => Array 
                ( 

                 [0] => <test lead: dummy data for phone_number>

             )

            ) (
            [name] => full_name
             [values] => Array
                 (
                     [0] => <test lead: dummy data for full_name>
                 )

         )

如何完成这项工作?

1 个答案:

答案 0 :(得分:0)

您需要使用array_search()

E.g。像这样的东西:

$mapfieldarray = [
  'mysql_col_1' => 'fb_field_1',
  'mysql_col_2' => 'fb_field_2',
  'mysql_col_3' => 'fb_field_3',
];

$leadField = [
  'fb_field_1' => 'value to save',
];

$query = 'INSERT INTO table SET ';

foreach($leadField as $fb_field => $value) {
  $mysql_field_name = array_search($fb_field, $mapfieldarray);

  if(!empty($mysql_field_name)) {
    // MAKE SURE TO ESCAPE YOUR VALUES!
    // This is just an example to show how to use array_search
    $query .= "INSERT INTO table SET $mysql_field_name = $value";
  }
}

数组搜索正在做的是搜索第一个数组的值以获得匹配,然后返回相应的键,在本例中是您的mysql字段名称。