2016-05-08 3 views
-1

У меня есть странный вопрос, на который я не могу найти ответ, что, вероятно, означает, что это невозможно. Причина, по которой я спрашиваю, я создаю сайт доставки еды. В админ-панели моего администратора веб-сайта могут вводить сведения о ресторанах и меню. Частью деталей является то, сколько клиент должен потратить, прежде чем они смогут проверить доставку. поэтому я хочу, чтобы иметь возможность деактивировать кнопку выписки, но когда они отвечают минимальной стоимости заказа, кнопка активируется.Можно ли комбинировать javascript/jquery и mysql/php

Это мой первый попыток что-то вроде этого, я просмотрел все, и я могу только найти сообщения или учебные пособия о том, как деактивировать, а затем активировать кнопку, когда определенное событие происходит с использованием javascript или jQuery, и я знаю, что я бы должны получить комиссию за минимальный заказ от БД. Единственный логический ответ - объединить их.

Я пытаюсь добиться чего-то похожее на this ...

Магазины

Я последовал за учебник, чтобы сделать это, это мини фиксированная корзина, которая находится на той же странице, в корзину. Он перенаправляет на shopping_cart.php из product_page.php. Большинство аспектов product_page.php динамически создаются.

  mysqli_stmt_execute($runn_query); 
      while ($get_row = mysqli_fetch_array($runn_query)) { 
      echo "<div id='prods_ere'>"; 
       $item_sub = $get_row['Product_Price'] * $value; 
       echo $value . ' x ' .$get_row['Product_Name']. ' @ &pound;' . $get_row['Product_Price'] . '<a id="minus" class="buttons" href="Shopping_cart.php?remove=' . $Product_Id . '">-</a> <a id="plus" class="buttons" href="Shopping_cart.php?add_item=' . $Product_Id . '"> + </a> <a id="del" class="buttons" href="Shopping_cart.php?delete=' . $Product_Id . '">&#10006;</a> </br><p id="sub">&pound;' . $item_sub . '</p>'; 
       echo "<br>"; 
       echo "<br>"; 
       echo "<hr id='shopp_dashed'>"; 
       echo "</div>"; 
      } 
     } 
     //creating subtotal 
     $sub_total += $item_sub; 
     $num_items += $value; 
     $total += $sub_total; 
    } 
} 

//subtotal and empty cart message 
if ($sub_total == 0) { 
    echo "Ouch.. its empty in here"; 
} else { 
    echo "<div id='grey'>"; 
    echo"Subtotal (excl delivery)"; 
    echo "<br/>"; 
    echo "<div id='sub_t'>"; 
    echo '&pound;' . number_format($sub_total, 2); 
    echo "</div>"; 
    echo "<br/>"; 
    echo"Items"; 
    echo "<br/>"; 
    echo "$num_items"; 
    echo "<br/>"; 
    echo "</div>"; 


    echo "<div id='total'>"; 
    echo"Total: &nbsp;"; 
    echo "$total"; 
    echo "</div>"; 

    } 

Продукция страница

 <div id="prods_here"> 
      <!-- PLACE PRODUCTS HERE--> 
     <?php cart(); ?> 
     </div> 
+4

*** «У меня странный вопрос, на который я не могу найти ответ, который, вероятно, означает, что это невозможно» *** Вы очень уверены ... –

+0

@PedroLobito lol не уверен в логике – jerneva

+1

Вам нужно узнать об AJAX. – SLaks

ответ

1

Ну, я не знаю, как вы отслеживать заказ клиента, но предположим, что вы будете следить за ним в счетчике, скажем, , totalOrderAmt. Когда они вносят изменения в порядок, сохраните это обновление и добавьте условие на страницу, чтобы при использовании totalOrderAmt> = checkOutAmt включите кнопку checkOut.

Я могу добавить более подробную информацию, если вы разместите какой-либо код, возможно.

+0

Хорошо, что имеет смысл, но все еще немного запутано. Я добавлю код прямо сейчас. – jerneva

+0

добавлен код. старался держаться как можно короче – jerneva

+1

Я просто собираюсь объединить ваш код с тем, что @ManBearPixel опубликовал выше. Если $ RestaurantMinimumOrder представляет то, что минимальный заказ, который подходит для оформления заказа, а общая сумма (из вашего кода) представляет собой общий заказ клиентов, условием запуска кнопки (с использованием jQuery может быть) является то, что $ total> $ RestaurantMinimumOrder. Вы постоянно обновляете $ total и оцениваете указанное выше условие для каждого обновления на странице. – rhcw

1

Если вы используете PHP вы можете загрузить объект JavaScript на каждой странице ресторана, которая в основном делает minimum_order_price переменная доступна на DOM для JavaScript, чтобы справиться с остальными:

<html> 
<head> 
    ... 
</head> 
<body> 
    <h1>Restaurant X</h1> 
    <p>Minimum order: <span id="_restaurantMinimumOrder"></span></p> 
    <input id="submit" type="submit" class="disabled" value="Checkout" disabled> 

    <script type="text/javascript"> 
    <?php 
    echo "window.RestaurantDetails = {}"; 
    echo "window.RestaurantDetails.minimum = $RestaurantMinimumOrder"; 
    ?> 
    </script> 
</body> 
</html> 

В этом случае, $RestaurantMinimumOrder это то, что вы настраиваете и настраиваете на PHP (я не уверен, что вы настроены, поэтому я пошел с именем переменной). Оттуда, когда страница анализируется с сервера, PHP повторит этот JavaScript. После загрузки страницы window.RestaurantDetails будет доступен для остальной части вашего JavaScript. Я также включал пример реализации:

<script type="text/javascript"> 
    // set price on the DOM 
    var priceEl = document.getElementById('_restaurantMinimumOrder'); 
    priceEl.textContent = window.RestaurantDetails.minimum; 

    // ensure submit button is disabled initially 
    var submitEl = document.getElementById('submit'); 
    submitEl.disabled = true; 
</script> 

здесь, если вы используете JQuery вы можете легко настроить состояние кнопки отправки на основе какой-либо логики потока у вас есть настройки. Дайте мне знать, если у вас появятся дополнительные вопросы. Удачи! Cheers ~

+1

. Вы также можете связать «$ .ajax», чтобы получить информацию о ресторане, но если вы хотите, чтобы эта информация была доступна на странице, а не ждать запроса (который может быть быстрым или медленный, но не обязательно контролируемый), тогда вы можете сделать это доступным в DOM, распечатав его на странице. – ManBearPixel

+0

О, не удивительно. Я готов на ajax прямо сейчас, поскольку я никогда не использовал его раньше. Огромное спасибо. я буду следовать этому и, надеюсь, решить мою проблему. – jerneva

+1

Хорошо, дайте мне знать, если вам нужна дополнительная помощь, но никогда не смотрите на проблему как барьер! Увидеть это как возможность расти – ManBearPixel

Смежные вопросы