За последние 24 часа нас посетили 16727 программистов и 1644 робота. Сейчас ищут 1105 программистов ...

Создаю корзину на ajax

Тема в разделе "JavaScript и AJAX", создана пользователем Robin777, 31 июл 2008.

  1. Robin777

    Robin777 Активный пользователь

    С нами с:
    19 июл 2008
    Сообщения:
    8
    Симпатии:
    0
    Привет всем. Я не такой ещё профи в аяксе... вот беда (делаю корзину с использованием аякса+прототипа+пхп)... не понимаю, что я не так делаю...
    Вставил на свою старницу (http://домен1/) Prototype JavaScript framework version 1.6.0.2, между head:

    [js]<script type="text/javascript" src="js/prototype.js"></script>[/js]

    Затем вставил явакод (тоже между head):

    [js]<script type="text/javascript"><!--
    function pokupka() {
    var url = 'http://домен2/tccnd/cent.php';
    var params = 'cn=1215154';
    var ajax = new Ajax.Updater (
    {success: 'tccont'},
    url,
    {method: 'get',
    parameters: params,
    onFailure: centerror}
    );
    }
    function centerror(request) {
    $('tccont').innerHTML = "Ошибка";
    }
    // --></script>[/js]

    Потом у нас идёт такая форма уже между body:

    HTML:
    1. <table border="0" width="100%" cellspacing="0" cellpadding="2" class="entryTable">
    2. <tr><td class="entryTextTd" colspan="2">ля-ля</td></tr>
    3. <tr><td class="entryDetailsTd1" colspan="2"><a href="javascript://" onclick="pokupka();">Купить</a></td></tr>
    4. <div class="catPages1">&nbsp;</div>
    5. </td>
    6. <td align="right" valign="top"><div class="rightcol">
    7. <div class="block">
    8. <div class="blockhead">Авторизация</div>
    9. <div class="blockcont1">ля-ля</div>
    10. </div>
    11. <br /><br /><br />
    12. <div class="block">
    13. <div class="blockhead">Корзина</div>
    14. <div class="blockcont1">
    15. <div id="tccont"></div>
    16. </div>
    17. </div>
    18. </form>
    Код файла http://домен2/tccnd/cent.php:

    PHP:
    1. <?php
    2. echo($_GET['cn']);
    3. ?>
    По идеи при нажатии на "Купить" у нас вот между "<div id="tccont">" и "</div>" должно отобразится значение "cn" (в моём примере это 1215154) без перезагрузки, т.е. ajax, но этого почему-то не происходит... вообще ничего не отображается там... почему? Может ли быть дело в том, что весь код расположен на одном сервере (http://домен1/), а вот cent.php на другом (http://домен2/tccnd/cent.php)?
     
  2. Морфин

    Морфин Активный пользователь

    С нами с:
    1 авг 2008
    Сообщения:
    3
    Симпатии:
    0
    Ты же шлёшь запрос через AJAX на другой домен так я понял? Тогда будет ругаться браузер на нарушение политики безопасности. Ищи различные способы обхода и реализуй 1 из них. Я сделал так: Ajax шлёт запрос на локалый php-шник, который в свою очередь шлёт GET на нужное место и потои из AJAX возвращаю вывод локального PHP-шника.