Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (PHP) GD выдать PNG/JPG с цифрами/буквами при регистрации / 8 сообщений из 8, страница 1 из 1
28.03.2006, 17:33:51
    #33630441
Andriy Likhodid
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) GD выдать PNG/JPG с цифрами/буквами при регистрации
Товарищи, подскажите где можно скачать модуль что б выдавал картинку PNG/JPG с цифрами/буквами для ввода при регистрации... это от спама помогает , может у кого такое есть уже?

вроде обьяснил понятно.. помогите, кто знает.
заранее спасибо!
...
Рейтинг: 0 / 0
28.03.2006, 18:08:26
    #33630555
Zeta
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) GD выдать PNG/JPG с цифрами/буквами при регистрации
Можешь попробовать прозрачные слои, из нескольких сложить картинку. Хотя я не знаю как на самом деле это делается, но если подумать можно до этого способа додуматься ;)

----------------------------------------------------------
! Кофе forever !
------------------------------
...
Рейтинг: 0 / 0
28.03.2006, 18:11:49
    #33630563
Zeta
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) GD выдать PNG/JPG с цифрами/буквами при регистрации
ЗЫ Привет, земляк! Небось Киев:) Админы удалят :(

----------------------------------------------------------
! Кофе forever !
------------------------------
...
Рейтинг: 0 / 0
28.03.2006, 18:15:48
    #33630572
DocAl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) GD выдать PNG/JPG с цифрами/буквами при регистрации
Сорри за длинный пост, лишнее вырезать некогда.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
211.
<?php
include_once('config.inc.php');

	
session_start();

function rand_string($len =  10 ){
	$e = base64_encode(pack("h*", sha1(mt_rand())));
	return substr(strtr($e, "+/=", "xyz"),  0 , $len);
}

function check_email($email){
	$pattern_email="~^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*$~i";
	return preg_match($pattern_email, $email);
}

function captcha_image(){
	header ('Content-type: image/png');
	$image = @imagecreate( 110 ,  24 );
	$background = imagecolorallocate($image,  51 , 153 , 153 );
	$text_colour = imagecolorallocate($image,  255 ,  204 ,  102 );
	#    imagestring($image,  5 ,  9 ,  4 , $_SESSION['captcha'], $text_colour);
	imagettftext($image,  11 ,  0 ,  10 ,  19 , $text_colour, '../tahoma.ttf', $_SESSION['captcha']);
	imagepng($image);
	imagedestroy($image);
	exit;
}

if (isset($_GET['image'])) { //create the image
	if(empty($_SESSION['captcha']))exit;
	captcha_image();
} else {  // html section
	if ((isset($_POST['login'])) and (isset($_POST['email'])) and (isset($_POST['password']))) { //Проверка, нажата ли кнопка входа в систему
		$link = mysql_connect($dbhost, $dbuser, $dbpasswd) or die(mysql_error());
		mysql_select_db($db, $link) or die(mysql_error());
		$query_select_user = sprintf($stub_query_select_user, mysql_real_escape_string($_POST['email']), mysql_real_escape_string($_POST['password']));
		$result_select_user = mysql_query($query_select_user) or die(mysql_error());
		if($row_select_user = mysql_fetch_array($result_select_user)) {
			$_SESSION['email'] = $row_select_user['email'];
			$page_header = sprintf($stub_page_header, 'Login page', '<META HTTP-EQUIV="Refresh" CONTENT="3; URL=http://'.$_SERVER['HTTP_HOST'].'/">');
			echo $page_header;
			?>
			<h1>Welcome back!</h1>
			You have logged in as <?=htmlspecialchars($_SESSION['email'])?>
			<?php
			exit;
		} else {
			$page_header = sprintf($stub_page_header, 'Login page', '');
			echo $page_header;
			?>
			<h1>Authorisation failed</h1>
			Either email or password you've supplied is incorrect. Please try again or register new account.
			<?php
			}
		} elseif (isset($_POST['register'])) { //Проверка, нажжата ли кнопка регистрации
			if(check_email($_POST['email'])){
				if($_POST['captcha'] == $_SESSION['captcha']){
					$link = mysql_connect($dbhost, $dbuser, $dbpasswd) or die(mysql_error());
					mysql_select_db($db, $link) or die(mysql_error());
					$query_insert_user = sprintf($stub_query_insert_user, mysql_real_escape_string($_POST['email']), mysql_real_escape_string($_POST['password']));
					$result_insert_user = mysql_query($query_insert_user) or die(mysql_error());
					$_SESSION['email'] = $_POST['email'];
					$page_header = sprintf($stub_page_header, 'Login page', '<META HTTP-EQUIV="Refresh" CONTENT="3; URL=http://'.$_SERVER['HTTP_HOST'].'/">');
					echo $page_header;
					$mail_registration_body = sprintf($stub_mail_registration_body, htmlspecialchars($_POST['email']), htmlspecialchars($_POST['password']));
					mail($_SESSION['email'], "New account registration.", $mail_registration_body, $mail_registration_header);
					?>
					<h1>Welcome aboard!</h1>
					You have succesfuly registered new user for email <?=htmlspecialchars($_SESSION['email'])?> and now loged on.
					<?php
					exit;
				} else {
					$page_header = sprintf($stub_page_header, 'Login page', '');
					echo $page_header;
					?>
					<h1>Wrong CAPTCHA code</h1>
					Please try again with new CAPTCHA code if you're human being.
					<?php
				}
			} else {
				$page_header = sprintf($stub_page_header, 'Login page', '');
				echo $page_header;
				?>
				<h1>Wrong email</h1>
				The email you've supplied is not correct. Please enter correct one.
				<?php
			}
		} else {
			$page_header = sprintf($stub_page_header, 'Login page', '');
			echo $page_header;
			?>
			<h1>Introduce yourself</h1>
			<?php
		}
	
	}
	$_SESSION['captcha'] = rand_string();
	?>

