Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

30.03.2010, 08:17
|
|
Познающий
Регистрация: 15.02.2009
Сообщений: 54
Провел на форуме: 142825
Репутация:
7
|
|
где можно достать такую, готовою уже. или, может, подскажите чего в реализации  Javascript не очень...

|
|
|

30.03.2010, 16:20
|
|
Reservists Of Antichat - Level 6
Регистрация: 25.03.2008
Сообщений: 670
Провел на форуме: 4137635
Репутация:
2407
|
|
http://tinymce.moxiecode.com/
|
|
|

31.03.2010, 16:06
|
|
Moderator - Level 7
Регистрация: 05.11.2007
Сообщений: 894
Провел на форуме: 5609275
Репутация:
1474
|
|
вот функция генератора пароля
Код:
<script type="text/javascript">
function getrandom() {
var A = new Array("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","Y","Z") ;
var b = new Array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","y","z") ;
var dig = new Array("0","1","2","3","4","5","6","7","8","9") ;
var m = new Array(); //итоговоый массив из которого будут браться символы
var count = eval(document.forms[0].elements['count'].value);
var pass="" ;
var r,i=0;
if (count=="") {alert('Введите длину пароля!') ; exit();} //если поле пустое алерт
else if (count>30) {alert('Введите число меньше 31') ; exit();}
else //длину пароля проверили идем дальше
if( document.getElementById("1").checked){m = m.concat(A);} //проверяем какие чекбоксы отметили
if (document.getElementById("2").checked){ m = m.concat(b);}
if (document.getElementById("3").checked){ m = m.concat(dig);}
if (m==0) {alert('отметьте какие символы использовать') ; exit();} //если чекбоксы не отмечены алерт и ехит
else {
while (i<count)
{ pass += m[Math.floor(Math.random() * m.length)] ; //рандомим пароль
i++;
}
}
document.getElementById('qqq').innerHTML =pass; //выводим пароль в нужное поле
} //end fuction
</script>
если отметить все поля как надо то функция работает. проблемы с алертами и ехитами.
например если при ВСЕХ пустых полях нажать кнопку генерировать то аллерт
if (count=="") {alert('Введите длину пароля!') ; exit();} не выскакивает (а пока функцию до конца не дописал выскакивал  )
а сейчас сразу выскакивает вот этот алерт
if (m==0) {alert('отметьте какие символы использовать') ; exit();} и нажимаю кнопку ок выводит сообшение ошибка сценария предполагается наличия объекта (указывает на ; (вот это место) exit()) и точно такая же ошибка сценария если указал большую длину пароля(только указвает на строчку к совему алерту).
что я не так делаю с алертами? почему первый пропускает, а на следующие выдает ошибку сценария?
вот на всякий случай целиком страничка
Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251">
<meta name="generator" content="PSPad editor, www.pspad.com">
<title>
</title>
<style type="text/css"> body{ background-color: grey; font-family: Arial,Helvetica,sans-serif color: white; } TABLE { color: white;} td { border:white solid 1px cellspacing="0" } h1 {color:goldenrod }
</style>
<script type="text/javascript">
function getrandom() {
var A = new Array("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","Y","Z") ;
var b = new Array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","y","z") ;
var dig = new Array("0","1","2","3","4","5","6","7","8","9") ;
var m = new Array();
var count = eval(document.forms[0].elements['count'].value);
var pass="" ;
var r,i=0;
if (count=="") {alert('Введите длину пароля!') ; exit();} //если поле пустое алерт
else if (count>30) {alert('Введите число меньше 31') ; exit();}
else //длину пароля проверили идем дальше
if( document.getElementById("1").checked){m = m.concat(A);} //проверяем какие чекбоксы отметили
if (document.getElementById("2").checked){ m = m.concat(b);}
if (document.getElementById("3").checked){ m = m.concat(dig);}
if (m==0) {alert('отметьте какие символы использовать') ; exit();} //если чекбоксы не отмечены алерт и ехит
else {
while (i<count)
{ pass += m[Math.floor(Math.random() * m.length)] ; //рандомим пароль
i++;
}
}
document.getElementById('qqq').innerHTML =pass; //выводим пароль в нужное поле
} //end fuction
</script>
</head>
<body>
<tr>
<td colspan="2" >
<h1 align="center" ><b>Генератор пароля </b> </h1> </td>
</tr>
<form>
<table width="300" align="center" border="1" bgcolor="DarkRed" cellpadding="10" cellspacing="0" >
<tbody>
<tr>
<td width='75%' align="right">Количество символов:</td>
<td >
<input name="count" size="5" type="text" maxlength="2" > </td>
</tr>
<tr>
<td align="right"> A-Z</td> <td>
<input name="hi" type="checkbox" id="1">
<br> </td>
</tr>
<tr>
<td align="right"> a-z</td> <td>
<input name="slow" type="checkbox" id="2">
<br> </td>
</tr>
<tr>
<td align="right"> 0-9</td> <td>
<input name="num" type="checkbox" id="3">
<br> </td>
</tr>
<tr>
<td colspan="2" align="right">
<input value="Сброс" type="reset">
<input value="Генерировать" type="button" name="generate" onClick="getrandom();"> </td>
</tr>
</tbody>
</table>
<br>
<br>
<table width="300" align="center" border="1" bgcolor="DarkRed" cellpadding="10" cellspacing="0" >
<tbody>
<tr>
<td height="80px" solid=5px colspan="2" align="center" >
<p id="qqq">Результат
</p></td>
</tr>
</tbody>
</table>
</form>
</body>
</html>
Последний раз редактировалось оlbaneс; 31.03.2010 в 16:10..
|
|
|

