在数据库Wordpress中存储数组

时间:2018-04-27 11:08:47

标签: arrays database wordpress store

我有一个选择这个表格。

<form>[...]
<select name="quantity[]">
    <?php
    for ($i=1; $i <20; $i++) {
    ?>
   <option value="<?php echo $i ?>"><?php echo $i ?></option>
    <?php } ?>
</select>[...]
</form>

我正在尝试使用$ wpdb将数量数据存储在数据库中。

global $wpdb;

    $table_name=$wpdb->prefix.'prenotazione_eventi';

    $wpdb_quantity = maybe_serialize( $_POST[ 'quantity'] );

    $query = "INSERT INTO $table_name (quantity) VALUES (%s)";

    $prepare_query = $wpdb->prepare( $query, $wpdb_quantity);

    $result = $wpdb->query( $prepare_query );

当我提交表单时,数据会保存在数据库中,但是在这个sintax a:1:{i:0;s:2:"10";}中。我想要的是数据只有我选择的数字我的形式,“10”。怎么样?

1 个答案:

答案 0 :(得分:1)

试试这段代码。

使用json_encode代替maybe_serialize

global $wpdb;

$table_name=$wpdb->prefix.'prenotazione_eventi';

$wpdb_quantity = json_encode( $_POST[ 'quantity'] );

$query = "INSERT INTO $table_name (quantity) VALUES (%s)";

$prepare_query = $wpdb->prepare( $query, $wpdb_quantity);

$result = $wpdb->query( $prepare_query );