<table style="text-align: left; width: 572px;" border="1" cellpadding="2" cellspacing="2">

  <tbody>

    <tr>

      <td style="text-align: left; width: 243px;">
Please login, if you're registered user</td>

      <td style="text-align: left; width: 317px;">or
register, if you're a new one</td>

    </tr>

    <tr>

      <td style="width: 243px;" class="rightline">
      <form method="post" action="login.php" name="login"> <br>

        <table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">

          <tbody>

            <tr>

              <td style="text-align: right;">email:</td>

              <td><input maxlength="100" size="10" name="email"></td>

            </tr>

            <tr>

              <td style="text-align: right;">password: </td>

              <td><input maxlength="10" size="10" name="password" type="password"></td>

            </tr>

            <tr align="center">

              <td> </td><td align=left><input name="login" value="login" type="submit"></td>

            </tr>

          </tbody>
        </table>

        <br>

      </form>

      </td>

      <td style="width: 317px;">
      <form method="post" action="login.php" name="register"> <br>

        <table style="text-align: left; width: 270px; height: 252px;" border="1" cellpadding="2" cellspacing="2">

          <tbody>

            <tr>

              <td style="text-align: right;">email:</td>

              <td><input maxlength="100" size="10" name="email"></td>

            </tr>

            <tr>

              <td style="text-align: right;">password:</td>

              <td><input maxlength="10" size="10" name="password" type="password"></td>

            </tr>

            <tr>

              <td style="text-align: right;">CAPTCHA code:</td>

              <td><img src="http://<?=$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']?>?image" alt="captcha image" height="24" width="110"></td>

            </tr>

            <tr>

              <td style="text-align: right;">enter CAPTCHA
code:</td>

              <td><input maxlength="10" size="10" name="captcha"></td>

            </tr>

            <tr align="center">

              <td> </td><td align=left><input name="register" value="register" type="submit"></td>

            </tr>

          </tbody>
        </table>

      </form>

      </td>

    </tr>
  </tbody>
</table>
    
</body>
</html>
...
Рейтинг: 0 / 0
28.03.2006, 22:44:51
    #33630948
twistfire
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) GD выдать PNG/JPG с цифрами/буквами при регистрации
ищите по слову captcha и найдете уйму скриптов
...
Рейтинг: 0 / 0
29.03.2006, 15:44:45
    #33632846
Andriy Likhodid
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) GD выдать PNG/JPG с цифрами/буквами при регистрации
ZetaЗЫ Привет, земляк! Небось Киев:) Админы удалят :(

----------------------------------------------------------
! Кофе forever !
------------------------------

Привет :) спасибо за помощь!
Житомир!
...
Рейтинг: 0 / 0
29.03.2006, 18:54:12
    #33633490
Andriy Likhodid
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) GD выдать PNG/JPG с цифрами/буквами при регистрации
twistfireищите по слову captcha и найдете уйму скриптов
спасибо!
кое что уже нашол.
...
Рейтинг: 0 / 0
30.03.2006, 15:31:04
    #33635452
Andriy Likhodid
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PHP) GD выдать PNG/JPG с цифрами/буквами при регистрации
спасибо за помощь!

но есть проблема:

регистрирую переменную сессии, н о в месте (скрипте) где происходит прорисовка картинки не видно етой переменной ( $_SESSION['captcha'] )
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (PHP) GD выдать PNG/JPG с цифрами/буквами при регистрации / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]