Проблема с $.ajax
var vimg = $('#vimg'); var id = $(this).attr('t8'); var curr = 1; vimg.bind("click", function(){ $.ajax({ url: "chpho.php", type: "POST", data: "ph8=" + id + "&imgnum=" + curr, success: function(result){vimg.remove();$("<img src='<?php echo DOMAIN ?>" + result + "' alt=''>").appendTo('#wrap');curr++;} }); }); В result приходит полностью текущая страница.:blink: В чем проблема? Может я что-то не так делаю? result получает ведь, только то, что было выведено в php файле с помощью echo? В данном случае, должен приходить url из базы. Я проверял php содержимое, там всё выводится, как положено. Через firebug проверил, данные отсылаются успешно. Через console.log(result); выводит все дерево DOM элементов текущей страницы. Я даже не знаю, почему так, может кто-то объяснить? Если потребуется, то выложу содержимое chpho.php |
Так и должно быть. В ответе сервера содержится целая страница. Анализируйте result, находите в нем нужный элемент и его вставляйте.
$(result).find(...).append(...) |
Чет нету там...
А по идее должна приходить примерно такая вот ссылка: /images/thumbnails800/2009-08-26/19/593542429c20e17aee6b787db9e25cc652d0713b.jpg в результате не нашел, даже попробовал ссылку уже готовым тэгом img с id внутри печатать. Что не так делаю? :| |
А что возвращает страница chpho.php с передаваемыми параметрами, если просто в адресной строке набрать? По обрывкам скриптов сложно решить проблему.
|
Вот это:
/images/thumbnails800/2009-08-26/19/593542429c20e17aee6b787db9e25cc652d0713b.jpg Напрямую выводит её без проблем. Что $.ajax принимает за ответ в php файле? Всё то, что было вызвано функцией "echo" или же он принимает ответ основываясь на каких-то других действиях/процессах в php файле? Может он берет ответ строго из тех скобок, где проверка выдала TRUE? Заранее спасибо за объяснения! Ребята я нашел в чем проблема была. Какая же мелочь и я не заметил... Думаю эту проблему стоит в FAQ запихнуть гденибуть тут. Проблема была в пути к файлу chpho.php . Всем кто использует написанный на php "clean url" не забывайте выводить путь. Я делаю это обычно так: "<?php echo DOMAIN; ?>chpho.php" DOMAIN содержит доменное имя. Надеюсь это комунибуть пригодится. Всем спасибо за помощь. То есть url: "chpho.php", с скрипте дожно быть url: "<?php echo DOMAIN; ?>chpho.php", |
Часовой пояс GMT +3, время: 16:41. |