Показать сообщение отдельно
  #1 (permalink)  
Старый 21.02.2021, 18:50
Новичок на форуме
Отправить личное сообщение для rsl89 Посмотреть профиль Найти все сообщения от rsl89
 
Регистрация: 21.02.2021
Сообщений: 2

Выполнить скрипт php при нажатии на кнопку
Всем привет.
Задача следующая, есть форма:

<form method="post" action="">
<div class="woo-wallet-add-amount fre-input-field">
<label for="woo_wallet_balance_to_add"><?php _e( 'Enter amount', 'woo-wallet' ); ?></label>
<?php
$min_amount = woo_wallet()->settings_api->get_option( 'min_topup_amount', '_wallet_settings_general', 0 );
$max_amount = woo_wallet()->settings_api->get_option( 'max_topup_amount', '_wallet_settings_general', '' );
?>
<input type="number" step="0.01" min="<?php echo $min_amount; ?>" max="<?php echo $max_amount; ?>" name="woo_wallet_balance_to_add" id="woo_wallet_balance_to_add" class="woo-wallet-balance-to-add" required="" />
<?php wp_nonce_field( 'woo_wallet_topup', 'woo_wallet_topup' ); ?>
<input type="submit" name="woo_add_to_wallet" class="woo-add-to-wallet fre-normal-btn-o" value="<?php _e( 'Add', 'woo-wallet' ); ?>" />
</div>
</form>


Нужно при нажатии на кнопку выполнить PHP, базово это было бы:
if (isset($_POST['woo_add_to_walle'])) //если нажата кнопка...


но все формы темы завязаны на js, так не выполняется.

Подскажите костыльный способ выполнить php запрос прямо в файле формы, чтобы не трогать и лопатить все исполнительные файлы JS темы?

перепробовал несколько способов, не помогло:
<form method="post" action="" id="y_money">
                                                <div class="woo-wallet-add-amount fre-input-field">
                                                    <label for="woo_wallet_balance_to_add"><?php _e( 'Enter amount', 'woo-wallet' ); ?></label>
                                                    <?php
                                                    $min_amount = woo_wallet()->settings_api->get_option( 'min_topup_amount', '_wallet_settings_general', 0 );
                                                    $max_amount = woo_wallet()->settings_api->get_option( 'max_topup_amount', '_wallet_settings_general', '' );
                                                    ?>
                                                    <input type="number" step="0.01" min="<?php echo $min_amount; ?>" max="<?php echo $max_amount; ?>" name="woo_wallet_balance_to_add" id="woo_wallet_balance_to_add" class="woo-wallet-balance-to-add" required="" />
 
                                                    
                                                    <input type="hidden" name="user_id_u_money" value="<?= $user_ID ?>">
 
 
                                                    <?php wp_nonce_field( 'woo_wallet_topup', 'woo_wallet_topup' ); ?>
                                                    <input id="woo_add_to_wallet" type= "submit" name="woo_add_to_wallet" class="woo-add-to-wallet fre-normal-btn-o" value="<?php _e( 'Add', 'woo-wallet' ); ?>"/>
                                                </div>
                                            </form>
 
 
                                            <script>
                                                $('#woo_add_to_wallet').click(function(event){
                                                    event.preventDefault();
                                                    $.post('amount_ymoney.php', $('#y_money').serialize(),function (data){
                                                        // data - это ответ сервера, с которым что-то можно сделать
                                                    });
                                                });
                                            </script>


<form method="post" action="" id="y_money">
                                                <div class="woo-wallet-add-amount fre-input-field">
                                                    <label for="woo_wallet_balance_to_add"><?php _e( 'Enter amount', 'woo-wallet' ); ?></label>
                                                    <?php
                                                    $min_amount = woo_wallet()->settings_api->get_option( 'min_topup_amount', '_wallet_settings_general', 0 );
                                                    $max_amount = woo_wallet()->settings_api->get_option( 'max_topup_amount', '_wallet_settings_general', '' );
                                                    ?>
                                                    <input type="number" step="0.01" min="<?php echo $min_amount; ?>" max="<?php echo $max_amount; ?>" name="woo_wallet_balance_to_add" id="woo_wallet_balance_to_add" class="woo-wallet-balance-to-add" required="" />
 
 
                                                    <input type="hidden" name="user_id_u_money" value="<?= $user_ID ?>">
 
 
                                                    <?php wp_nonce_field( 'woo_wallet_topup', 'woo_wallet_topup' ); ?>
                                                    <input onclick="foo()" id="woo_add_to_wallet" type= "submit" name="woo_add_to_wallet" class="woo-add-to-wallet fre-normal-btn-o" value="<?php _e( 'Add', 'woo-wallet' ); ?>"/>
                                                </div>
                                            </form>
 
 
                                            <script>
                                                function foo () {
                                                    $.ajax({
                                                        url:"amount_ymoney.php", //the page containing php script
                                                        type: "POST", //request type
                                                        success:function(result){
                                                            alert(result);
                                                        }
                                                    });
                                                }
                                            </script>


<script>
                                                $(document).ready(function() {
                                                    $("woo_add_to_wallet").click(function(){
                                                        $.ajax({
                                                            url:"amount_ymoney.php", //the page containing php script
                                                            type: "POST", //request type
                                                            success:function(result){
                                                                alert(result);
                                                            }
                                                        });
                                                    });
                                                })
                                            </script>
Ответить с цитированием