ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #9261  
Старый 08.03.2009, 11:56
mailbrush
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме:
6075534

Репутация: 2731


Отправить сообщение для mailbrush с помощью ICQ
По умолчанию

Велемир, если капча не очень сложная - перебирают попиксельно.
 
Ответить с цитированием

  #9262  
Старый 08.03.2009, 12:43
Gifts
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
Провел на форуме:
2769640

Репутация: 1304


По умолчанию

imajo.ati Смотря как именно реализовано. Следующий код у меня нормально работает и на винде и на никсах
PHP код:
#!/usr/local/bin/php
<?php
$port 
9050;
$sock stream_socket_server('tcp://0.0.0.0:'.intval($port), $errno$errstr);
$clients = array($sock);

while (
true
{
 
$read $clients;
 if (
stream_select($read$write NULL$except NULL5) < 1)
 continue;

 if (
in_array($sock$read)) 
 {
  
$clients[] = $newsock stream_socket_accept($sock);
  
fwrite($newsock"Welcome to server\r\n");
  
$ip stream_socket_get_name($newsocktrue);
  echo 
"New client connected: {$ip}\n";
  
$key array_search($sock$read);
  unset(
$read[$key]);
 }

 foreach (
$read as $read_sock
 {
  
$data = @fgets($read_sock1024);
  if (
$data === false
  {
   
$key array_search($read_sock$clients);
   unset(
$clients[$key]);
   echo 
"client disconnected.\n";
   continue;
  }

  
$data trim($data);

  if (!empty(
$data)) {
   foreach (
$clients as $send_sock
   {
    if (
$send_sock == $sock || $send_sock == $read_sock)
    continue;

    
fwrite($send_sock$data."\r\n");
   }
  }
 } 
}
fclose($sock);
?>
 
Ответить с цитированием

  #9263  
Старый 08.03.2009, 13:14
initab
Новичок
Регистрация: 25.01.2009
Сообщений: 4
Провел на форуме:
11532

Репутация: 1
По умолчанию

Цитата:
Сообщение от _SEREGA_  
Я так себе понимаю синтаксис но не врубаюсь куда пихать код, я хостинг на hut.ru зарегал

может посоветуете нормальный хостинг (бесплатный конечно) с полноценным пхп?
Должно было окошко с текстом появиться?
Нет. Команда echo просто выведет в экран браузера данные, которые ты ей указал в параметрах. То есть результатом твоей программы будет:
Код:
<html>
<head>
<title>Тестируем PHP</title>
</head>
<body>
Hello, world!
</body>
</html>
Именно это прилетит в браузер (можешь посмотреть HTML код в браузере). Соответственно, ты увидишь только фразу "Hello, world!".

Насчет фришного хостинга: загугли "Бесплатный хостинг PHP". Из личного опыта: tut.su, ayola.net - бесплатные, но постят рекламу, а также следят за тем, что ты у них размещаешь.
Для разработки программ на php лучше подними у себя web-сервер с php. Это не так сложно. Зато получишь полный доступ ко всем настройкам php (очень важно при разработке программ) и не будешь мучаться с заливкой файлов.
 
Ответить с цитированием

  #9264  
Старый 08.03.2009, 14:28
VaTTka
Познающий
Регистрация: 10.12.2008
Сообщений: 36
Провел на форуме:
844207

Репутация: 47
Отправить сообщение для VaTTka с помощью ICQ
По умолчанию

Знаю что тема заезженная, но на форуме по поиску не нашел. Как проверить поля на соответствие?
Тоесть чтоб в поле e-mail вводили мыло, и т.п. Чтобы поля не были пустыми. Вроде слышал что нужен AJAX скрипт. Подскажите пожалуйста.
п.с. насчет этого никто не поможет? http://forum.antichat.ru/showpost.php?p=1155867&postcount=9314
 
Ответить с цитированием

  #9265  
Старый 08.03.2009, 14:40
spamoney
Участник форума
Регистрация: 26.12.2006
Сообщений: 107
Провел на форуме:
228267

Репутация: 27
По умолчанию

Здравствуйте, помогите правильно составить регулярку, что бы если строка более N-го количества символов (допустим более 40), то эта строка обрезается по последний пробел, пробывал сам, вот что получилось:

Код:
function cut ($str, $dlina='40') {
if (preg_match('#^([\s\S]{'.$dlina.'}[^\!\.\?]*)[\.\!\?]#i',strip_tags($str),$match)) $code = $match[1];
else if (preg_match('#^([\s\S]{'.$dlina.'}[^\ \&nbsp;]*)[\ \&nbsp;]#i',strip_tags($str),$match)) $code = $match[1];

return $code; 
    }


$text='Исследование программных продуктов, защит программного обеспечения, низкоуровневое программирование';
echo "Символов до: ".strlen(strip_tags($text))."<br />";
$text=cut($text);
echo "$text<br />";
echo "Символов после: ".strlen(strip_tags($text))."<br /><br /><br />";


$text='Исследование программных продуктов, защитатников';
echo "Символов до: ".strlen(strip_tags($text))."<br />";
$text=cut($text);
echo "$text<br />";
echo "Символов после: ".strlen(strip_tags($text))."<br />";
но функция cut(); работает только если текст более 40 символов и после этих 40 символов есть пробел, вот код выполнения:

Код:
Символов до: 99
Исследование программных продуктов, защит
Символов после: 41


Символов до: 48

Notice: Undefined variable: code in script.php on line 8

Символов после: 0
А нужно что бы было так:
Код:
Символов до: 99
Исследование программных продуктов, защит
Символов после: 41


Символов до: 48
Исследование программных продуктов
Символов после: 34
 
Ответить с цитированием

  #9266  
Старый 08.03.2009, 15:00
initab
Новичок
Регистрация: 25.01.2009
Сообщений: 4
Провел на форуме:
11532

Репутация: 1
По умолчанию

Цитата:
Сообщение от VaTTka  
Знаю что тема заезженная, но на форуме по поиску не нашел. Как проверить поля на соответствие?
Тоесть чтоб в поле e-mail вводили мыло, и т.п. Чтобы поля не были пустыми. Вроде слышал что нужен AJAX скрипт. Подскажите пожалуйста.
п.с. насчет этого никто не поможет? http://forum.antichat.ru/showpost.php?p=1155867&postcount=9314
Делается это вот так:
Код:
<HTML>
<head>
<SCRIPT LANGUAGE="JavaScript">
function checkIt() {

//Проверка поля mail формы form1
if (document.forms.form1.mail.value != "") {
} else {
alert("Не заполнено поле \"Мыло\" в форме. \n\nПожалуйста, введите мыло.");
document.forms.form1.mail.focus();
return false;
}

//Сюда можно вставить проверку других полей

return true;
}
</SCRIPT>

</head>
<body>
<form action="" method="GET" name="form1">
Мыло:  <input type="text" name="mail" value="" size="30" />
<input type="submit" value="Отправить" onclick="return checkIt()"/>
</form>
</body>
</HTML>
Поясню, как это работает:
При нажатии кнопки отправить вызывается функция ChekIt(), если она возвращает True, то данные отправляются, в противном случаи - нет.
В функции ChekIt() необходимо проверить каждое поле на "заполненность":
Код:
if (document.forms.form1.mail.value != "") {
} else {
alert("Не заполнено поле \"Мыло\" в форме. \n\nПожалуйста, введите мыло.");
document.forms.form1.mail.focus();
return false;
}
В том порядке, в котором ты хочешь, чтобы возвращались сообщения об ошибках, если не заполнено несколько полей. Этот кусок кода проверяет, заполнено ли поле mail, и, если нет, сообщает об ошибке, переводит курсор в это поле и возвращает False, чтобы форма не отправлялась на сервер. Для обработки других полей скопируй этот кусок кода столько раз, сколько необходимо. Только не забудь исправить имя поля (в ДВУХ местах) и поправить текст сообщения.
Ну и в конце функции, если все поля успешно заполнены, то возвращаем true.

Последний раз редактировалось initab; 08.03.2009 в 17:05..
 
Ответить с цитированием

  #9267  
Старый 08.03.2009, 15:55
VaTTka
Познающий
Регистрация: 10.12.2008
Сообщений: 36
Провел на форуме:
844207

Репутация: 47
Отправить сообщение для VaTTka с помощью ICQ
По умолчанию

initab,
со вторым полем проблема, не проверят поле password. Изменил все как положено..
Код:
if (document.forms.password.password.value != "") {
} else {
alert("Не заполнено поле \"Пароль\" в форме. \n\nПожалуйста, введите свой пароль."); // выводит сообщение, если поле Subject не заполнено
document.forms.password.password.focus();
return false;
}

Последний раз редактировалось VaTTka; 08.03.2009 в 16:07..
 
Ответить с цитированием

  #9268  
Старый 08.03.2009, 16:08
Gifts
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
Провел на форуме:
2769640

Репутация: 1304


По умолчанию

spamoney Как-то так
PHP код:
function cut($str,$len=40)
{
    if (
strlen($str)<=$len) return $str;
    else {
preg_match('~^([\s\S]{' intval($len) . '}[^ ]*)?~'$str,$match); return $match[1];}
    return 
false;
}
$str='Исследование программных продуктов, защит программного обеспечения, низкоуровневое программирование';

echo 
strlen($str).'-----'.cut($str); 
 
Ответить с цитированием

  #9269  
Старый 08.03.2009, 16:24
spamoney
Участник форума
Регистрация: 26.12.2006
Сообщений: 107
Провел на форуме:
228267

Репутация: 27
По умолчанию

Цитата:
Сообщение от Gifts  
spamoney Как-то так
PHP код:
function cut($str,$len=40)
{
    if (
strlen($str)<=$len) return $str;
    else {
preg_match('~^([\s\S]{' intval($len) . '}[^ ]*)?~'$str,$match); return $match[1];}
    return 
false;
}
$str='Исследование программных продуктов, защит программного обеспечения, низкоуровневое программирование';

echo 
strlen($str).'-----'.cut($str); 

Пасиб, но немного не то, если берем строчку:

Код:
$str='Исследование программных продуктов, низкоуровневое программирование';
то на выходе получим:

Код:
67-----Исследование программных продуктов, низкоуровневое
а нужно что б было так:

Код:
36-----Исследование программных продуктов,
т.е нужно что б строка на выходе была меньше или равна 40 символам и была обрезана по последнему пробелу (что бы не обрезалось пол слова)
 
Ответить с цитированием

  #9270  
Старый 08.03.2009, 16:31
KIR@PRO
Постоянный
Регистрация: 26.12.2007
Сообщений: 353
Провел на форуме:
905389

Репутация: 332
Отправить сообщение для KIR@PRO с помощью ICQ
По умолчанию

Цитата:
Сообщение от DDoSька  
Если тебе лень печатать,то пожалуйста
.
я в плане оптимизации)
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[c/c++] Новичкам: задаем вопросы _Great_ С/С++, C#, Delphi, .NET, Asm 5420 17.06.2010 13:33
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Форумы 26 15.02.2005 22:57



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