ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
 |
|

05.07.2008, 16:36
|
|
Постоянный
Регистрация: 24.05.2008
Сообщений: 589
Провел на форуме: 3629857
Репутация:
504
|
|
э.. а эта формула не рулит? $price = $price * (1 + $pros / 100); вроде намного короче получается...
|
|
|

05.07.2008, 16:38
|
|
Участник форума
Регистрация: 01.07.2008
Сообщений: 175
Провел на форуме: 881554
Репутация:
66
|
|
я периодически(в цикле) считываю данные,
но если их нет, то ПХП ждет, когда они появятся, а мне нужно чтоб он сразу! возвращал false.
while(!feof($sock)) {}
ничего сложного тут нет
|
|
|

05.07.2008, 16:42
|
|
Познающий
Регистрация: 25.04.2008
Сообщений: 51
Провел на форуме: 146826
Репутация:
17
|
|
Сообщение от PHPoozy
while(!feof($sock)) {}
ничего сложного тут нет
Может я плохо обьясняю....
Перечитайте мой пост и попробуйте понять его смысл.
т.е. если данных на данный момент нет - нужно пропустить считку на этот раз,
если есть - считать
Последний раз редактировалось agrofyl2; 05.07.2008 в 16:44..
|
|
|

05.07.2008, 16:49
|
|
Участник форума
Регистрация: 01.07.2008
Сообщений: 175
Провел на форуме: 881554
Репутация:
66
|
|
agrofyl2
while(!feof($sock)) {
if(fgets($sock, 1024) == ""){ break; }
}
---
|
|
|

05.07.2008, 16:50
|
|
Постоянный
Регистрация: 24.05.2008
Сообщений: 589
Провел на форуме: 3629857
Репутация:
504
|
|
$b = fgets($fp);
if ($b !== '') {то что надо сделать если пришли данные на сокет} else {то что надо сделать если данные на сокет не пришли}
первое что в голову пришло
|
|
|

05.07.2008, 17:03
|
|
Участник форума
Регистрация: 01.07.2008
Сообщений: 175
Провел на форуме: 881554
Репутация:
66
|
|
Кто на ты с регулярками?
|
|
|

05.07.2008, 17:10
|
|
Познающий
Регистрация: 25.04.2008
Сообщений: 51
Провел на форуме: 146826
Репутация:
17
|
|
Ладно, спасибо всем кто "помог", думаю тут быстроработающего рещения небудет
Последний раз редактировалось agrofyl2; 05.07.2008 в 17:18..
|
|
|