31.03.2010, 16:51
|
|
Reservists Of Antichat - Level 6
Регистрация: 25.03.2008
Сообщений: 670
Провел на форуме: 4137635
Репутация:
2407
|
|
eval лишним был. Я добавил проверку на правильность введенного числа регуляркой.
Код:
function getrandom()
{
var A = new Array ("A","B","C","D","E", "F","G","H","I","J","K","L", "M","N","O","P","Q","R","S", "T","U","V","W","Y","Z");
var b = new Array ("a","b","c","d","e", "f","g","h","i","j","k","l", "m","n","o","p","q","r","s", "t","u","v","w","y","z");
var dig = new Array ("0","1","2","3","4", "5","6","7","8","9");
var m = new Array();
var count = document.forms[0].elements['count'].value;
var pass="" ;
var r,i=0;
var reg=/^\d+$/;
if (!reg.test(count))
{
alert('Введите длину пароля!');
return;
} //если поле пустое алерт
if (count>30)
{
alert('Введите число меньше 31');
return;
}
if( document.getElementById("1").checked){m = m.concat(A);} //проверяем какие чекбоксы отметили
if (document.getElementById("2").checked){ m = m.concat(b);}
if (document.getElementById("3").checked){ m = m.concat(dig);}
if (m.length==0)
{
alert('отметьте какие символы использовать');
return;
} //если чекбоксы не отмечены алерт и ехит
while (i<count)
{
pass += m[Math.floor(Math.random() * m.length)] ; //рандомим пароль
i++;
}
document.getElementById('qqq').innerHTML =pass; //выводим пароль в нужное поле
} //end fuction
|
|
|

31.03.2010, 16:54
|
|
Постоянный
Регистрация: 29.07.2009
Сообщений: 400
Провел на форуме: 1455812
Репутация:
150
|
|
if (count==null) {alert('Введите длину пароля!') ; exit();} //если поле пустое алерт
|
|
|

31.03.2010, 17:01
|
|
Moderator - Level 7
Регистрация: 05.11.2007
Сообщений: 894
Провел на форуме: 5609275
Репутация:
1474
|
|
я евал вставил чтобы она только цифры вопринимала.
что за регулярка ? прокомменть эти строчки что бы знал что в гугле учить
var reg=/^\d+$/;
if (!reg.test(count))
2 LStr1ke а, ну да. раньше и без null работало, однако попрежнему пищет ошибка сценария - предпологается наличие объекта ; (вот сюда ссылается)exit()
у дх код работает и понятен. надо только с регуляркой разобраться
Последний раз редактировалось оlbaneс; 31.03.2010 в 17:05..
|
|
|

31.03.2010, 17:05
|
|
Reservists Of Antichat - Level 6
Регистрация: 25.03.2008
Сообщений: 670
Провел на форуме: 4137635
Репутация:
2407
|
|
eval вообще-то выполняет введенный в поле javascript-код в твоем случае 
А это обычное регулярное выражение (PCRE), проверяет, чтобы в поле были введены только десятичные цифры. Кстати, проверку >0 я забыл сделать. Гугли RegExp в JavaScript.
Последний раз редактировалось d_x; 31.03.2010 в 17:08..
|
|
|

31.03.2010, 17:10
|
|
Moderator - Level 7
Регистрация: 05.11.2007
Сообщений: 894
Провел на форуме: 5609275
Репутация:
1474
|
|
хм, гугл подсказвает что ты прав насчет эвал. в моей книжке написано что эвал типа проверка на введеные данные чтобы цифры были. хреновая видать книжка
спасибо. всем ++
во. нашел - крутая статья http://javascript.ru/RegExp
Последний раз редактировалось оlbaneс; 31.03.2010 в 17:36..
|
|
|

02.04.2010, 14:04
|
|
Участник форума
Регистрация: 07.08.2007
Сообщений: 136
Провел на форуме: 2010588
Репутация:
653
|
|
Срочно нужно Задано одновимірний масив цілих чисел, визначити значення найменшого елементу і вивести його на екран.
|
|
|

02.04.2010, 15:28
|
|
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме: 9220514
Репутация:
3338
|
|
Код:
<script>
function maxelem (v) {
var m= v[0]
for (var i=1; i <= v.length-1; i++) {
if (v[i] > m )
m= v[i]
}
return m
}
function minelem (v) {
var m= v[0]
for (var i=1; i <= v.length-1; i++) {
if (v[i] < m )
m= v[i]
}
return m
}
var a= new Array (1,2,3,4,5,6,7);
// Максимальный элемент
alert(maxelem(a));
// Минимальный элемент
alert(minelem(a));
</script>
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|