【问题标题】:Can't insert data from form zend 2无法从表单zend 2插入数据
【发布时间】:2015-09-10 10:25:53
【问题描述】:

我有以下代码将 zend 表单中的数据插入到数据库表中,我在这里给出了模型的代码。

 public function Savemedic( $medicaldata,$id)
 {
   $medicadapter = $this->tableGateway->adapter;    
   $data = array(
            'cardno' => $medicaldata->cardno,
            'disabilityGroup' => $medicaldata->disabilityGroup,
            'childhooddis' => $medicaldata->childhooddis,
            'reason' => $medicaldata->reason,
            'ilnessCrypt' => $medicaldata->ilnessCrypt,
            'hearing' => $medicaldata->hearing,
            'vision' => $medicaldata->vision,
            'movement' => $medicaldata->movement,
            'dcp' => $medicaldata->dcp,
            'autism' => $medicaldata->autism,
            'psychology' => $medicaldata->psychology,
            'sensor' => $medicaldata->sensor,
            'statodinamic' => $medicaldata->statodinamic,
            'bloodflow' => $medicaldata->bloodflow,
            'brithing' => $medicaldata->brithing,
            'stomack' => $medicaldata->stomack,
            'escression' => $medicaldata->escression,
            'metabolism' => $medicaldata->metabolism,
            'secression' => $medicaldata->secression,
            'imunitet' => $medicaldata->imunitet,
            'speach' => $medicaldata->speach,
            'distortion' => $medicaldata->distortion,
            ' canser' => $medicaldata-> canser,
            'other' => $medicaldata->other,           
        );       
 $resultstd=$this->tableGateway->insert($data);

 $med_id=$this->tableGateway->lastInsertValue;
 //$education_id=$this->tableGateway->lastInsertValue;
 $dbAdapter = $this->tableGateway->adapter;

 $medadapter=$this->tableGateway->getAdapter();
 $medicaldataToStudent=new TableGateway('medicaldata_to_student', $medadapter);
 $data_arr = array(
    'student_id'  =>$id,
    'medical_id' => $med_id,      
 );
 $medicaldataToStudent->insert($data_arr);
}

这会生成以下查询:

 object(PDOStatement)#553 (1) { ["queryString"]=> string(598) "INSERT INTO `medicaldata` (`cardno`, `disabilityGroup`, `childhooddis`, `reason`, `ilnessCrypt`, `hearing`, `vision`, `movement`, `dcp`, `autism`, `psychology`, `sensor`, `statodinamic`, `bloodflow`, `brithing`, `stomack`, `escression`, `metabolism`, `secression`, `imunitet`, `speach`, `distortion`, ` canser`, `other`) VALUES (:cardno, :disabilityGroup, :childhooddis, :reason, :ilnessCrypt, :hearing, :vision, :movement, :dcp, :autism, :psychology, :sensor, :statodinamic, :bloodflow, :brithing, :stomack, :escression, :metabolism, :secression, :imunitet, :speach, :distortion, : canser, :other)" }

但我收到此错误消息:

SQLSTATE[HY093]: 参数号无效:绑定变量的数量与标记的数量不匹配

我错过了什么?

【问题讨论】:

  • 去掉多余的空格' canser''canser'

标签: mysql zend-framework


【解决方案1】:

字段名称中有一个空格:

' canser' => $medicaldata-> canser,

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多