05.07.2008, 17:23
|
|
Постоянный
Регистрация: 20.12.2006
Сообщений: 350
Провел на форуме: 1903667
Репутация:
584
|
|
Помогите оживить скрипт.
PHP код:
<?
$accsfile = "accs.txt";
$logsfile = "logs.txt";
$host = "vkontakte.ru";
$urlfriends = "/friend.php"; // страница, откуда будем парсить френдов
$urlmail = "/mail.php"; // страница, откуда будем парсить secure-код и рассылать мессаги
$title[] = "Привет!";
$title[] = "Доброго времени дня!";
$message[] = "Как поживаешь?";
$message[] = "привет! Как твои дела?";
set_time_limit(0);
function GetPage($domain, $path, $cookie) { $hostname = gethostbyname($domain);
$responce = "";
$errnum=0;
$errstr="";
$fsock = fsockopen($hostname,80,$errnum,$errstr,5);
if(!$fsock) { return 0; }
$headers = "GET $path HTTP/1.0\r\n". "Host: $domain\r\n". "User-Agent: Mozilla/5.0\r\n". "Accept: */*\r\n". "Content-Type: application/x-www-form-urlencoded\r\n". "$cookie". "Connection: close\r\n". "\r\n";
fwrite($fsock,$headers);
while(!feof($fsock)) { $responce .= fread($fsock,1024); } fclose ($fsock);
return $responce; } // статус работы будем выводить в отдельный DIV
function SetStatus($status){
echo "<script>document.getElementById('statusDiv').innerHTML='$s tatus';</script>"; } // лог пишем в файл и по желанию в отдельный DIV (раскоментить echo)
function SetLog($logmsg){ $fp=@fopen($GLOBALS["logsfile"], "a"); fwrite($fp, $logmsg."/r/n"); fclose($fp); //
echo "<script>document.getElementById('logDiv').innerHTML = '".$logmsg."<br>'+ document.getElementById('logDiv').innerHTML;</script>";
SetStatus($logmsg); }
function SendMail($from_id, $to_id, $t, $msg){ SetLog("SendMail $from_id:$to_id:$t:$msg"); // достаём secure
$mailpage = GetPage($GLOBALS["host"], $GLOBALS["urlmail"]."?act=write&to=".$to_id, $GLOBALS["logincookies"][$from_id]); preg_match_all('/name="secure" value="(\w+)/', $mailpage, $mailsecure); foreach ($mailsecure[1] as $sss) {$secure=$sss;} SetLog("Parsed secure-code from ".$from_id." to ".$to_id.": ".$secure); // формируем post-запрос отправки
$post="secure=$secure&photo=&to_id=$to_id&to_reply=0&act=sent&title=$t&message=$msg";
$len = strlen($post); $query = "POST ".$GLOBALS["urlmail"]." HTTP/1.1\r\n". "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1;.NET CLR 1.1.4322; .NET CLR 2.0.50215)\r\n". "Host: ".$GLOBALS["host"]."\r\n". $GLOBALS["logincookies"][$from_id]. "Content-Type: application/x-www-form-urlencoded\r\n". "Connection: close\r\n". "Content-Length: $len\r\n". "\r\n". "$post";
$conn = fsockopen($GLOBALS["host"], 80, $errno, $errstr, 1000); fputs($conn, $query);
while (!feof($conn)) { $ss = fgets($conn, 128); } }
$fp=@fopen($accsfile,"r");
while(!feof($fp)){ $account = trim(fgets($fp));
$ac = explode(":", $account);
$id = $ac[0];
$email = $ac[1];
$md5 = md5($ac[2]);
$accs[] = $id;
$logincookies[$id] = "Cookie: remixchk=2; remixmid=$id; remixemail=$email; remixpass=$md5\r\n"; }fclose($fp);
$maxsize = 0;
foreach ($accs as $curracc){ $currfriendspage = GetPage($host, $urlfriends, $logincookies[$curracc]); preg_match_all("/write&to=(\w+)/", $currfriendspage, $currfriends);
foreach ($currfriends[1] as $currfriend){ $friends[$curracc][] = $currfriend; }
$currsize = sizeof($friends[$curracc]);
if ($currsize>$maxsize) $maxsize = $currsize; }
echo "<table id='tableFr' border=1 cellspacing=0 cellpadding=0>". "<tr id='trFr0'>". "<td id='tdFr0_0'></td>";
for ($i=1;$i<=$maxsize;$i++) { echo "<td id='tdFr0_$i'>Friend$i</td>";};
echo "</tr>";
$n=1;
foreach ($accs as $curracc){ echo "<tr id='trFr$n'>";
echo "<td id='tdFr".$n."_0'>id$curracc</td>";
for ($i=0;$i<sizeof($friends[$curracc]);$i++) { echo "<td id='tdFr".$n."_".($i+1)."'>".$friends[$curracc][$i]."</td>";};
for ($i=$i;$i<$maxsize;$i++) {echo "<td id='tdFr".$n."_".($i+1)."'>_</td>";};
echo "</tr>"; $n++; } echo "</table>". "<div style='border-width:1;border:1;color:#0000FF' id='statusDiv'></div><br>". "<div id='logDiv'></div>";
for($i=0;$i<$maxsize;
$i++){ for($j=0;$j<sizeof($accs);
$j++){ if ($i<sizeof($friends[$accs[$j]])) {
echo "<script>document.getElementById('tdFr".($j+1)."_".($i+1)."').style.backgroundColor = '#0000FF';</script>";
SetStatus("Sending from ".$accs[$j]." to ".$friends[$accs[$j]][$i]);
SendMail($accs[$j], $friends[$accs[$j]][$i], $title[$%2], $message[$i%2]);
echo "<script>document.getElementById('tdFr".($j+1)."_".($i+1)."').style.backgroundColor='#00FF00';<script>"; }} sleep(1); }
?>
Выдает ошибку
Parse error: syntax error, unexpected '%', expecting T_VARIABLE or '$' ... on line 60
|
|
|

05.07.2008, 17:29
|
|
Участник форума
Регистрация: 01.07.2008
Сообщений: 175
Провел на форуме: 881554
Репутация:
66
|
|
на 60 строке (SendMail($accs[$j], $friends[$accs[$j]][$i], $title[$%2], $message[$i%2])
переменная не должна содержать ничего кроме латиницы цифр и подчеркивания
ЗАПОМНИ!
|
|
|

05.07.2008, 18:02
|
|
Banned
Регистрация: 14.04.2007
Сообщений: 297
Провел на форуме: 756152
Репутация:
38
|
|
Как мне сделать регистрацию на сайте?
Может у кого нибудь есть готовые скрипты (готовые решения на php) для реализации:
Регистрации пользователя, входа и выхода пользователя (логина, логаута).
PS: GOOGLE не помог выдал треш, да и готовых решений совсем не было, статьи на эту тему безобразные.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|