Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Подгрузка скрипта - ошибка
 
 автор: 1prom   (05.01.2010 в 22:39)   письмо автору
 
 

Здравствуйте!

Вот этот рабочий скрипт



<script src="lib/JsHttpRequest/JsHttpRequest.js"></script>
        <SCRIPT language="Javascript">
  function sml(sml_theme) {

       JsHttpRequest.query(
            'sml.php', {'sml_theme': sml_theme},
            function(result, errors) {
                document.getElementById("sml").innerHTML = errors;
            }
        ); 
    }
</script>

<center><a onclick=sml('default')><b>Смайлики</b></a>
<div id="sml"><br>




Подгружает из файла sml.php


<?
require_once "lib/JsHttpRequest/JsHttpRequest.php";

$JsHttpRequest =& new JsHttpRequest("windows-1251");

$sml_theme $_REQUEST['sml_theme'];


if(
$sml_theme=="default"){
?>
<img src=sml/2.gif onclick="ааа.document.body.innerHTML+='<img src='+this.src+'>';">
<img src=sml/3.gif onclick="ааа.document.body.innerHTML+='<img src='+this.src+'>';">
<img src=sml/4.gif onclick="ааа.document.body.innerHTML+='<img src='+this.src+'>';">
<?}?>


его содержимое и все работает.

Но стоит мне переименовать файл sml.php в sml2.php и в подгружаемом скрипте поменять 'sml.php' на 'sml2.php' скрипт становится нерабочим.

Подскажите, пожалуйста, где еще нужно сделать замену 'sml.php' на 'sml2.php' или что-то другое нужно изменить?

  Ответить  
 
 автор: Diplex   (05.01.2010 в 23:34)   письмо автору
 
   для: 1prom   (05.01.2010 в 22:39)
 

Видимо, Вы пропускаете ещё где-то какую-то деталь... просмотрите весь код и все подгружаемые файлы..

  Ответить  
 
 автор: 1prom   (05.01.2010 в 23:49)   письмо автору
 
   для: Diplex   (05.01.2010 в 23:34)
 

