【问题标题】:get input and pass it as a variable inside the same form获取输入并将其作为变量传递给同一个表单
【发布时间】:2016-04-28 00:57:24
【问题描述】:

我很抱歉这个愚蠢的问题,但我对 php 还是很陌生,现在已经很晚了......

我正在尝试将输入作为 php echo 中表单提交的一部分(作为“数据量”的数量值)传递,但我似乎不太正确......有人可以告诉我哪里错了...我试图获得价值,但似乎无法做到...我需要先进行某种验证吗?在这一点上我真的很困惑......

  $form = '<form><input type="number" name="quantity" min="1" value="1">
    <button type="submit" data-quantity="'.isset($_GET["quantity"].'" data-product_id="'.$_product->id.'"
        class="button alt ajax_add_to_cart add_to_cart_button product_type_simple">add to basket</button></form>';

它用于在 woocommerce 中添加自定义数量 - 这是因为通常的过滤器与插件不兼容,所以我认为这是下一个最好的东西......如果我手动将值添加到 data-quantity 中它会起作用.. . 提前感谢您的帮助!

完整文件在这里:http://pastie.org/10815844#211-215

【问题讨论】:

    标签: php forms variables get


    【解决方案1】:

    在表单之外设置数量,如果未在 GET 数组中设置 - 这默认为数量 1。

    但是,再次查看问题 - 您将需要在输入中使用相同的值 - 或者在提交对接的 hte onclick 上使用 javascript 来确定数量输入的值,或者只是让表单提交并使用下一页上的 POST 或 GET 数组来获取数量值(请注意,您也没有表单的操作或方法。

    if(isset($_GET["quantity"])){$qty=$_GET["quantity"]}else{$qty=1};
    
    $form = '<form><input type="number" name="quantity" min="1" value="' . $qty . '">
        <button type="submit" data-quantity="'. $qty .'" data-product_id="'.$_product->id.'"
            class="button alt ajax_add_to_cart add_to_cart_button product_type_simple">add to basket</button></form>';
    

    【讨论】:

    • 嘿-感谢您的回复-这似乎由于某种原因破坏了插件...我不确定我是否正确执行此操作...我会发布整个文件但它有 250 行长...
    • 查看您的 product_id 部分,是否必须是 $_quantity->$qty
    • 我不完全确定要诚实。本质上,它是用于追加销售的产品展示滑块。它连接了很多,并且该位在该连接的一部分内...如果我删除了它显示的表格之外的数量设置(尽管出于明显的原因使用空白数量)但是当我将其放回表格上方时打破它...
    • 如果你有机会看到我已经用链接中的完整文件更新了主帖子 - 问题在第 211 行和第 215 行之间......
    • 看了看 - 记得我讨厌 wordpress :) - 两个想法 - 首先我看不到 slider_gallery 的实际定义位置 - 它从该文件的开头(第 5 行)连接到右侧,但我看不到它的开始。其次 - 这一行“$_product = new WC_Product($wa_post->ID);”会推断它正在创建一个新的 $_product,因此您可能必须参考它来获取数量。抱歉,我无法为您提供更多帮助 - 祝您好运
    猜你喜欢
    • 1970-01-01
    • 2022-12-14
    • 2014-01-03
    • 1970-01-01
    • 2011-03-19
    • 1970-01-01
    • 1970-01-01
    • 2022-01-15
    • 2021-02-07
    相关资源
    最近更新 更多