Javascript 如何获取动态$\ POST以将其与数据库进行比较
我正在创建一个电子商务网站,我正在使用minicart.js 我想包括在购物车产品,以结帐页使用PHP,如何 我试着用JS做这件事,但我做得不太好,所以我需要演练,Javascript 如何获取动态$\ POST以将其与数据库进行比较,javascript,php,arrays,mysqli,minicart,Javascript,Php,Arrays,Mysqli,Minicart,我正在创建一个电子商务网站,我正在使用minicart.js 我想包括在购物车产品,以结帐页使用PHP,如何 我试着用JS做这件事,但我做得不太好,所以我需要演练, 我可以通过$\u POST['product\u id\u 1']使用PHP获取值 问题是我想得到所有车内产品,如果有1000个产品怎么办 我发现它可以与IN一起使用,但仍然需要编写$product_cart_id='(1,2,3…1000)' 这也不好,如果还有更多呢 我得到的最后一个想法是使用$u POST['product\u
我可以通过$\u POST['product\u id\u 1']使用PHP获取值 问题是我想得到所有车内产品,如果有1000个产品怎么办 我发现它可以与IN一起使用,但仍然需要编写$product_cart_id='(1,2,3…1000)'
这也不好,如果还有更多呢 我得到的最后一个想法是使用$u POST['product\u id.'$I]和for循环,
它工作并打印购物车产品中的所有值,
最后一步是以动态方式从数据库中获取它们,
当我把
$\u POST['product\u id.'$I]
放在var中并放在query中时,它会说语法错误
当我将var更改为$\u POST['product\u id\u 1']
时,它会工作
我需要用PHP或JS使其动态化(但我需要更多JS方面的帮助)
//添加到购物车按钮窗体
//顺便说一句,在没有转义、获取数组和查询功能的情况下,结果是一样的。这些功能都很好,并且经过了测试
//>>>功能以防万一功能结束您好,您能通过skype或远程向我展示一下您的场景吗。这样我就可以帮上忙了。
正如我所看到的那样
1) 您必须在隐藏字段中使用逗号分隔的产品id
2) 提交表单时,您必须作为隐藏字段id传递,如下所示:
从product_id所在的表中选择*($_POST[product_id])。希望你的问题能得到解决
3) 否则,如果您作为远程用户与我一起提供其他解决方案。您是否通过表单获得这些$\u POST['product\u id.'$i]
?是的,在“添加到购物车”按钮中的表单我看不到表单中的name=product\u id\u 1
,我现在不关心sql注入,stmt仅在最后一步Carl Binalla,我为你添加了我现在拍摄的照片非常感谢我已经面临这个问题两天了,我如何通过skype与tou联系?(如果不麻烦你的话)这是我的skype名live:xcypherz1998
// this is cart module in minicart.js
module.exports = Cart;
},{"./constants":11,"./product":13,"./util/currency":15,"./util/mixin":18,"./util/pubsub":19,"./util/storage":20}],10:[function(require,module,exports){
'use strict';
var mixin = require('./util/mixin');
var defaults = module.exports = {
name: 'staplesbmincart',
parent: (typeof document !== 'undefined') ? document.body : null,
action: 'checkout.php',
target: '',
duration: 30,
// template: '<%var items = cart.items();var settings = cart.settings();var hasItems = !!items.length;var priceFormat = { format: true, currency: cart.settings("currency_code") };var totalFormat = { format: true, showCode: true };%><form method="post" class="<% if (!hasItems) { %>sbmincart-empty<% } %>" action="<%= config.action %>" target="<%= config.target %>"> <button type="button" class="sbmincart-closer">×</button> <ul> <% for (var i= 0, idx = i + 1, len = items.length; i < len; i++, idx++) { %> <li class="sbmincart-item"> <div class="sbmincart-details-name"> <a class="sbmincart-name" href="<%= items[i].get("href") %>"><%= items[i].get("googles_item") %></a> <ul class="sbmincart-attributes"> <% if (items[i].get("item_number")) { %> <li> <%= items[i].get("item_number") %> <input type="hidden" name="item_number_<%= idx %>" value="<%= items[i].get("item_number") %>" /> </li> <% } %> <% if (items[i].discount()) { %> <li> <%= config.strings.discount %> <%= items[i].discount(priceFormat) %> <input type="hidden" name="discount_amount_<%= idx %>" value="<%= items[i].discount() %>" /> </li> <% } %> <% for (var options = items[i].options(), j = 0, len2 = options.length; j < len2; j++) { %> <li> <%= options[j].key %>: <%= options[j].value %> <input type="hidden" name="on<%= j %>_<%= idx %>" value="<%= options[j].key %>" /> <input type="hidden" name="os<%= j %>_<%= idx %>" value="<%= options[j].value %>" /> </li> <% } %> </ul> </div> <div class="sbmincart-details-quantity"> <input class="sbmincart-quantity" data-sbmincart-idx="<%= i %>" name="quantity_<%= idx %>" type="text" pattern="[0-9]*" value="<%= items[i].get("quantity") %>" autocomplete="off" /> </div> <div class="sbmincart-details-remove"> <button type="button" class="sbmincart-remove" data-sbmincart-idx="<%= i %>">×</button> </div> <div class="sbmincart-details-price"> <span class="sbmincart-price"><%= items[i].total(priceFormat) %></span> </div> <input type="hidden" name="product_id_<%= idx %>" value="<%= items[i].get("product_id") %>" /> <input type="hidden" name="googles_item_<%= idx %>" value="<%= items[i].get("googles_item") %>" /> <input type="hidden" name="amount_<%= idx %>" value="<%= items[i].amount() %>" /> <input type="hidden" name="shipping_<%= idx %>" value="<%= items[i].get("shipping") %>" /> <input type="hidden" name="shipping2_<%= idx %>" value="<%= items[i].get("shipping2") %>" /> </li> <% } %> </ul> <div class="sbmincart-footer"> <% if (hasItems) { %> <div class="sbmincart-subtotal"> <%= config.strings.subtotal %> <%= cart.total(totalFormat) %> </div> <button class="sbmincart-submit" type="submit" data-sbmincart-alt="<%= config.strings.buttonAlt %>"><%- config.strings.button %></button> <% } else { %> <p class="sbmincart-empty-text"><%= config.strings.empty %></p> <% } %> </div> <input type="hidden" name="cmd" value="_cart" /> <input type="hidden" name="upload" value="1" /> <% for (var key in settings) { %> <input type="hidden" name="<%= key %>" value="<%= settings[key] %>" /> <% } %></form>',
template: '<%var items = cart.items();var settings = cart.settings();var hasItems = !!items.length;var priceFormat = { format: true, currency: cart.settings("currency_code") };var totalFormat = { format: true, showCode: true };%><form method="post" class="<% if (!hasItems) { %>sbmincart-empty<% } %>" action="<%= config.action %>" target="<%= config.target %>"> <button type="button" class="sbmincart-closer">×</button> <ul> <% for (var i= 0, idx = i + 1, len = items.length; i < len; i++, idx++) { %> <li class="sbmincart-item"> <div class="sbmincart-details-name"> <a class="sbmincart-name" href="<%= items[i].get("href") %>"><%= items[i].get("googles_item") %></a> <ul class="sbmincart-attributes"> <% if (items[i].get("item_number")) { %> <li> <%= items[i].get("item_number") %> <input type="hidden" name="item_number_<%= idx %>" value="<%= items[i].get("item_number") %>" /> </li> <% } %> <% if (items[i].discount()) { %> <li> <%= config.strings.discount %> <%= items[i].discount(priceFormat) %> <input type="hidden" name="discount_amount_<%= idx %>" value="<%= items[i].discount() %>" /> </li> <% } %> <% for (var options = items[i].options(), j = 0, len2 = options.length; j < len2; j++) { %> <li> <%= options[j].key %>: <%= options[j].value %> <input type="hidden" name="on<%= j %>_<%= idx %>" value="<%= options[j].key %>" /> <input type="hidden" name="os<%= j %>_<%= idx %>" value="<%= options[j].value %>" /> </li> <% } %> </ul> </div> <div class="sbmincart-details-quantity"> <input class="sbmincart-quantity" data-sbmincart-idx="<%= i %>" name="quantity_<%= idx %>" type="text" pattern="[0-9]*" value="<%= items[i].get("quantity") %>" autocomplete="off" /> </div> <div class="sbmincart-details-remove"> <button type="button" class="sbmincart-remove" data-sbmincart-idx="<%= i %>">×</button> </div> <div class="sbmincart-details-price"> <span class="sbmincart-price"><%= items[i].total(priceFormat) %></span> </div> <input type="hidden" name="product_id_<%= idx %>" value="<%= items[i].get("product_id") %>" /> <input type="hidden" name="googles_item_<%= idx %>" value="<%= items[i].get("googles_item") %>" /> <input type="hidden" name="amount_<%= idx %>" value="<%= items[i].amount() %>" /> <input type="hidden" name="shipping_<%= idx %>" value="<%= items[i].get("shipping") %>" /> <input type="hidden" name="shipping2_<%= idx %>" value="<%= items[i].get("shipping2") %>" /> </li> <% } %> </ul> <div class="sbmincart-footer"> <% if (hasItems) { %> <div class="sbmincart-subtotal"> <%= config.strings.subtotal %> <%= cart.total(totalFormat) %> </div> <button class="sbmincart-submit" type="submit" data-sbmincart-alt="<%= config.strings.buttonAlt %>"><%- config.strings.button %></button> <% } else { %> <p class="sbmincart-empty-text"><%= config.strings.empty %></p> <% } %> </div> <input type="hidden" name="cmd" value="_cart" /> <input type="hidden" name="upload" value="1" /> <% for (var key in settings) { %> <input type="hidden" name="<%= key %>" value="<%= settings[key] %>" /> <% } %></form>',
styles: '',
strings: {
button: 'Check Out',
subtotal: 'Subtotal:',
discount: 'Discount:',
empty: 'Your shopping cart is empty'
}
};