2013-12-20 47 views
0

發生 應用錯誤 異常信息錯誤: 消息:SQLSTATE [HY093]:無效參數號:沒有參數被束縛Zend框架1 - 信息:SQLSTATE [HY093]:無效參數號:沒有參數被束縛

我的控制器:

array (
    'controller' => 'beneficiarios', 
    'action' => 'insertar', 
    'module' => 'default', 
    'codigo_beneficiario' => '', 
    'codigo_ud' => '2007', 
    'nombres' => 'lksakljsdlkjsd', 
    'apellidos' => 'lkslkjslkjsd', 
    'tipo_beneficiario' => 'estudiante', 
    'tipo_documento' => 'CC', 
    'numero_documento' => '10912919009', 
    'genero' => 'M', 
    'tipo_sangre' => 'o+', 
    'fecha_nacimiento' => '2013-12-12', 
    'huella_d' => 'Ajustes Base de Datos', 
    'huella_i' => 'Ajustes Base de Datos', 
    'telefono_fijo' => '9191919', 
    'telefono_celular' => '9191919191', 
    'email_personal' => '[email protected]', 
    'email_institucional' => '[email protected]', 
    'tipo_regimen_salud' => 'sub', 
    'cod_entidad_salud' => '1', 
    'nombre_contacto' => 'alkslkalkakl', 
    'telefono_contacto' => '18918198', 
    'cod_domicilio' => '1', 
    'cod_pais' => '56', 
) 
:在拍攝的時候

public function insertarAction() { 
     $data = $this->getRequest()->getParams(); 
     // extract($data); 


     if (isset($data['cod_domicilio'])) { 

     $municipio = new Application_Model_DbTable_Municipios(); 
     $datos_municipio = $municipio->todosMunicipios(); 
     $datos_municipio['cod_municipio']=$data['cod_municipio']; 

     $localidad = new Application_Model_DbTable_Localidades(); 
     $datos_localidad = $localidad->buscarLocalidad(); 

     $datos_municipio['cod_departamento']=$datos_localidad['codigo_departamento']; 

     $rowMunicipio = $municipio->createRow(); 
     print_r($rowMunicipio); 
     $rowMunicipio->save(); 
     } 
} 

打印內容R

表:

CREATE TABLE IF NOT EXISTS `beneficiarios` (
    `codigo_beneficiario` int(11) NOT NULL AUTO_INCREMENT, 
    `codigo_ud` bigint(20) NOT NULL, 
    `nombres` varchar(30) NOT NULL, 
    `apellidos` varchar(30) NOT NULL, 
    `genero` enum('M','F') NOT NULL, 
    `tipo_documento` enum('CC','TI','CE','P') NOT NULL, 
    `numero_documento` varchar(30) NOT NULL, 
    `huella_i` blob NOT NULL, 
    `huella_d` blob NOT NULL, 
    `telefono_fijo` varchar(8) DEFAULT NULL, 
    `telefono_celular` varchar(10) DEFAULT NULL, 
    `email_personal` varchar(50) NOT NULL, 
    `email_institucional` varchar(50) DEFAULT NULL, 
    `tipo_sangre` enum('o+','o-','a+','a-','ab+','ab-','p','b+','b-') NOT NULL, 
    `fecha_nacimiento` date NOT NULL, 
    `tipo_regimen_salud` enum('sub','cont') NOT NULL, 
    `nombre_contacto` varchar(60) NOT NULL, 
    `telefono_contacto` varchar(10) NOT NULL, 
    `cod_entidad_salud` int(11) NOT NULL, 
    `cod_domicilio` int(11) NOT NULL, 
    `cod_pais` int(11) NOT NULL, 
    `tipo_beneficiario` enum('estudiante','docente','administrativo') NOT NULL, 
    PRIMARY KEY (`codigo_beneficiario`), 
    KEY `fk_Beneficiario_Entidades_Salud1_idx` (`cod_entidad_salud`), 
    KEY `fk_Beneficiario_Domicilios1_idx` (`cod_domicilio`), 
    KEY `fk_Beneficiario_Paises1_idx` (`cod_pais`) 
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ; 

我正確地插入數據,但表示我這個錯誤,輸入的數據的數量是相同的,如表(22個數據)

回答

0

從這個例子(例7)在ZF Manual中,看來你必須通過數據數組,$datos_municipiocreateRow()函數。

$rowMunicipio = $municipio->createRow($datos_municipio);

OR

你必須將其設置爲類的屬性,如
$datos_municipio->cod_departamento=$datos_localidad['codigo_departamento'];

+0

另外我在其他表插入數據:P – Jhosman

相關問題