Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> capcha, для всех браузеров 
:(
    Опции темы
Zzet
  Дата 21.7.2009, 19:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 180
Регистрация: 28.6.2009

Репутация: нет
Всего: нет



здравствуйте такая вот беда! создал защиту capcha в эксплорере работает в смысле картинка появляется а в других браузерах не появляется как это объяснить может что-то упустил ?
PM MAIL   Вверх
SneG0K
Дата 21.7.2009, 19:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Max Mara
***


Профиль
Группа: Завсегдатай
Сообщений: 1887
Регистрация: 1.12.2007
Где: Wis Dells

Репутация: 7
Всего: 54



Zzet, заголовки проверь
PM WWW Skype   Вверх
NetJunky
Дата 21.7.2009, 20:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 277
Регистрация: 11.5.2008
Где: Tallinn

Репутация: 0
Всего: 0



Если, что то может эта тема поможет: http://forum.vingrad.ru/forum/topic-262050.html


--------------------
Sleep, those little slices of death; Oh how I loathe them. © Edgar Allan Poe
Таллиннцы http://vingrad.ru/groups.php?action=group_...mp;group_id=139

Для записи данных объёмом 1 Терабайт на бумагу, нужно срубить 50000 деревьев.
PM MAIL WWW ICQ Skype MSN   Вверх
Zzet
Дата 21.7.2009, 21:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 180
Регистрация: 28.6.2009

Репутация: нет
Всего: нет



как-то не пойму ничего при чем тут заголовки и NetJunky, у меня форма ввода на которой не видно картинки. раскажите пожалуйста про заголовки если можно.

Добавлено через 8 минут и 13 секунд
в общем я взял готовый скрипт для капча. в основном коде
Код

                     session_start();
                    session_register('securityCode');
                  
                    echo "<br><form method='post'>
                    <TABLE WIDTH=60% BORDER=1 ALIGN=left>
                    <TR><TD><left>Введите имя: <font color=red>*</font></left></td>
                        <TD><left><INPUT TYPE='text' name='n1' class='ss' VALUE='".$_REQUEST["n1"]."'></left></TD></TR>  
                    <TR><TD><left>Введите пароль <font color=red>*</font></left></TD>
                        <TD><left><INPUT TYPE='password' name='n2' class='ss' VALUE='".$_REQUEST["n2"]."'></left></TD></TR>
                    <TR><TD colspan=2>";
                       
                  if(isset($HTTP_POST_VARS['securityCode']) && (isset($HTTP_SESSION_VARS['securityCode']) || isset($_SESSION['securityCode']))){
                    if(strtolower($HTTP_POST_VARS['securityCode'])==$HTTP_SESSION_VARS['securityCode'] || strtolower($HTTP_POST_VARS['securityCode'])==$_SESSION['securityCode']){
                        if($_REQUEST["n1"]!="" && $_REQUEST["n2"]!="" && $HTTP_POST_VARS['securityCode']!=="" && $HTTP_SESSION_VARS['securityCode']!=="" && $_SESSION['securityCode']!=="")
                        {                 
                        ?><center><font color=green><br>Защитный код принят<br><a href='index2.php?menu=allcat&n1=<? echo $_REQUEST["n1"]?>&n2=<? echo $_REQUEST["n2"]?>'> Далее >> </a></font></center><br>
                        <?
                        }  else 
                        echo "<br><center><font color=red><br><a href='index2.php'>Введите имя и пароль</font><br><br></a><br></center>";
                    }else{
                      echo "<br><center><font color=red>Неверный защитный код!</font><br><a href='index2.php'>Попробовать еще раз<br><br></a></center>";
                    }    
                   }               
                else{
                ?>
                 <center>
                 <br> Введите этот защитный код<font color=red>*</font> <br>  <br> 
                  <input type="text" name="securityCode" title="Введите код, который изображен на картинке">
                  <br><img src='code.php?<?=doubleval(microtime());?>' width=200 height=70 vspace=10><br>  
               </center>
               <?PHP
                  }
              
                echo "</TD></TR>                                                  
                    <TR><TD colspan=2><center><input type='submit' class='bluebutton' value='  Регистрация  '></center></TD></TR>      
                    </TABLE>";
                    echo "</form>"; 


там где подключается code
Код

<?PHP
 /****************************************************************************************************
 *****************************************************************************************************
 **                                                                                                 **
 **                               Скрипт генерации случайных изображений                            **
 **                                           Версия: 1.1                                           **
 **                                                                                                 **
 **                                      Автор: Афанасьев Артём                                     ** 
 **                                    E-mail:[email protected]                                    **
 **                                            ICQ:1522817                                          **
 **                                          Дата: 06.07.2006                                       **
 **                                                                                                 **
 *****************************************************************************************************
 ****************************************************************************************************/
 
 #####################################################################################################
 #  Настройки
 #####################################################################################################
 
 $C_IMAGE_TYPE = 'PNG';                             //Возможные форматы: GIF, JPEG, PNG
 $C_WIDTH = 120;                                    //Ширина изображения
 $C_HEIGHT = 60;                                    //Высота изображения
 $C_NUM_GENSIGN = 5;                                //Количество символов, которые нужно набрать
 $path_fonts = './fonts/';                          //Путь к шрифтам
 
 #####################################################################################################
 # Принемаем переменные
 #####################################################################################################
 
 $EXT = strtoupper($HTTP_GET_VARS['ext']);
 if($EXT=='GIF' || $EXT=='JPEG' || $EXT=='PNG') $C_IMAGE_TYPE = $EXT;
 if(is_numeric($HTTP_GET_VARS['width']) && $HTTP_GET_VARS['width']>100 && $HTTP_GET_VARS['width']<500) $C_WIDTH = $HTTP_GET_VARS['width'];
 if(is_numeric($HTTP_GET_VARS['height']) && $HTTP_GET_VARS['height']>100 && $HTTP_GET_VARS['height']<500) $C_HEIGHT = $HTTP_GET_VARS['height'];
 if(is_numeric($HTTP_GET_VARS['qty']) && $HTTP_GET_VARS['qty']>2 && $HTTP_GET_VARS['qty']<10) $C_NUM_GENSIGN = $HTTP_GET_VARS['qty'];
 
 #####################################################################################################
 #  Ядро
 #####################################################################################################
 dl ('php_gd2.dll'); 
 session_start();
 session_register('securityCode');
 
 $C_FONT_SIZE = intval($C_HEIGHT/(($C_HEIGHT/$C_WIDTH)*5));
 $C_NUM_SIGN = intval(($C_WIDTH*$C_HEIGHT)/150);
 
 $CODE = array();
 $LETTERS = array('a','b','c','d','e','f','g','h','j','k','m','n','p','q','r','s','t','u','v','w','x','y','z','2','3','4','5','6','7','8','9');
 $FIGURES = array('50','70','90','110','130','150','170','190','210');
 
 //Создаем полотно
 $src = imagecreatetruecolor($C_WIDTH,$C_HEIGHT);
 
 //Заливаем фон
 $fon = imagecolorallocate($src,255,255,255);
 imagefill($src,0,0,$fon);
 
 //Загрузка шрифтов
 $FONTS = array();
 $dir=opendir($path_fonts);
 while($fontName = readdir($dir)){
   if($fontName != "." && $fontName != ".."){
     if(strtolower(strrchr($fontName,'.'))=='.ttf') $FONTS[] = $path_fonts.$fontName;
   }
 }
 closedir($dir);
 
 //Если есть шрифты
 if(sizeof($FONTS)>0){
   //Заливаем полотно буковками
   for($i=0;$i<$C_NUM_SIGN;$i++){
     $h = 1;
     $color = imagecolorallocatealpha($src,rand(0,255),rand(0,255),rand(0,255),100); 
     $font = $FONTS[rand(0,sizeof($FONTS)-1)];
     $letter = $LETTERS[rand(0,sizeof($LETTERS)-1)];
     $size = rand($C_FONT_SIZE-2,$C_FONT_SIZE+2);
     $angle = rand(0,60);
     if($h == rand(1,2)) $angle = rand(360,300);
     //Пишем
     imagettftext($src,$size,$angle,rand($C_WIDTH*0.1,$C_WIDTH-$C_WIDTH*0.1),rand($C_HEIGHT*0.2,$C_HEIGHT),$color,$font,$letter);
   }
 
   //Заливаем основными буковками
   for($i=0;$i<$C_NUM_GENSIGN;$i++){
     //Ориентир
     $h = 1;
     //Рисуем
     $color = imagecolorallocatealpha($src,$FIGURES[rand(0,sizeof($FIGURES)-1)],$FIGURES[rand(0,sizeof($FIGURES)-1)],$FIGURES[rand(0,sizeof($FIGURES)-1)],rand(10,30)); 
     $font = $FONTS[rand(0,sizeof($FONTS)-1)];
     $letter = $LETTERS[rand(0,sizeof($LETTERS)-1)];
     $size = rand($C_FONT_SIZE*2.1-1,$C_FONT_SIZE*2.1+1);
     $x = (empty($x)) ? $C_WIDTH*0.08 : $x + ($C_WIDTH*0.8)/$C_NUM_GENSIGN+rand(0,$C_WIDTH*0.01);
     $y = ($h == rand(1,2)) ? (($C_HEIGHT*1.15*3)/4) + rand(0,$C_HEIGHT*0.02) : (($C_HEIGHT*1.15*3)/4) - rand(0,$C_HEIGHT*0.02);
     $angle = rand(5,20);
     //Запоминаем
     $CODE[] = $letter;
     if($h == rand(0,10)) $letter = strtoupper($letter);
     if($h == rand(1,2)) $angle = rand(355,340);
     //Пишем
     imagettftext($src,$size,$angle,$x,$y,$color,$font,$letter);
   }
   
 //Если нет шрифтов
 }else{
   //Заливаем точками
   for($x=0;$x<$C_WIDTH;$x++){
     for($i=0;$i<($C_HEIGHT*$C_WIDTH)/1000;$i++){
       $color = imagecolorallocatealpha($src,$FIGURES[rand(0,sizeof($FIGURES)-1)],$FIGURES[rand(0,sizeof($FIGURES)-1)],$FIGURES[rand(0,sizeof($FIGURES)-1)],rand(10,30)); 
       imagesetpixel($src,rand(0,$C_WIDTH),rand(0,$C_HEIGHT),$color);
     }
   }
   unset($x,$y);
   //Заливаем основными буковками
   for($i=0;$i<$C_NUM_GENSIGN;$i++){
     //Ориентир
     $h = 1;
     //Рисуем
     $color = imagecolorallocatealpha($src,$FIGURES[rand(0,sizeof($FIGURES)-1)],$FIGURES[rand(0,sizeof($FIGURES)-1)],$FIGURES[rand(0,sizeof($FIGURES)-1)],rand(10,30)); 
     $letter = $LETTERS[rand(0,sizeof($LETTERS)-1)];
     $x = (empty($x)) ? $C_WIDTH*0.08 : $x + ($C_WIDTH*0.8)/$C_NUM_GENSIGN+rand(0,$C_WIDTH*0.01);
     $y = ($h == rand(1,2)) ? (($C_HEIGHT*1)/4) + rand(0,$C_HEIGHT*0.1) : (($C_HEIGHT*1)/4) - rand(0,$C_HEIGHT*0.1);
     //Запоминаем
     $CODE[] = $letter;
     if($h == rand(0,10)) $letter = strtoupper($letter);
     //Пишем
     imagestring($src,5,$x,$y,$letter,$color);
   }
 }
 
 //Получаем код
 $HTTP_SESSION_VARS['securityCode'] = implode('',$CODE);
 $_SESSION['securityCode'] = implode('',$CODE);
 
 //Печать
 if($C_IMAGE_TYPE=='PNG'){
   header ("Content-type: image/png"); 
   imagepng($src);
 }elseif($C_IMAGE_TYPE=='JPEG'){
   header ("Content-type: image/jpeg"); 
   imagejpeg($src);
 }else{
   header ("Content-type: image/gif"); 
   imagegif($src);
 }
 imagedestroy($src);
?>



проверял на нусфере -все отлично?
PM MAIL   Вверх
icewind
Дата 21.7.2009, 23:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 393
Регистрация: 11.4.2009
Где: Ростов-на-Дону

Репутация: 20
Всего: 20



Весь html код в топку... Пардон, но так писать нельзя. Половина тэгов заглавными, половина строчными, значения атрибутов без кавычек... Устаревшие и не закрытые тэги нужно исправить. Есть firebug? Что он показывает на запрос картинки? Какой ответ пришел?


--------------------
user posted image
PM MAIL Skype   Вверх
NetJunky
Дата 22.7.2009, 10:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 277
Регистрация: 11.5.2008
Где: Tallinn

Репутация: 0
Всего: 0



icewind, +1 к HTML.


--------------------
Sleep, those little slices of death; Oh how I loathe them. © Edgar Allan Poe
Таллиннцы http://vingrad.ru/groups.php?action=group_...mp;group_id=139

Для записи данных объёмом 1 Терабайт на бумагу, нужно срубить 50000 деревьев.
PM MAIL WWW ICQ Skype MSN   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0719 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.