2013-06-21 4 views
1

Я искал способ сделать мой сайт немного более гладким, это казино с несколькими играми в php.Использование jQuery AJAX для загрузки функции PHP

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

Я хотел бы реализовать ajax для моего сайта, чтобы вместо обновления страницы менялись изображения и все.

Я имел взгляд на руководство API JQuery AJAX, и я не могу сделать головы или хвосты все, что нужно сделать, это запустить функцию PHP через AJAX, когда кнопка нажата

Как трудно это ему делать?

У меня этот код, который мне сказал, находится на правильных строках, но как его использовать?

$.ajax({ url: '/lib/casinofile', 
    data: {action: 'spin-wheel'}, 
    type: 'post', 
    success: function(spinwheel) { 
        alert(spinwheel); 

       } 
}); 

Заранее спасибо

+0

Привет !! Что возвращается в консоли? –

+0

@Igor Martins В слот-игре он возвращает 3 изображения, если вы сопоставляете 3, то вы выигрываете приз кода, на сайте находится cdkey-hut.com/casino.php. Я думал, что было бы проще просто связать вас, чем попытаться объяснить это – Coderrrr

ответ

0

хорошо этот код в основном выдать запрос POST к/Lib/casinofile, когда casinofile возвращается сервером функция успеха запускается ... в этом случае она будет создавать всплывающее окно в вашем браузере с ответом сервера (в данном случае это вращение).

вы могли бы сделать это по-другому: $ .post ('/ Lib/casinofile/{действие:' спин-колесо '}, функция (данные) { оповещения (данные); });

+0

А, хорошо, ну, я не хочу всплывающее окно, поэтому я удалю предупреждение. Различается ли имя переменной ($ ajax (xx))? И как мне связать это с формой? функции запускаются при нажатии кнопки – Coderrrr

0

Вам понадобится сценарий PHP, по которому вы отправляете данные («casinofile»), чтобы действовать на данные, которые AJAX отправляет, а затем возвращает некоторые инструкции. Например, с помощью приведенного выше кода, вы могли бы иметь в PHP:

if ($_POST['action'] == 'spin-wheel') { 
    echo spinWheel(); 
} 

Это вернет результат spinWheel(), которая может быть, в зависимости от того, в какую игру мы берем о (я предполагаю, что в рулетку), 6B (6 черных). Функция успеха загружает результирующие данные echo ред по PHP:

$.ajax({ url: '/lib/casinofile', 
    data: {action: 'spin-wheel'}, 
    type: 'post', 
    success: function(result) { 
     alert(result); 

    } 
}); 

который будет alert(), в данном случае, «B6.»

Откровенно говоря, если возможно, вам может быть лучше переписать игру в Javascript, чем пытаться получить доступ к уже написанным функциям PHP с помощью AJAX. Они должны быть достаточно легкими для перевода.

+0

Извините, это немного вопрос о нобе, но в моей форме, когда я помещаю действие, он приводит меня к странице с именем действия, например action = 'spin wheel' принимает меня to domain/spin% wheel есть способ, которым я могу это сделать с запросами? $ _REQUEST ['submit']) == «Spin Wheel») – Coderrrr

+0

Также, где бы я поставил этот код? На фактической странице игры у меня есть несколько операторов if, чтобы проверить, есть ли у пользователя средства для игры, а затем проверить, действительно ли они нажали кнопку, если $ _REQUEST == xx, а затем вызывает функцию spinwheel мог бы/я мог бы поставить ajax-код вместо функции, явно закрывающей??> сначала? – Coderrrr

0

Чтобы остановить страницу с освежающим, вы будете нуждаться, чтобы добавить

return false; 

в сценарии. Убедитесь, что он находится в конце скрипта, после этого ничего не будет выполнено.

Это всего лишь один шаг, вам также понадобится отдельный .php-файл для выполнения вашего кода. И это совсем другая история.

Этот учебник может заставить вас идти в правильном направлении: http://net.tutsplus.com/tutorials/javascript-ajax/submit-a-form-without-page-refresh-using-jquery/

Удачи!

0

Прежде всего, вы не могли загрузить функцию с вашего бокового сервера (php script) на вашу сторону клиента (javascript), однако вы могли бы выполнить (запустить) функцию на стороне сервера и получить результаты на стороне клиента , Это действительно просто, вероятно, у вас есть более одной функции на этом файле, то мы делаем в вашем Java Script

$.ajax({ 
    url: '/lib/casinofile.php', 
    data: { 
     action: 'spin-wheel' 
    }, 
    type: 'post', 
    success: function(spinwheelMessage) { 
        alert(spinwheelMessage); 

       } 
}); 

на файле PHP будет

<?php 

function spinWheel() { 
    /** something to do here **/ 
    return 'Hey, this is really simple'; 
} 

if ($_POST['action'] == 'spin-wheel') { 
    echo spinWheel(); 
} 

Не забудьте назвать ваш PHP файл в PHP файл, я имею в виду casinofile.php вместо просто casinofile, главным образом, потому что если ваша Lib папка не является ограничением, это можно было бы назвать и показать тест как простой текст

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