Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: обновление каптчи
Форумы портала PHP.SU » Клиентская разработка » JavaScript & VBScript » обновление каптчи

Страниц (3): [1] 2 3 »
 

1. Вездеход - 27 Января, 2009 - 09:20:43 - перейти к сообщению
народ, знаю что такая тема была - на основе нее я и пробовал писать...

так вот. вывожу картинку каптчи так:

<img src="{captcha_img}" border="0" id="captcha">

{captcha_img} - это для шаблонизатора. сюда прописывается путь к картинке в виде:
captcha/index.php


сам скрипт для обновления вывожу так:

CODE (text):
скопировать код в буфер обмена
  1. <script language="javascript" type="text/javascript">
  2.     function captchareload()
  3.         {
  4.                 document.getElementById('captcha').src = '{captcha_img}';
  5.         );
  6.         </script>
  7.     <img src="{captcha_img}" border="0" id="captcha">
  8. <small><a href="#" onclick="javascript:captchareload()">(обновить)</a></small>
  9.  




что я делаю не правельно?
у меня не обновляется =(
браузер - FF2
2. Stierus - 27 Января, 2009 - 09:45:18 - перейти к сообщению
меняем
CODE (text):
скопировать код в буфер обмена
  1. <script language="javascript" type="text/javascript">
  2. function captchareload()
  3. {
  4. document.getElementById('captcha').src = '{captcha_img}';
  5. );
  6. </script>
На
CODE (text):
скопировать код в буфер обмена
  1. <script language="javascript" type="text/javascript">
  2. function captchareload()
  3. {
  4. document.getElementById('captcha').src = '{captcha_img}';
  5. };
  6. </script>


ps
Бублик, я думал это уже сгенерированная страница
3. Бублик - 27 Января, 2009 - 09:49:05 - перейти к сообщению
Ну так если у него javascript генерится с помошью php и на этой же странице, то почему вы считаете, что в нем не будут заменяться {captcha_img}?
4. Вездеход - 27 Января, 2009 - 10:28:30 - перейти к сообщению
Stierus, а что меняется то? чет я не заметил ничего =)

Бублик, у меня не генерится. есть шаблон со скриптом, и туди лиш прописывается пусть к капче. =)
(Добавление)
попробовал. как я и думал - все тоже самое =)
5. Stierus - 27 Января, 2009 - 10:31:06 - перейти к сообщению
Цитата:
Stierus, а что меняется то? чет я не заметил ничего =)
А ты дословно скопируй и замени, а потом посимвольно сравнивай, особо обрати внимание на закрывающую "}"
6. Вездеход - 27 Января, 2009 - 10:41:26 - перейти к сообщению
Stierus, правда. не заметил...

но тем не менее - заменить то я заменил, однако ничего не происходит =(
7. Stierus - 27 Января, 2009 - 10:47:17 - перейти к сообщению
У тебя проблема в яваскрипте или в php ? Если в яваскрипте - выкладывай итоговую страницу, которая непосредственно у пользователя, если в php - будем разбираться с Php, пора отделять мух от котлет.
8. Вездеход - 27 Января, 2009 - 11:33:46 - перейти к сообщению
проблема в жаве

вот код какой в итоге выводится на странице у пользователя:

CODE (text):
скопировать код в буфер обмена
  1.  
  2. <tr>
  3.     <td><big>Проверка *</big><br><small>Введите код, которое вы видите на картинке</small></td>
  4.     <td>
  5.  
  6.     <script language="javascript" type="text/javascript">
  7. function captchareload()
  8. {
  9. document.getElementById('captcha').src = 'captcha/index.php';
  10. };
  11. </script>
  12.     <img src="captcha/index.php" border="0" id="captcha"> <small><a href="#" onclick="javascript:captchareload()">(обновить)</a></small><br>
  13.                 <input type="text" name="contact[keystring]" size="10" style="font-size:20px;"></td>
  14.   </tr>


и этот код НЕ обновляет каптчу. дело в жаве, а в чем конкретно я не знаю - в жаве не шарю ибо...
пхп тут никак не влияет
(Добавление)
новые подробности =))

в IE обновляет нормально...
в мазиле - все еще нет... жава включена - другие скрипты работают...
9. Бублик - 27 Января, 2009 - 11:42:02 - перейти к сообщению
FF очень придирчив к "правильности" кода

Вот вам совет: поставьте FF, и на него установите FireBug. Очень хорошая штука. Показывает ошибки в javascript-коде. Я лично только им и пользуюсь для поисков ошибок.
10. Вездеход - 27 Января, 2009 - 12:02:06 - перейти к сообщению
Бублик, в консоли ошибок у FF нет ничего касательно выполнения скрипта =(
может есть какие нить особенности в написании скрипта для FF, которые не учтены?
11. Бублик - 27 Января, 2009 - 13:05:57 - перейти к сообщению
Просто какая-то часть не соответствует стандарту, которого так рьяно придерживается лис.
12. Вездеход - 27 Января, 2009 - 13:30:00 - перейти к сообщению
Бублик, а вот какая ? =)
13. Бублик - 27 Января, 2009 - 13:47:25 - перейти к сообщению
Скажу вот что. С кодом все в порядке. Дело в кешировании.

Например вот такой код заменяет картинки, но одними и тем же:
CODE (text):
скопировать код в буфер обмена
  1. <td>
  2.  
  3. <script language="javascript" type="text/javascript">
  4.  
  5.   var i = 2;
  6.   var antibotfile = 'antibot';
  7.   function c()
  8.   {
  9.     document.getElementById("captcha").src = antibotfile+i+'.php';
  10.     if(i==2) i=1; else i=2;
  11.   }
  12.  
  13. </script>
  14. <img src="antibot1.php" border="0" id="captcha"> <small><a href="#" onclick="c(); return false;">(обновить)</a></small><br>
  15. <input type="text" name="contact[keystring]" size="10" style="font-size:20px;"></td>
  16. </tr>


Пытался избавиться от кэширования:
PHP:
скопировать код в буфер обмена
  1.  header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Date in the past
  2.  header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); // always modified
  3.  header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
  4.  header("Pragma: no-cache"); // HTTP/1.0


Не получилось.
14. Stierus - 27 Января, 2009 - 13:47:57 - перейти к сообщению
поставь вместо "captcha/index.php" 2 разные картинки и посмотри что будет
15. Бублик - 27 Января, 2009 - 13:49:14 - перейти к сообщению

И все таки я вас опередил Улыбка Это с учетом моих тестов на эту тему Улыбка

 

Powered by ExBB FM 1.0 RC1