Показать сообщение отдельно
  #2 (permalink)  
Старый 03.05.2015, 00:28
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Зачем href="id1", просто цифры (если нет иных параметров запроса в url, иначе лучше использовать data для задания id), да и в случае, если url будет содержать иные цифры кроме указанных в href ссылок, то номер id будет неверным.
<li><a href="1">Товары для отдыха</a></li>
<li><a href="2">Товары для дома</a></li>
<li><a href="3">Специальные ножи</a></li>
<li><a href="4">Детские санки</a></li>

Метод .leve() устарел, да и этот метод для динамически создаваемых элементов, если список UL со ссылками всегда на странице, то он не нужен и достаточно .click(). Иначе метод .on() с делегированием обработки события onclick ближайшему родителю гарантировано присутствующему на странице.

$('.container a').click(function(e) {
        e.preventDefault();
        $.ajax({
            type: "POST",
            url: "ajax.php",
            data:"id="+this.href.split('/').pop(),
            success: function(data) {    
                $('#container2').hide().html(data).fadeIn(200);    
            }
        });
    });

Зачем повторять такое же $('#container2') не понятно, нужно все привести к одному обработчику.
На стороне сервера так:
а) если ajax.php обрабатывает только эти запросы по параметру id, то не надо никаких isset($_POST['id']), а нужно проверять истинность параметра, ибо работа этого скрипта начнется только именно по POST запросу. Кроме того, даже если поступать так, то уже не if(isset($inter)), а if($inter).
б) если ajax.php обрабатывает различные запросы по различным ключам, то нужно определять имя ключа, тут уже можно и isset($_POST['id']), и switch по ключам, и т.п...
Если а), то:
if($id = (int)$_POST['id']) {
    //запрос к базе
    //только что может дать
    printf ("%s",$q['links']);
    //кроме самих значений полей для html, конечно, если база не хранит html-кода
} //иначе параметр не id

Последний раз редактировалось laimas, 03.05.2015 в 00:48.
Ответить с цитированием