Esempio n. 1
0
function charset_pmb_normalize($mixed)
{
    global $charset;
    $is_array = is_array($mixed);
    $is_object = is_object($mixed);
    if ($is_array || $is_object) {
        foreach ($mixed as $key => $value) {
            if ($is_array) {
                $mixed[$key] = charset_pmb_normalize($value);
            } else {
                $mixed->{$key} = charset_pmb_normalize($value);
            }
        }
    } elseif ($charset != "utf-8") {
        $mixed = utf8_encode($mixed);
    }
    return $mixed;
}
Esempio n. 2
0
 function rec_record($source_id, $record)
 {
     global $charset, $base_path;
     $record = charset_pmb_normalize($record);
     $n_header = array();
     foreach ($record["header"] as $aheader_field) {
         switch ($aheader_field["name"]) {
             case "rs":
                 $n_header["rs"] = $aheader_field["value"];
                 break;
             case "ru":
                 $n_header["ru"] = $aheader_field["value"];
                 break;
             case "el":
                 $n_header["el"] = $aheader_field["value"];
                 break;
             case "bl":
                 $n_header["bl"] = $aheader_field["value"];
                 break;
             case "hl":
                 $n_header["hl"] = $aheader_field["value"];
                 break;
             case "dt":
                 $n_header["dt"] = $aheader_field["value"];
                 break;
             default:
                 break;
         }
     }
     $ref = md5(print_r($record, true));
     //Suppression d'un éventuel doublon
     $requete = "delete from entrepot_source_" . $source_id . " where ref='" . addslashes($ref) . "'";
     mysql_query($requete);
     //Récupération d'un ID
     $requete = "insert into external_count (recid, source_id) values('" . addslashes("agnostic " . $source_id . " " . $ref) . "', " . $source_id . ")";
     $rid = mysql_query($requete);
     if ($rid) {
         $recid = mysql_insert_id();
     }
     if (!$recid) {
         return false;
     }
     $date_import = date('Y-m-d H:i:s', time());
     $ufield = "";
     $usubfield = "";
     $field_order = 0;
     $subfield_order = 0;
     $value = "";
     foreach ($n_header as $hc => $code) {
         $requete = "insert into entrepot_source_" . $source_id . " (connector_id,source_id,ref,date_import,ufield,usubfield,field_order,subfield_order,value,i_value,recid) values(\n\t\t\t'" . addslashes('agnostic') . "'," . $source_id . ",'" . addslashes($ref) . "','" . addslashes($date_import) . "',\n\t\t\t'" . $hc . "','',0,0,'" . addslashes($code) . "','',{$recid})";
         mysql_query($requete);
     }
     for ($i = 0; $i < count($record["f"]); $i++) {
         $ufield = $record['f'][$i]["c"];
         $field_ind = $record['f'][$i]['ind'];
         $field_order = $i;
         $ss = $record['f'][$i]['s'];
         if (is_array($ss)) {
             for ($j = 0; $j < count($ss); $j++) {
                 $usubfield = $ss[$j]["c"];
                 $value = $ss[$j]["value"];
                 $subfield_order = $j;
                 $requete = "insert into entrepot_source_" . $source_id . " (connector_id,source_id,ref,date_import,ufield,field_ind,usubfield,field_order,subfield_order,value,i_value,recid) values(\n\t\t\t\t\t'" . addslashes('agnostic') . "'," . $source_id . ",'" . addslashes($ref) . "','" . addslashes($date_import) . "',\n\t\t\t\t\t'" . addslashes($ufield) . "','" . addslashes($field_ind) . "','" . addslashes($usubfield) . "'," . $field_order . "," . $subfield_order . ",'" . addslashes($value) . "',\n\t\t\t\t\t' " . addslashes(strip_empty_words($value)) . " ',{$recid})";
                 mysql_query($requete);
             }
         }
     }
 }