[WordPress] ワードプレス: $wpdb を使用してカスタム テーブルへのデータの追加

スポンサーリンク

Question

次のカスタム テーブルにフォームのデータを追加したいと思います:

テーブル名: wp_auctions

テーブルのフィールド: last_name、first_name

ファイル

registration_form.php

は、登録フォームです。

ファイル

registration.php

wp_auctions

と呼ばれるデータベース テーブルにデータを追加するファイルです。

問題は、データは、フォームの送信後、テーブルに追加しないことです。

$wpdb->insert()

の実行に失敗しているように見えます

以下は私の 2 つのファイルです。

ファイル: Registration_form.php

<?php
/*
template name: Registration_form;
Author: Aboubacar DRAME
*/
?>

<?php

$directory=get_stylesheet_directory_uri();

?>
<form method= “POST”, action=<?php echo $directory. “/registration.php”; ?>>
<label for=”first_name”> First Name </label>
<input type=”text” id=”first_name” name=”first_name”/> </br>
<input type=”submit” name=”submit” value=”submit the form” />
</form>

ファイル: registration.php

<?php

function Insert_data(){

global $wpdb;

$first_name = $_POST[‘first_name’];
$last_name = $_POST[‘last_name’];

$wpdb->insert(‘wp_auctions’,
array(‘first_name’ => $first_name),
‘last_name’ => $last_name),
array(‘first_name’ => ‘%s’,
‘last_name’ => ‘%s’)
);
}

if(isset($_POST[‘submit’]))
{
Insert_data();
}

?>

答え

$wpdb->insert

のコードが正しくなく、修正する必要があります

$wpdb->insert(
‘wp_auctions’,

array(‘first_name’ => $first_name,
‘last_name’ => $last_name
),

array( ‘%s’,
‘%s’
)
);

コーデックス の詳細を参照してください。

http://stackoverflow.com/questions/27173455/wordpress-adding-data-to-a-custom-table-using-wpdb

スポンサーリンク

Leave a Reply