1

データベースにメールを挿入しようとしています。電子メールを除く他のすべての値が投稿されます。電子メールIDの代わりに「0」がデータベースに挿入されています。

$wpdb->bloodregistration = $wpdb->prefix.'bloodregistration';
$wpdb->insert( $wpdb->bloodregistration,array( 'name' => $_POST['myname'], 'myemail' =>         $mailid,'age' => $_POST['age'],'gender' => $_POST['gender'],'location' => $_POST['location']
    ,'address' => $_POST['address'],'phone_land' => $_POST['ph_land'],'phone_mob' =>     $_POST['ph_mobile'],'blood_group' => $_POST['blood_group']
    ,'dob' => $dob,'lastblooddate' => $doblood),array('%s','%d') );
4

1 に答える 1

0

どのDBを使用していますか?ID列にシーケンス/シリアル/自動インクリメントを割り当てるのを忘れたと思います。

編集:

したがって、問題は、'myemail' => $mailidこのフィールドに空の変数を挿入していたか、変数を設定していないため、DBで0を取得したことです。

DBで、列「myemail」を自動インクリメント、NOT NULL、およびINDEXPRIMARYに設定します。次に、PHPでは、新しいレコードを追加するときにこのフィールドをスキップするだけで、DBが自動的にインクリメントします。

試す:

$wpdb->bloodregistration = $wpdb->prefix.'bloodregistration';
$wpdb->insert( $wpdb->bloodregistration,array( 'name' => $_POST['myname'],'age' => $_POST['age'],'gender' => $_POST['gender'],'location' => $_POST['location']
    ,'address' => $_POST['address'],'phone_land' => $_POST['ph_land'],'phone_mob' =>     $_POST['ph_mobile'],'blood_group' => $_POST['blood_group']
    ,'dob' => $dob,'lastblooddate' => $doblood),array('%s','%d') );
于 2012-10-03T10:11:37.867 に答える