como faço para adicionar uma seleção desconhecida de itens de estoque com um usuário quantidade ofertada a um carrinho?

StackOverflow https://stackoverflow.com/questions/879993

Pergunta

Atualmente estou usando PHP, JavaScript, MySQL, XHTML, CSS para desenvolver o meu site. Note-se que as soluções não se limitam a isso, mas preferiu se possível.

Eu tenho uma tabela MYSQL grande de widgets e uma página que permite ao usuário procurar um widget específico.

Vamos dizer por exemplo que o usuário digita o nome do modelo para alguns widget, a pesquisa poderia retornar 20 modelos de widgets diferentes. Cada modelo de widget é diferente, todos eles têm seu próprio preço unitário widget e nome do modelo widget, etc.

Agora vem a parte difícil (para mim de qualquer maneira), o usuário deve ser capaz de inserir uma quantidade próxima a um campo de texto do elemento html desejado.

O usuário então deve ser capaz de empurrar um botão Adicionar ao carrinho que armazena a quantidade eo modelo a quantidade que está associado.

(projeto da nota: consulta A MYSQL é usada para retornar uma lista de resultados de pesquisa e eu uso PHP para ecoar as linhas de widgets encontrados Após cada iteração Eu também exibir o campo de texto onde a quantidade desejada devem ser inseridos.. ).

Meu principal problema é descobrir como associar o nome do widget MYSQL desenhado com a quantidade digitada pelo usuário e armazená-lo em conjunto no carrinho. Alguém poderia me aponte na direção certa, eu não tenho certeza de como proceder para combater isso.

Eu estava pensando que eu poderia ser capaz de ecoar o modelo de widget no campo de texto Id, mas então como eu poderia determinar depois pós qual o modelo que tinha uma quantidade ... Isto não é provavelmente a melhor forma de fazê-lo, mesmo que era possível.

Graças

Foi útil?

Solução

fazer a nomes TextField algo como itens [uniq_module_id]

<input type="text" name="items[10001]">
<input type="text" name="items[10002]">
<input type="text" name="items[10003]">

, em seguida, em php

$items = $_POST['items'];
print_r($items);

você receberá

[items] => Array
    (
        [uniq_module_id] => quantity
            ...
    )

e uma amostra

$items = (isset($_POST['items'])) ? $_POST['items'] : array();
if (is_array($items)) {
    foreach ($items as $module_id => $quantity)
    {
        if (intval($quantity) > 0) {
            add2cart($module_id, $quantity);
        }
    }
}

Outras dicas

Existe um "add to cart" -botão / link em cada widget? Gerar um botão / link que envia a informação necessária (quantidade e widget ID) para um add-se cart.php.

foreach ($rows as $row) {
    // Print widget info
    echo '<input type="text" name="quantity" id="widget_' . $row['widgetID'] . '_qty" value="1">';
    echo "<button onclick=\"javascript: location.href='add-to-cart.php?widgetId=" . $row['widgetID'] . "&quantity=' + document.getElementById('widget_" . $row['widgetId'] . "_qty').value;\" value=\"Add to cart\" />";
}

Ou algo semelhante. Usando Ajax poderia talvez ser uma boa solução também.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top