【问题标题】:how to get multiple values from single text box and store it in array and also store it in database如何从单个文本框中获取多个值并将其存储在数组中并将其存储在数据库中
【发布时间】:2017-05-09 16:25:52
【问题描述】:

我可以使用php从一个输入文本框中获取多个值并将其存储在数组中吗? 我想从用户那里读取多个整数并将其存储在数组中 例如,我添加一个输入文本和一个提交:

【问题讨论】:

  • 这些方法将取决于文本的输入方式,即 12、23、34 或 12 23 34 或 1,234 2,345 3,456 或 12.0、23.1、34.2
  • 您希望用户添加一个整数,然后按提交,然后按另一个,按提交直到有多个整数可以发送,还是您希望用户输入一个逗号分隔的列表整数?
  • Can I use php to read values from one input text box and store it in array?你可以试试
  • 是的,阿德里安卡里格
  • 是的,adriancarriger 我想要两种技术

标签: javascript php jquery html arrays


【解决方案1】:

你可以这样做。

在 HTML 中创建一个表单,其输入应采用逗号分隔的整数值,如下所示:

<form action="url" method="POST">
    <input id="dataInput" type="text" name="data" value="12,34,56">
    <button id="submitBtn">Submit</button>
</form>

现在在提交表单时,你应该会收到 PHP 中的数据,你可以像这样使用 php 的explode 方法:

<?php

$data = $_POST['data'];
$data_arr = explode(',', $data); // <----- explode the string here from commas
// Now you can store these values into the database

所以$data_arr 的输出将是:

$data_arr = array(
    0 => '12',
    1 => '34',
    2 => '56'
);

希望这会有所帮助!

【讨论】:

  • 值 12 , 34 ,56 分别存储在数据库中的每个单元格中
  • 这完全取决于您,您可以将它们保存在单独的列中,也可以将它们保存为 json format 在单个列中。这完全取决于用例场景。
【解决方案2】:

使用explode() 函数 然后 array_walk() 函数以确保您获得 NUMERIC 值

<?php

// Assuming your method is POST 
// and assuming the delimiter (entered by user) is UNITED as a COMMA "," 
$_POST['input_name'] = explode(",", $_POST['input_name']);
$_POST['input_name'] = array_walk($_POST['input_name'], 'floatval');

?>

【讨论】:

  • 但是如何将每个单元格中的每个值存储在数据库中
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-11
  • 1970-01-01
  • 2011-10-10
  • 2018-03-20
  • 2019-12-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多