【问题标题】:How to get two values from a dynamic text input in php?如何从 php 中的动态文本输入中获取两个值?
【发布时间】:2017-09-09 23:16:14
【问题描述】:

在我的表单中,我循环记录集并使用括号 [] 中的命名约定存储值。 这很好地创建了一个数组,但只存储产生结果的输入值: 2、1、1

QTY: <input name="1pcCB['<?php echo $row_rs_type1['productname']; ?>']" type="text" id="<?php echo $row_rs_type1['productname']; ?>" value=""  />
<?php echo $row_rs_type1['productname']; ?>

如何正确地将数组设置为还具有唯一的“产品名称”和输入中输入的值(数量)?

implode 效果很好,但只给出输入值而不是产品名称

<?php  $capture_field_vals ="";
if(isset($_POST["1pcCB"]) && is_array($_POST["1pcCB"])){
 echo $capture_field_vals = implode(",", $_POST["1pcCB"]); 
}  
?>

目标是将产品名称和数量逗号分隔为单个最终值。这将如何实现?

最终结果应该是产品名称和来自输入的值,例如:

ProductNameX 2,ProductNameY 1,ProductNameZ 1

更新:

print_r($_POST["1pcCB"]);

Array
(
    ['XL88ZM'] => 2
    ['XL88JB'] => 1
    ['XL22'] => 1
    ['XL88GB'] => 
    ['XL88Q'] => 
    ['XL301'] => 
    ['XL2050'] => 
    ['XL303'] => 
    ['XL3060'] => 
    ['XLWP'] => 
)

使用:

回显 http_build_query($_POST["1pcCB"],'',', ');

生产:

%27XL88ZM%27=2, %27XL88JB%27=3, %27XL22%27=6, %27XL88GB%27=, %27XL88Q%27=, %27XL301%27=, %27XL2050%27=, %27XL303%27=, %27XL3060%27=, %27XLWP%27=

我只需要去掉那些没有数量的并去掉“%27”字符。

【问题讨论】:

    标签: php


    【解决方案1】:

    尝试如下。

    foreach ($_POST["1pcCB"] as $key => $value)
      $temp[] = "$key $value";
    
    $capture_field_vals = implode(",", $temp); 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多