PDOException:SQLSTATE [22021]和注意:未定义的偏移量

时间:2017-03-03 08:07:24

标签: php postgresql drupal-7 drupal-modules drupal-views

我已经制作了一些自定义模块,用于在drupal 7中将csv导入数据库,但是我遇到了一些错误

  

注意:未定义的偏移量:2   PDOException:SQLSTATE [22021]:字符不在指令集中:7错误:编码“UTF8”的无效字节序列:0x8d提示:如果字节序列与服务器预期的编码不匹配,也会发生此错误,该编码由“CLIENT_ENCODING”

这里是我的代码

    if(isset($form_state['values']['csvupload'])) {
    if($handle = fopen($form_state['values']['csvupload'],'r')) {
        $btach['operations'][] = array('+importcsv_remember_filename', array($form_state['values']['csvupload']));
        db_set_active('data7');
        $line = fgetcsv($handle,4096);
        while ($line = fgetcsv($handle,4095)) {
            for($i = 0,$j = count($line); $i < $j; $i++) {
                $insert_csv = array();
                $insert_csv['id'] = $line[0];
                $insert_csv['nama'] = $line[1];
                $insert_csv['alamat'] = $line[2];
                $insert_csv['fakultas'] = $line[3];
                $insert_csv['pekerjaan'] = $line[4];
            }
            $i++;
            $nid = db_insert('unikom')
            ->fields(array(
                'id' => $insert_csv['id'],
                'nama' => $insert_csv['nama'],
                'alamat' => $insert_csv['alamat'],
                'fakultas' => $insert_csv['fakultas'],
                'pekerjaan' => $insert_csv['pekerjaan'],
            ))
            ->execute();
            $batch['operations'][] = array('_importcsv_import_line',array(array_map('base64_decode',$line)));
        }
        fclose($handle);
        $nid = drupal_set_message('success');
    }
}
batch_set($batch);
db_set_active();

0 个答案:

没有答案