все равно не пойму ((
Я даже сделал копию 2-х файлов - из которого подгружаю и которого подгружаю скрипт и изменил название подгужаемого файла. Только первый вариант был рабочим, а второй нет (((

  Ответить  
 
 автор: 1prom   (06.01.2010 в 00:08)   письмо автору
 
   для: 1prom   (05.01.2010 в 23:49)
 

Получается, что я не могу добавить файлы (скрипты), которые могут подгружаться к страницам.
А все существующие работают.
Может все подгружаемые файлы где то прописаны, кроме JsHttpRequest.query('sml.php'...
Кто знает?

  Ответить  
 
 автор: Diplex   (06.01.2010 в 11:05)   письмо автору
 
   для: 1prom   (06.01.2010 в 00:08)
 

Вот вам-то и виднее.. ищите sml.php во всём остальном коде,включая JsHttpRequest.js

  Ответить  
 
 автор: 1prom   (06.01.2010 в 11:17)   письмо автору
 
   для: Diplex   (06.01.2010 в 11:05)
 

В JsHttpRequest.php и JsHttpRequest.js - там точно нет. Остальные скрипты только мои, там нет. Это где - то на сервере у провайдера, даже не знаю...

  Ответить  
 
 автор: ride   (06.01.2010 в 16:51)   письмо автору
 
   для: 1prom   (06.01.2010 в 00:08)
 

может RewriteRule ?

  Ответить  
 
 автор: 1prom   (06.01.2010 в 20:24)   письмо автору
 
   для: ride   (06.01.2010 в 16:51)
 

мне стыдно признаться, но я даже не знаю, где на сервере этот файл (RewriteRule) есть...
В .htaccess и php.ini все чисто

  Ответить  
 
 автор: ride   (06.01.2010 в 22:29)   письмо автору
 
   для: 1prom   (06.01.2010 в 20:24)
 

mod_rewrite
"скрипт становится нерабочим" - подрбнее. какие ошибки выводятся.
на разных браузерах проверяли?

  Ответить  
 
 автор: Рома   (06.01.2010 в 22:50)   письмо автору
 
   для: ride   (06.01.2010 в 22:29)
 

У него onclick не срабатывает, а вы ему mod_rewrite парите :)

  Ответить  
 
 автор: ride   (06.01.2010 в 23:08)   письмо автору
 
   для: Рома   (06.01.2010 в 22:50)
 

>>Но стоит мне переименовать файл sml.php в sml2.php и в подгружаемом скрипте
>>поменять 'sml.php' на 'sml2.php' скрипт становится нерабочим.
из этих слов понятно, что топикстартер имя функции не менял.

  Ответить  
 
 автор: 1prom   (07.01.2010 в 00:31)   письмо автору
 
   для: ride   (06.01.2010 в 23:08)
 

А зачем имя функции менять? Я меняю только имя файла, что подгружаю, но он не подгружается

  Ответить  
 
 автор: 1prom   (07.01.2010 в 00:45)   письмо автору
 
   для: 1prom   (07.01.2010 в 00:31)
 

Вы себе представить не можете, у меня один файл подгружаемый, я в него накидал скриптов у же под 1 метр. Но он же не может расти до бесконечности и давить на сервер.

Сейчас я перед подгрузкой передаю дополнительную переменную purp, а потом в зависимости от нее вывожу нужный скрипт.

if($purp=="purp1"){?>


<?}

  Ответить  
 
 автор: ride   (07.01.2010 в 00:46)   письмо автору
 
   для: 1prom   (07.01.2010 в 00:31)
 

а я и не говорю менять.
из того, что вы привели, имхо, можно сказать, что все должно работать.

  Ответить  
 
 автор: niXmale   (07.01.2010 в 04:39)   письмо автору
 
   для: ride   (06.01.2010 в 23:08)
 

>>>Но стоит мне переименовать файл sml.php в sml2.php и в подгружаемом скрипте
>>>поменять 'sml.php' на 'sml2.php' скрипт становится нерабочим.
>из этих слов понятно, что топикстартер имя функции не менял.

из этих слов понятно, что функции javascript требуют пересмотра, но автор этого пока не отстрелил.

  Ответить  
 
 автор: 1prom   (07.01.2010 в 00:29)   письмо автору
 
   для: Рома   (06.01.2010 в 22:50)
 

onclick срабатывает - в конце функции проверяю:

alert("Функция работает");

  Ответить  
 
 автор: 1prom   (07.01.2010 в 00:55)   письмо автору
 
   для: ride   (06.01.2010 в 22:29)
 

Проверял В ІЕ, Опера, Мозилла скрипт рабочий, а файл не тянет

  Ответить  
 
 автор: ride   (07.01.2010 в 00:59)   письмо автору
 
   для: 1prom   (07.01.2010 в 00:55)
 

то есть, у вас js такой(проверьте внимательно! исправлено только sml.php на sml2.php, больше ничего):
<script src="lib/JsHttpRequest/JsHttpRequest.js"></script>
        <SCRIPT language="Javascript">
  function sml(sml_theme) {

       JsHttpRequest.query(
            'sml2.php', {'sml_theme': sml_theme},
            function(result, errors) {
                document.getElementById("sml").innerHTML = errors;
            }
        ); 
    }
</script>

<center><a onclick=sml('default')><b>Смайлики</b></a>
<div id="sml"><br>

давайте сюда свой исправленный вариант.

  Ответить  
 
 автор: 1prom   (07.01.2010 в 01:08)   письмо автору
 
   для: ride   (07.01.2010 в 00:59)
 

Да я даже не скрипт подгрузки копировал, а сам рабочий файл с скриптом, дабы ничего лишнего не нарушить. В нем я изменил файл подгрузки в одном месте

  Ответить  
 
 автор: 1prom   (07.01.2010 в 01:11)   письмо автору
 
   для: 1prom   (07.01.2010 в 01:08)
 

В новом файле с скриптом подгрузки когда я ссылаюсь на старый файл - подгрузка идет, а на новый - нет :((

  Ответить  
 
 автор: 1prom   (07.01.2010 в 01:13)   письмо автору
 
   для: 1prom   (07.01.2010 в 01:11)
 

sml.php и sml2.php - файлы одинаковые, отличаются только названием

  Ответить  
 
 автор: ride   (07.01.2010 в 01:13)   письмо автору
 
   для: 1prom   (07.01.2010 в 01:11)
 

может у вас 2 функции sml?
прикрепите коды.

  Ответить  
 
 автор: 1prom   (07.01.2010 в 01:21)   письмо автору
 
   для: ride   (07.01.2010 в 01:13)
 

нет, там проверено - alert("Функция работает");

  Ответить  
 
 автор: 1prom   (07.01.2010 в 01:25)   письмо автору
517 байт
 
   для: 1prom   (07.01.2010 в 01:21)
 

Вот код, но я тут его уже 10 раз изменял (упрощал, пробовал)

  Ответить  
 
 автор: kosta_in_net   (07.01.2010 в 07:45)   письмо автору
 
   для: 1prom   (07.01.2010 в 01:25)
 

Лично мне, чтобы понять, что происходит, всегда требовалось увидеть весь код всех файлов. В 90% случаев оказывалось, что говоривший говорил не то, что думал, думал, не то, что делал, а делал не то, что хотел и, в результате, показывал совершенно не ту часть кода, искал не ту проблему и не в том месте.
Думаю, чтобы помочь решить задачу, нужно весь код поставить у себя, запустить и увидеть результат. ИМХО

  Ответить  
 
 автор: ride   (07.01.2010 в 09:38)   письмо автору
 
   для: 1prom   (07.01.2010 в 01:25)
 

а лоад.пхп?

  Ответить  
 
 автор: 1prom   (07.01.2010 в 15:26)   письмо автору
724 байт
 
   для: ride   (07.01.2010 в 09:38)
 

load.php

  Ответить  
 
 автор: 1prom   (07.01.2010 в 15:27)   письмо автору
20.2 Кб
 
   для: 1prom   (07.01.2010 в 15:26)
 

JsHttpRequest.php

  Ответить  
 
 автор: 1prom   (07.01.2010 в 15:28)   письмо автору
14.1 Кб
 
   для: 1prom   (07.01.2010 в 15:27)
 

JsHttpRequest.js (на всякий случай)

  Ответить  
 
 автор: 1prom   (07.01.2010 в 18:31)   письмо автору
 
   для: 1prom   (07.01.2010 в 15:28)
 

Только lоad.php - подгружается но изменив его на другой файл, скрипт перестает работать
На сервере работают еще 2 подгружаемых файла add_script.php и sml.php

  Ответить  
 
 автор: 1prom   (02.02.2010 в 23:55)   письмо автору
 
   для: 1prom   (07.01.2010 в 18:31)
 

Нашел причину!!!!!!!!!!!!!

в php.ini -

auto_prepend_file = "menu.php"
auto_append_file = "down.php"

а вот в menu.php есть такие строчечки:

$fc = $_SERVER['PHP_SELF'];

if ($fc=="/add_script.php"){
require_once "lib/JsHttpRequest/JsHttpRequest.php";
$JsHttpRequest =& new JsHttpRequest("windows-1251");
$purp = $_REQUEST['purp'];

}


if ($fc=="/load.php"){
require_once "lib/JsHttpRequest/JsHttpRequest.php";
$JsHttpRequest =& new JsHttpRequest("windows-1251");
$lan = $_REQUEST['lan'];
}


if ($fc=="/sml.php"){
require_once "lib/JsHttpRequest/JsHttpRequest.php";
$JsHttpRequest =& new JsHttpRequest("windows-1251");
}

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования