PDA

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


Страницы : 1 2 [3] 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66

genom--
19.09.2007, 21:15
))) нет

n1†R0x
19.09.2007, 21:18
На некоторых серверах нельзя изменить данный параметр, насколько я знаю. Пример - джино.

Piflit
19.09.2007, 21:19
На некоторых серверах нельзя изменить данный параметр, насколько я знаю. Пример - джино.
было бы весело, если на бесплатном хостинге это можно было сделать+))

genom--
19.09.2007, 22:07
а может прекращение работы скрипта с чемнибудь другим свзяано кроме этого?? хз просто иногда и без эрора от сервера просто типо прекращает работать и все

Digimortal
19.09.2007, 22:09
но серавно на некоторых серваках он работает но потом вылетает с эрором о конфигурации сервера

как заставить работать его постоянно чтобы не случилось -- или это из-за конфига php??
это из-за конфига пхп (максимальное время выполнения скрипта задается в max_execution_time)..

а может прекращение работы скрипта с чемнибудь другим свзяано кроме этого??

еще в конфиге ограничение на используемую сценарием память выставляется..

Piflit
19.09.2007, 22:13
это из-за конфига пхп (максимальное время выполнения скрипта задается в max_execution_time)..
так это же вроде дефолт. а в самом скрипте можно конкретно настраивать

lsass.exe
19.09.2007, 22:19
так это же вроде дефолт. а в самом скрипте можно конкретно настраивать
даже если в скрипте выставить,не факт что это будет работать.

Digimortal
19.09.2007, 22:20
>> так это же вроде дефолт. а в самом скрипте можно конкретно настраивать

далеко не всегда.. обычно как раз юзерам на многих хостингах запрещают самостоятельно выставлять эти параметры..

Piflit
19.09.2007, 22:30
далеко не всегда.. обычно как раз юзерам на многих хостингах запрещают самостоятельно выставлять эти параметры..
я так понял, что речь идет о небесплатном хостинге=) в противном случае смысл это обсуждать. там и так все по полной урезано)

ant0ha
19.09.2007, 22:32
далеко не всегда.. обычно как раз юзерам на многих хостингах запрещают самостоятельно выставлять эти параметры..
set_time_limit(0) и ini_set("max_execution_time", 0) это одно и тоже, единственное нельзя будет их изменить при включенном safe_mode

Digimortal
19.09.2007, 22:38
>> set_time_limit(0) и ini_set("max_execution_time", 0) это одно и тоже, единственное нельзя будет их изменить при включенном safe_mode

не только при safe_mode, можно ведь в disable_functions прописать..

genom--
19.09.2007, 22:56
пишу в обшем ифреймер чисто для себя перепробывал уже около 15 серваков пока нинаодном скрипт не проработал до конца списка (список большой) --- вот такая бяка =(

Ponchik
20.09.2007, 12:21
просто иногда и без эрора от сервера просто типо прекращает работать и все
Просто так не бывает О_о
Убери @ и посомотри, может там выдаёт ошибку какуюнить... А скрипт завершается без ошибок только если он сделал всю свою работу или сервер убил процесс php.exe потомучто он долго работал, тоже вариант ;)

Ещё везде в скприптах пропиши
echo 'test 1';
echo 'test 2';
echo 'test 3';
...
И посомтри до какого он теста доработает, сделай это несколько раз, если вырубает на одном и томже тесте, значит проблема в скрипте, а если в разных местах, пиши уже админам, это изних ук дело ИМХО

NOmeR1
20.09.2007, 13:45
Ещё везде в скприптах пропиши
echo 'test 1';
echo 'test 2';
echo 'test 3';
А лучше "проверять" с помощью or die('Test 1');

Например
ignore_user_abort(1) or die('Test 1');

Ponchik
20.09.2007, 18:24
NOmeR1, тоже вариант, хотя я сомневаюсь... Ведь ошибок нет + во всех функциях это писать, не кайф

SIBON
20.09.2007, 21:52
ребят плиз не подскажите скрипт отправлющий пост запрос через сокет и записывающий в текстовый файл третью строчку ответа (с меня +10))

Ponchik
20.09.2007, 22:33
SIBON, телепаты в отпуске! Тебе на каком языке?
Вотъ РНР
http://php.net/fsockopen
(с меня +10))
Сматри какбы на +1 хватило :D
P.S. Судя по всему ты не разберёшся, стучи 202-995-022 или в стенку головой :D

gergi
21.09.2007, 10:59
Подскажите новичку: есть поле ввода текста, всё содержимое его отправляется по нажатию кнопки скрипту, как сделать чтоб по нажатию кнопки отпровлялись не только данные из input но и данные какой либо переменной.

groundhog
21.09.2007, 11:08
Внутри формы делаешь "скрытое" поле ввода, вот пример:

<input id="secret" type="hidden" name="some_var" value="...">
Такое поле не отображается на странице, но если оно находится в пределах вормы, то в action-скрипте будет созданна переменная $some_var с соответствующим value значением.

Ponchik
21.09.2007, 12:30
А может он имеет в виду типо логин и пасс юзверя всевремя держать при себе так сказать? :) Тогда нужны сессии
Куданить до вывода текста (обычно в первую строку config.php если такой используется) пропиши session_start(); потом при логине пиши $_SESSION['username'] = $переменая_с_именем; потом эта перемегная будет доступна в любом скрипте... Если ты это имеешь в виду...

Moldman
24.09.2007, 20:09
Мне нужно создать вот такую форму http://investmarket.ru/ApplicationNew.asp на PHP но без MySQL

lsass.exe
24.09.2007, 20:11
Мне нужно создать вот такую форму http://investmarket.ru/ApplicationNew.asp на PHP но без MySQL
какую форму?У меня просто белая страница а по бокам навигация =\

Moldman
24.09.2007, 20:58
lsass.exe короче на Investmarket.ru жми на
Разместить заявку =>Бизнес Продажа=>и тут появится форма

zindi
25.09.2007, 00:55
такая ошыбка
Fatal error: Call to a member function query() on a non-object in /modules/category_block.php on line 49
49.$db->query("SELECT p.category, COUNT(p.category) AS cnt FROM ".PREFIX."_post p WHERE p.approve = 1 AND p.date<=NOW() GROUP BY category");
Самое странное что отображаетса в другом скрипте который к даному модуле не имеет
ни каких зацепок.Может гуру скажут что за ошыбка и как можна исправить положения.Зарание спс.

groundhog
25.09.2007, 11:54
Fatal error: Call to a member function query() on a non-object in /modules/category_block.php on line 49
Означает, что ты пытаешься вызвать метод у неинициализированного объекта. У объекта, как я понимаю $db. Сделай var_dump($db), посмотри где он инициализируется. Как я понимаю $db - это какая-то абстракция для работы с БД. Возможно, что ты неверно указал реквизиты соединения с БД, в следствие чего не может быть создан объект. Вообще, после создания объекта хорошо было бы проверить корректность его создания, хотя бы с помощью функции is_object.

Ded MustD!e
25.09.2007, 17:00
Нужно связать PHP и XML. У меня есть XML файл с кодом:

<?xml version="1.0" encoding="windows-1251" ?>
<quests>
<quest id="0">Вопрос_1</quest>
<quest id="1">Вопрос_2</quest>
<quest id="2">Вопрос_3</quest>
<quest id="3">Вопрос_4</quest>
<quest id="4">Вопрос_5</quest>
</quests>

Его обрабатывает следующий PHP скрипт:

<?php $dom = domxml_open_file("quest.xml");
$root = $dom->document_element();
$children = $root->get_elements_by_tagname("quest"); ?>

Какой командой мне вывести на экран содержимое тэгов <quest></quest>, т.е. "Вопрос_1" и т.д.?
Не могу найти подходящей команды.

Ni0x
25.09.2007, 17:16
Ded MustD!e,
Насколько помню есть libxml и libxml2 (php4 и php5), поконкретнее надо.

Ded MustD!e
25.09.2007, 17:18
Что именно нужно конкретизировать? Я просто впервые столкнулся с необходимостью использовать xml.

groundhog
25.09.2007, 17:19
<?php

$dom = domxml_open_file("quest.xml");
$root = $dom->document_element();
$children = $root->get_elements_by_tagname("quest");

foreach ($children as $child) {
printf("%s<br>", $child->get_content());
}

?>

Ded MustD!e
25.09.2007, 17:24
выводит, но каериками(
вроде бы кодировка везде проставлена...

groundhog
25.09.2007, 17:32
Ded MustD!e, ну сделай конвертацию через iconv - проблемы уйдут. Я думаю трабла в неверно-настроенных локалях, или переменных окружения.

http://ru.php.net/manual/ru/ref.iconv.php

Ded MustD!e
25.09.2007, 17:35
просто это все вертится на бесплатном хостинге...

groundhog
25.09.2007, 17:41
просто это все вертится на бесплатном хостинге...
Я думаю, что iconv на любом юниксовом хостинге будет доступен без проблем. Фишка в том, что не смотря на пролог твоей XML - парсер сохраняет текстовые данные в кодировке UTF-8, поэтому нужно воспользоваться принудительным конвертом:

<?php

$dom = domxml_open_file("quest.xml");
$root = $dom->document_element();
$children = $root->get_elements_by_tagname("quest");

foreach ($children as $child) {
$value = iconv("UTF-8", "CP1251", $child->get_content());
printf("%s<br>", $value);
}

?>

Ded MustD!e
25.09.2007, 17:42
Большое спасибо, все работает!

Moldman
25.09.2007, 21:54
Как создать скрипт который использует форму чтобы писать информацию в один файл а потом из этого файла она появляется на сайт но на другой странице?

Piflit
25.09.2007, 21:59
Как создать скрипт который использует форму чтобы писать информацию в один файл а потом из этого файла она появляется на сайт но на другой странице?
для начала нужно почитать учебник

*D1VER
26.09.2007, 00:33
Moldman вопрос сформулируй папроще.

zindi
26.09.2007, 02:07
Такой вопросец....нужно закодить данные конекта к базе.Хотел бы увидить способы реализацыи на мд5 и басфе.

$mysql_host = '';
$mysql_user = '';
$mysql_pass = '';
$mysql_dbname = '';

Зарание блогодарен.

halkfild
26.09.2007, 02:24
ну мд5 тут ты не сможешь юзать так как мд5 невозратимое шифрование..

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

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

Ponchik
26.09.2007, 11:23
halkfild, ну почемуже... Можно зэндом закодировать config.php и инклуджить его туда, где используется MySQL
ИМХО отиличное решение :)

Молдован, или как там тебя... Moldman :D
Стучись в аську 202-995-022 помогу ;)

Moldman
28.09.2007, 07:57
Я создал форму которая всю информацию записывает в один файл .dat
Но мне нужно чтоб каждая строка из этого файла превратилось в отдельный Html файл а потом на сайте поевились сылки на них.
Это возможно?

n1†R0x
28.09.2007, 08:40
Я создал форму которая всю информацию записывает в один файл .dat
Но мне нужно чтоб каждая строка из этого файла превратилось в отдельный Html файл а потом на сайте поевились сылки на них.
Это возможно?
<?php
if (!isset($file))
{
print "<form>Введите имя файла:
<input type='text' name='file' /><br />
<input type='submit' value='submit' /></form><br /><br />";
die("Не указано имя файла");
}

$cont = file($file) or die("Файл не существует. <a href='javascript:history.go(-1);'>Назад</a>");
$i = 0;
print "Список ссылок: <br />";
foreach ($cont as $work)
{
$i++;
$name = $file.".$i.html";
$f = fopen($name, "w") or die ("Не могу создать $name. <a href='javascript:history.go(-1);'>Назад</a>");
fwrite ($f, $work);
fclose ($f);
print "<a href='".$name."'>".$name."</a><br />";
}
print "<br /><br />
<strong>Завершено. Обработано $i.</strong>";
?>
Кстати, с помощью одной только формы ничего никуда не запишешь.

Скрипт обрабатывает dat-файл, записывает построчно в разные html-файлы содержимое источника и выводит ссылки на экран.

r0
28.09.2007, 08:42
1.Считать информацию из файла построчно в массив
2.Для каждого элемента(конструкция foreach) массива(т.е строка из файла) создать новый html-файл(т.е открыть его с w+ указателем) и добавить префикс(типа http://saent.org/)+названия.htm в базу.
3. На странице сайта(главной?) считать из базы ссылки

эМ?

sasha72
02.10.2007, 17:54
Warning: mysql_pconnect() [function.mysql-pconnect]: Client does not support authentication protocol requested by server; consider upgrading MySQL client in z:\home\test2.ru\www\inc\db_connect.php on line 6

Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in z:\home\test2.ru\www\inc\db_connect.php on line 7
Ошибка соединения с БД!

Чё делать всегда выдает ошыбку а настроил то всё верно

<?php

$img_server="http://localhost";
$now = time();

$link=mysql_pconnect("localhost","zavodim","1234");
mysql_select_db("zavodim",$link) or die ("Ошибка соединения с БД!");

$uri=GetEnv("REQUEST_URI");
$uri=explode(".....",$uri);

$ips=GetEnv("REMOTE_ADDR");

$ip=explode(".",$ips);


if (($ip[0] == 62 && $ip[1] == 183 && $ip[2] == 53) || $ips=="80.66.247.94" || $ips=="80.66.253.60") {
echo"You are died Go back ";
exit;
}
?>

чё тут может быть не верного пароль 1234 бд zavodim а в чём дело так и не понял Плизззз хелп

groundhog
02.10.2007, 18:17
А что ты настраивал? Он тебе говорит, что клиентская функциональность не поддерживает протокол, предлагаемй сервером. Проблема не в скрипте! Какая версия PHP? Какая версия MySQL? Где у тебя лежит libmysql? В PHP.INI включён php_mysql? Попробуй как альтернативу постоянным соединениям использовать обычные - mysql_connect (просто замени вызов функции)...

ticoll
05.10.2007, 01:31
Приветствую всех.
Есть php скрипт для генерации мыл по словарю, только криво он как-то генерирует, сохраняет сгенерированые мыла в такой спискок:
aback
@mail.com
abacus
@mail.com
abase
@mail.com

Нужно чтобы было:
aback@mail.com
abacus@mail.com
abase@mail.com


Вот сам код скрипта, подскажите плиз где что подправить.

#Coded by R0id (r0id@mail.ru)
<?
$domen = 'mail.com';
$fp = fopen("wordlist.txt", "r");
$fn = fopen("base.txt", "a");
while(!feof($fp))
{
$login = fgets($fp);
fputs($fn, "$login@$domen\n");
}
fclose($fn);
fclose($fp);
?>

Piflit
05.10.2007, 01:39
#Coded by R0id (r0id@mail.ru)
#Modified by Piflit
<?
$domen = 'mail.com';
$fp = fopen("wordlist.txt", "r");
$fn = fopen("base.txt", "a");
while(!feof($fp))
{
$login = fgets($fp);
$login = preg_replace('/[\r\n]*/','',$login);
fputs($fn, "$login@$domen\n");
}
fclose($fn);
fclose($fp);
?>

c411k
05.10.2007, 02:54
<?
//Coded by R0id (r0id@mail.ru)
//Modified by c411k witf participation _toxa_
//grats all members ru_antichat, my family, friends, bash.org.ru, чмоке!!
//ps. and irc.antichat.net #antichat, write me email blablabla and ICQ blalbalba..
$domen = 'mail.com';
$fp = fopen("wordlist.txt", "r");
$fn = fopen("base.txt", "a");
while(!feof($fp))
{
$login = fgets($fp);
fputs($fn, trim($login)."@$domen\r");
}
fclose($fn);
fclose($fp);
?>

NNNS
06.10.2007, 19:55
Делаю простенькую галерею.
Застрял на выводе картинок.

Надо чтобы картинки выводились по 3 штуки в ряду
т.е.

_____ _____ _____
|____| |____| |____|
|____| |____| |____|
|____| |____| |____|

_____ _____ _____
|____| |____| |____|
|____| |____| |____|
|____| |____| |____|

_____ _____ _____
|____| |____| |____|
|____| |____| |____|
|____| |____| |____|

Как это реализовать?
Картинки берутся из таблицы в mysql

Еще интересно как реализовать постраничный вывод

GreenBear
06.10.2007, 20:07
Надо чтобы картинки выводились по 3 штуки в ряду

echo '<table><tr>';
for($i=0;$i<9;$i++){
if($i == 3 || $i == 6 || $i == 9)
echo '</tr><tr><td>image</td>';
else
echo '<td>image</td>';
}
echo '</tr></table>';

помоему проще некуда.
Еще интересно как реализовать постраничный вывод
узнать общее кол-во записей и разделить их на кол-во выводимое на странице.

halkfild
06.10.2007, 20:10
лучше юзать $a % 3==0
типо картинка №3 новая строка таблици.. а постраничный вывод через лимит

просто кода делаешь выборку смотришь сколько тебе надо строк картинок помножить на 3
следущая страница с этой позиции и тд

Joker-jar
06.10.2007, 20:16
Для разбивки на страницы, вероятно, понадобится функция ceil.

Joker-jar
06.10.2007, 20:30
А, ну вот же делал - http://forum.antichat.ru/showpost.php?p=402095&postcount=14

Impuls*
07.10.2007, 17:22
Хочу добавить сервис смайликов для комментариев :)
Например, пишешь двоеточие и правую скобку и картинка появляется)
Но у меня почему-то вместо картинки вылазят html-теги, например, <img src="http://mysite.ru/pic/1.gif" /> Как можно решить эту проблему?Помогите пожалуйста, я понял что это нетрудно, но не допер)) с меня + ;)

Ch3ck
07.10.2007, 17:32
http://www.php.net/str_replace ?

Impuls*
07.10.2007, 17:56
Спасибо за ссылку на мануал, без нее никак.
Жаль, что там конкретно мой пример не рассматривается, ибо я не понял в чем ошибка у меня...
Кто еще что подскажет? :)

Piflit
07.10.2007, 18:11
Спасибо за ссылку на мануал, без нее никак.
Жаль, что там конкретно мой пример не рассматривается, ибо я не понял в чем ошибка у меня...
Кто еще что подскажет? :)
скрипт в студию

Impuls*
07.10.2007, 18:24
Скрипт целиком не вижу смысла выкладывать, ибо проблема в строчках 2 :)
$smile=str_replace(":-)", "<img src=\"/smiles/1.gif\" alt=\":-)\" />", $smile);

halkfild
07.10.2007, 18:44
<?php
$test="lolololo :-)<br> blablabla:-)<br>:-)<br>:-)<br>:-)<br>:-)<br>";
$test=str_replace(":-)", "<img src=\"http://127.0.0.1/lab/1.gif\" alt=\":-)\" />", $test);
echo $test;
?>

эта часть нормально работает.. только что проверял..
кинь весь скрипт.. или..

Impuls*
07.10.2007, 19:06
эта часть нормально работает.. только что проверял..
кинь весь скрипт.. или..
Не знаю, не знаю...у меня просто показывает двоеточие и скобку справа в твоем примере.

Вот отрывок из кода, если поможет...
$kf = @implode("",@file("komment/$komnews.k"));
$kf="$komnews";
$kf=str_replace("::","<br/>",$kf);
$kf=str_replace("||","<br/><br/>",$kf);
$kf=str_replace("&lt;b&gt;&lt;font color=&quot;red&quot;&gt;","<b><font color=\"red\">",$kf);
$kf=str_replace("&lt;/font&gt;&lt;/b&gt;","</font></b>",$kf);
$kf=str_replace(":-)", "<img src=\"/smiles/1.gif\" alt=\":-)\" />", $kf);
В чем дело??Не пойму ничего... :confused:

halkfild
07.10.2007, 19:15
у тя не правильные пути к картинке и потому показывает только альт

клацни правой на твоей картике и посмотри урл картинки.. скорее всего он кривой..

насчет моей тоже самое напиши нормальный путь к картинке на сервере и она отразится а не только ее альт

Impuls*
07.10.2007, 19:24
Какой это неправильный путь? :)
Адрес у меня правильный или я не так понял)
P.S. показывает у меня не альт а всю строку кода:
<img src="pic.gif" />

Red_Red1
07.10.2007, 19:33
Все должно работать!!! Дай для проверки значение которое принимает переменная $kf после строчки $kf="$komnews";

NOmeR1
07.10.2007, 19:38
Чё ты паришься?
$kf = str_replace(':-)','<img src="http://полный_путь.ru/smiles/1.gif" alt="smile">', $kf);
И вообще может быть у тебя там стоит htmlspeciachars или что-то типо этого.

Impuls*
07.10.2007, 19:59
Спасибо всем за помощь, советы!halkfild оказался прав, надо было полностью указывать адрес.

m0rf
08.10.2007, 14:06
Люди добрые помоги пожалуйста! Столкунлся с токой проблемой хочу написать скрипт для извлечения данных из БД. Подскажите где можно найти что то подобное?

groundhog
08.10.2007, 14:10
phpMyAdmin, напимер...

NaX[no]rT
08.10.2007, 14:12
Смотря какая БД. Чаще всего MySQL, а скрипт посмотри на woweb.ru =)) точно что-то подходящее найдешь.

TANZWUT
08.10.2007, 14:13
m0rf держи http://shankar.name/sql.phps
обсуждение https://forum.antichat.ru/thread19797.html

m0rf
08.10.2007, 14:18
Мне нужно под обределенный сайт а там только с локал хоста можно залогинится, есть уязвимость SQL Инъекция. шелл не залить. пробовал вручную вот так http://site.site/index.php?id=-3+union+select+concat_ws(0x3a,name,pass,email),2+f rom+users+limit+0,1/* но приходится постоянно менять параметр, короче гемор получается

TANZWUT
08.10.2007, 15:17
тогда читай следующее:
https://forum.antichat.ru/threadnav24918-1-10.html
https://forum.antichat.ru/threadnav28461-1-10.html

scrat
08.10.2007, 22:13
как скопировать текст в буффер обмена?

Red_Red1
08.10.2007, 22:18
Если я не прав то поправте, но помоему это можно сделать например нажав клавиши Ctrl+C ;)

!{ra!{e/\/
08.10.2007, 23:02
как выдрать все ссылки допустим с http:\site.xxx?Как 'щелкать' по этим ссылкам?

Ponchik
09.10.2007, 01:15
!{ra!{e/\/, тебе нужно знание HTTP протоколов... Но т.к. мне делать нехер, можешь постучать, разберёмсо :) ася 202-995-022
scrat, ты хочешь из PHP переносить текст в буфер, чтоб его потом можно было вставлять на Ctrl+V :confused:

scrat
09.10.2007, 18:25
scrat, ты хочешь из PHP переносить текст в буфер, чтоб его потом можно было вставлять на Ctrl+V :confused:
именно так

scrat
09.10.2007, 21:14
вот как это на javascript:
window.clipboardData.setData('Text', 'то что копируем');
а как на php?

halkfild
09.10.2007, 21:31
на пхп это в принципе не возможно.. потому что пхп интерпретируется на сервере.. а жабаскрипт выполняется на стороне клиента.. пхп может только вывести текст а ничего сделать непосредственно с клиентом не может

Piflit
09.10.2007, 21:34
на пхп это в принципе не возможно.. потому что пхп интерпретируется на сервере.. а жабаскрипт выполняется на стороне клиента.. пхп может только вывести текст а ничего сделать непосредственно с клиентом не может
а можно через пхп передать js?
например echo("<script>...</script>"); ?

halkfild
09.10.2007, 21:38
а можно через пхп передать js?
например echo("<script>...</script>"); ?

но в буфер запишет жабаскрипт, а не пхп
ему такой вариант вроде не подходит так как она сам написал это решение, но вопрос оставил открытым..


2 scrat делай через пхп+жабаскрипт самим пхп ты этого не сделаешь

Ponchik
10.10.2007, 22:42
Пусть чувак сходит в C++ раздел, пусть ему тама прогу напишут которая запускается с параметром -text и вносит этот text в буфер, а их PHP выполнять system("programm.exe -add to bufer");
ИМХО :)

Meanor
10.10.2007, 23:55
Доброго дня, я столкнулся с одной проблемой в пхп, но не знаю, существует ли вообще ее решение на пхп...
Проблема: нужно чтобы каждые 8 сеунд переменная в бд заменялась на, скажем, rand(0,6) (для примера).

А также, как можно сделать обновление чата? (как заставить фрейм с сообщениями обновиться со стороны сервера?)
Спасибо ^^

groundhog
11.10.2007, 00:57
Проблема: нужно чтобы каждые 8 сеунд переменная в бд заменялась на, скажем, rand(0,6) (для примера).
Кроме как скриптом, который пускается с консоли и в бесконечном цикле засыпает, обновляет переменную и опять засыпает ты это не сделаешь. Даже задачи крона не могут выполняться чаще чем одна минута.

А также, как можно сделать обновление чата? (как заставить фрейм с сообщениями обновиться со стороны сервера?)
Никак. Используй хидер Refresh чтобы инициировать обновление в определённые промежутки времени:

header("Refresh: 5; index.php");

Заставит обновляться страницу один раз в пять секунд и при этом подгружать index.php. Это будет продолжать до тех пор, пока клиент не закроет браузер или не потеряет соединение с веб-сервером.

Ponchik
11.10.2007, 03:08
Проблема: нужно чтобы каждые 8 сеунд переменная в бд заменялась на, скажем, rand(0,6) (для примера).
Пример:
<?php
set_time_limit(0); //Чтоб работал бесконечно
ignore_user_abort(); //Ещё раз чтоб работал бесконечно :)
while(!file_exists("stop_refresh.txt")) { //Будет работать пока не создаш файл stop_refresh.txt
blablabla(); //Заносим в БД rand(0,6)
sleep(8); //Засымаем на 8 сек
}
?>

А также, как можно сделать обновление чата? (как заставить фрейм с сообщениями обновиться со стороны сервера?)
Чесн говоря не совсем понял... В смысле как обновлять у юзверей сообщения? Ябы посоветовал не обновлять (т.к. будет хавать много трафика) а поддерживать коннект с юзверем (пример mpchat.com) или с помощью Ajax сделать чтобы скрипт каждые 10 сек например подключался на сервер и если есть новые сообщения, выводил их юзверю ИМХО :)

lsass.exe
11.10.2007, 08:31
Пример:
<?php
set_time_limit(0); //Чтоб работал бесконечно
ignore_user_abort(); //Ещё раз чтоб работал бесконечно :)
while(!file_exists("stop_refresh.txt")) { //Будет работать пока не создаш файл stop_refresh.txt
blablabla(); //Заносим в БД rand(0,6)
sleep(8); //Засымаем на 8 сек
}
?>


Чесн говоря не совсем понял... В смысле как обновлять у юзверей сообщения? Ябы посоветовал не обновлять (т.к. будет хавать много трафика) а поддерживать коннект с юзверем (пример mpchat.com) или с помощью Ajax сделать чтобы скрипт каждые 10 сек например подключался на сервер и если есть новые сообщения, выводил их юзверю ИМХО :)
зачем так сложно,тогда уж

<?
set_time_limit(0);
while(1)
{
$query
sleep(8);
}
?>

gergi
12.10.2007, 15:23
есть код
require_once "mysql_connect.php";
$r =mysql_query('SELECT `id` FROM `women` WHERE `citi` = "'.$_REQUEST['citi'].
' and `1home` > '.$_REQUEST['cenas'].
' and `1home` <'.$_REQUEST['cenam']) or die("По вашему запросу анкет не найдено.");

for ($data=array(); $row= mysql_fetch_row($r); $data[] = $row);
print_r( $data);


Что выдаёт:
Array([0]=> array([0]=>2)[1]=> array([0]=>5))

Как сделать чтоб выдовал только значения 1 и 5 без array и =>&

Dr.Z3r0
12.10.2007, 16:20
require_once "mysql_connect.php";
$r =mysql_query('SELECT `id` FROM `women` WHERE `citi` = "'.$_REQUEST['citi'].
' and `1home` > '.$_REQUEST['cenas'].
' and `1home` <'.$_REQUEST['cenam']) or die("По вашему запросу анкет не найдено.");

for ($data=array(); $row= mysql_fetch_row($r); $data[] = $row);
echo( $data[1].'|'.$data[5]);

Вообщем идею я тебе подал ;)

gergi
12.10.2007, 16:26
идея понятна. только при таком раскладе выводит
Array|Array

NOmeR1
12.10.2007, 16:33
есть код
require_once "mysql_connect.php";
$r =mysql_query('SELECT `id` FROM `women` WHERE `citi` = "'.$_REQUEST['citi'].
' and `1home` > '.$_REQUEST['cenas'].
' and `1home` <'.$_REQUEST['cenam']) or die("По вашему запросу анкет не найдено.");

for ($data=array(); $row= mysql_fetch_row($r); $data[] = $row);
print_r( $data);


Что выдаёт:
Array([0]=> array([0]=>2)[1]=> array([0]=>5))

Как сделать чтоб выдовал только значения 1 и 5 без array и =>&
echo $data[0][0].' AND '.$data[1][0]; ?

MegaDeth
12.10.2007, 16:34
gergi, массив значит у тя двумерный.
echo( $data[0][1].'|'.$data[0][5]);
так попробуй

gergi
12.10.2007, 16:34
спасиб

N0maD
12.10.2007, 21:48
Вот вопрос: Подскажите самый кульный онлайн монитор.

scrat
12.10.2007, 22:19
Вот вопрос: Подскажите самый кульный онлайн монитор.
самописный/Webalizer

N0maD
12.10.2007, 22:51
Поделись сорцом

Chifvv_59
13.10.2007, 12:41
<?php phpinfo();?>
Кто может подсказать как загнать в переменную часть результата выполнения данного скрипта, а именно:
USERNAME ****
Точнее в переменную нужно загнать: ****
Заранее благодарен.

NOmeR1
13.10.2007, 13:06
Кто может подсказать как загнать в переменную часть результата выполнения данного скрипта, а именно:
USERNAME ****
Точнее в переменную нужно загнать: ****
Заранее благодарен.
<?
$text = 'USERNAME ****';
$text2 = preg_replace('|USERNAME\s+(.*)|', '\\1', $text);
echo $text2;
?>

groundhog
13.10.2007, 13:24
phpinfo() засунуть в переменную можно так:

<?
ob_start();
phpinfo();
$info = ob_get_contents();
ob_end_clean();
?>
Псоле этого в переменной $info будет содержимое всего (!) вывода от phpinfo(). Если тебя интересует какая-то отдельная часть, используй в качестве параметров вызова phpinfo следующие флаги:

INFO_GENERAL - общая информация о конфигарации серверног ПО и системы.
INFO_CREDITS - разработчики данной версии PHP.
INFO_CONFIGURATION - различные установки PHP.
INFO_MODULES - загружаемые модуля и их конфигурация.
INFO_ENVIRONMENT - переменные среды, которые также доступны через $_ENV.
INFO_VARIABLES - показывает все утановленные переменные (окружения, сервера, куки, гет, пост).
INFO_LICENSE - информация о лицензии.
INFO_ALL - показать всё, что только можно.

А высечь из всего полученного вывода нужную тебе информацию можно так:

if (preg_match('/USERNAME\s+(.*)/iu', $info, $match)) print($match[1]);

Chifvv_59
13.10.2007, 13:58
groundhog Большое спасибо

ZET36
13.10.2007, 17:29
ребята неподскажите как поддлать referrer при сокет запросе


$headers .= "Referrer: http://passport.yandex.ru";
непомогает

и может быть это связано с тем что сраница на которую конектится сокет использует протокол https ?

NOmeR1
13.10.2007, 17:43
ребята неподскажите как поддлать referrer при сокет запросе



непомогает

и может быть это связано с тем что сраница на которую конектится сокет использует протокол https ?
Возможно, но ещё возможно, не правельно вписал. Должна быть одна n и в конце \r\n
$headers .= "Referer: http://passport.yandex.ru\r\n";

groundhog
13.10.2007, 18:08
Возможно что и:

...
$headers .= "Referer: https://passport.yandex.ru\r\n";
...

ZET36
14.10.2007, 01:39
хых. невыходит
<?php



$hostname = "icq.com";
$path = "/register/";
$line = "";

$fp = fsockopen($hostname, 443, $errno, $errstr, 30);

if (!$fp) echo "$errstr ($errno)<br />\n";
else
{

$data = "\r\n\r\n";

$headers = "POST $path HTTP/1.1\r\n";
$headers .= "Host: $hostname\r\n";
$headers .= "Content-type: application/x-www-form-urlencoded\r\n";
$headers .= "Content-Length: ".strlen($data)."\r\n\r\n";
$headers .= "Accept: */*\r\n";
$headers .= "Accept-Language: ru\r\n";
$headers .= "Pragma: no-cache\r\n";
$headers .= "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)\r\n";
$headers .= "Proxy-Connection: Keep-Alive\r\n";

$headers .= "Referer: https://www.icq.com/register/\r\n";


fwrite($fp, $headers.$data);

while (!feof($fp))
{
$line .= fgets($fp, 1024);
}
fclose($fp);
}
echo $line;
?>

может я ещё что напутал?

groundhog
14.10.2007, 02:14
У тебя в строчке:

$headers .= "Content-Length: ".strlen($data)."\r\n\r\n";
дофига переводов строк. Нужно сделать так:

$headers .= "Content-Length: ".strlen($data)."\r\n";

Joker-jar
14.10.2007, 11:38
Есть функция, возвращающая кол-во MySQL-запросов? Или только счетчиком считать?

lsass.exe
14.10.2007, 11:44
Есть функция, возвращающая кол-во MySQL-запросов? Или только счетчиком считать?
не припоминаю таких функций, вроде тока счетчиком

groundhog
14.10.2007, 13:32
lsass.exe, учи мат. часть! :) Есть такая функция:

int mysql_num_rows ( resource result )
Она возвращает количество выбранных запросом записей из заданной таблицы. Разумеется, выбранных запросом SELECT. Ну или:

int mysql_affected_rows ( [resource link_identifier] )
Такая функция возвращает количество записей, затронутых последним INSERT, UPDATE или DELETE запросом к серверу.

lsass.exe
14.10.2007, 13:50
lsass.exe, учи мат. часть! :) Есть такая функция:


Она возвращает количество выбранных запросом записей из заданной таблицы. Разумеется, выбранных запросом SELECT. Ну или:


Такая функция возвращает количество записей, затронутых последним INSERT, UPDATE или DELETE запросом к серверу.
хы,ему нужно считать кол-во запросов к самой базу,тоесть сколько раз он юзал саму mysql_query, а не кол-во строк возвращаемое в результате запроса

groundhog
14.10.2007, 13:54
lsass.exe, ужос! Я тупею на глазах :( Перестаю понимать людей...

Dimi4
14.10.2007, 22:35
проблемка ....на локалке катет а на хосте нет.......

<form style='width:300px;' method='post' name='text' action='http://hacked.ipsys.net/tools/index.php'>
Текст:<br>
<textarea name='text' rows=7 cols=30></textarea><br>
<input type=submit>
</form>

Почемуто моему скрипту не передаютсо параметры и функции не работают.....
екшн правильно оформил?
-----
а на локалке работает В(
Ах да... Вот полный листинг:

<html>
<head>
<style>
..........
</style>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" >
<meta name="description" content="HacKed - exploits : . : shellcode">
<meta name="keywords" content="exploits code, exploit code, exploits, shellcode">
<link type="text/css" rel="stylesheet" href="hacked.css">
<link rel="Shortcut Icon" href="tools.ico"></head>
<title>encode() && decode()</title>
</head>
<body>
<form style='width:300px;' method='post' name='text' action='http://hacked.ipsys.net/tools/index.php'>
Текст:<br>
<textarea name='text' rows=7 cols=30></textarea><br>
<input type=submit>
</form>
<hr>
<?
$text=htmlspecialchars($text);
echo("<b>koi8-r - windows-1251</b>");
$k_w=convert_cyr_string($text,"k","w");
echo("<input type=text value='$k_w'> ");
echo("<b>Windows-1251 - koi8-r</b>");
$w_k=convert_cyr_string($text,"w","k");
echo("<input type=text value='$w_k'> ");
echo("<hr>");
echo("<b>Bin - Hex</b><br>");
$b_h=bin2hex($text);
echo("<textarea rows=5 cols=20>$b_h</textarea><br>");
echo("<b>Url кодування</b><br>");
$urle=rawurlencode($text);
echo("<textarea rows=5 cols=20>$urle</textarea><br>");
Echo("<b>Url декодування</b><br>");
$urld=rawurldecode($text);
echo("<textarea rows=5 cols=20>$urld</textarea><br>");
echo("<b>Base 64 encode</b><br>");
$b64e=base64_encode($text);
echo("<textarea rows=5 cols=20>$b64e</textarea><br>");
echo("<b>Base 64 decode</b><br>");
$b64d=base64_decode($text);
echo("<textarea rows=5 cols=20>$b64d</textarea><br>");
?>
<br>
<br>
<bdo dir="ltr">&copy; 2007 Coded by Dimi4 (N-F)</bdo></span></center>
</body>
</html>

halkfild
14.10.2007, 22:40
скорее всего, отключены глобальные переменные
включи их
php.ini

register_globals=On

но лучше принимай как
$text=$_POST['text']

p.s. немного по сабжу
http://articles.org.ru/cfaq/index.php?qid=1783&catid=14

xXx_007
14.10.2007, 22:44
а как можна узнать hash ?????

MegaDeth
14.10.2007, 22:46
Dimi4,
$text=htmlspecialchars($_POST['text']);

groundhog
15.10.2007, 10:03
xXx_007, какой хеш? crc, md5, rsa1?

sasha72
15.10.2007, 17:09
Народ кому не впадлу исправьте этот скрипт на регу очень надо

<?
$ok=0;

#include('inc/noflood.php');

include('inc/db_connect.php');
include('time.php');

$now=time();
$ip=GetEnv("REMOTE_ADDR");
$browser=GetEnv("HTTP_USER_AGENT");

SetCookie("user","");
SetCookie("pass","");

unset($user);
unset($pass);

if (@$register) {

// Блокировка таблицы

mysql_query("LOCK TABLES `players` WRITE, `slots` WRITE");
echo mysql_error();

$login=trim($login);
$login=addslashes($login);

if ($login=="" or $conf_pass=="" or $name=="" or $sex=="") $nms.="Вы не заполнили обязательные поля!"; else {

$hinfo=mysql_fetch_array(mysql_query("SELECT id FROM players where user='".$login."'"));
echo mysql_error();


if (!empty($hinfo['id'])) $finded=1; else $finded=0;

if ($finded == 0) {

if (strlen($login)<3) { $nms.="Логин не должен быть короче 3-х символов!\\n"; } else $ok+=1;

$arr[] = chr(32);
for($i = 48; $i != 57; $i++) {
$arr[] = chr($i);
}

for($i = 65; $i != 91; $i++) {
$arr[] = chr($i);
}

for($i = 97; $i != 123; $i++) {
$arr[] = chr($i);
}

for($i = 192; $i != 256; $i++) {
$arr[] = chr($i);
}

for ($i=0; $i<strlen($login); $i++) {
if (!in_array($login[$i],$arr)) { $fb=1; break; }
}

if ($fb == 1) { $nms.="Логин содержит недопустимый символ!\\n"; } else $ok+=1;


if (preg_match("#[A-Za-z]#", $login) && preg_match("#[А-Яа-я]#", $login)) { $nms.="Логин должен состоять либо только из русских букв, либо только из английских!\\n"; } else $ok+=1;

if (is_numeric($login)) { $nms.="Логин не может состоять только из цифр!\\n"; } else $ok+=1;
if ($psw!=$conf_pass) { $nms.="Введённые Вами пароли не совпадают!\\n"; } else $ok+=1;
if ($psw==$conf_pass && strlen($psw)<6) { $nms.="Пароль не должен быть короче 6-и символов!\\n"; } else $ok+=1;
if ($sex!=1 && $sex!=2) { $nms.="Неверно указан пол!\\n"; } else $ok+=1;
if ($rase!=0 && $rase!=0 && $rase!=0 && $rase!=0) { $nms.="Неверно указана раса!\\n"; } else $ok+=1;

if (is_numeric($day) && is_numeric($month) && is_numeric($year)) {
if (($day>0 && $day<32) and ($month>0 && $month<13) and ($year>1949 && $year<2000)) { $ok+=1; }
else $nms.="Неверно указана дата рождения!\\n";
} else $nms.="Неверно указана дата рождения!\\n";

if ($law!=1) { $nms.="Принятие наших законов является обязательным условием!\\n"; } else $ok+=1;

} else $nms.="Персонаж с таким логином уже существует!\\n";

}

// Вставляем в базу
if(empty($ip))
{
if (getenv('HTTP_X_FORWARDED_FOR'))
{
$ip=getenv('HTTP_X_FORWARDED_FOR');
}
else
{
$ip=getenv('REMOTE_ADDR');
}

}
if ($ok>9) {

$max = mysql_fetch_array(mysql_query("SELECT MAX(id) as id FROM players"));
$NEW_USER_ID = $max['id'] + 1;

mysql_query("INSERT INTO slots (id, slots.1) values('".$NEW_USER_ID."','0')");
mysql_query("INSERT INTO players (id, user, pass, name, birth, birthdate, real_city, sex, browser, deviz, ip) values('".$NEW_USER_ID."','".addslashes($login)."',md5('$psw'),'".addslashes($name)."','$day.$month.$year','$this_time','".addslashes($city)."','".addslashes($sex)."','".addslashes($browser)."','".addslashes($deviz)."','$ip')");

$finded = 1;

mysql_query("unlock tables");
// Разблокировка таблицы

header("Location: register.php?page=end&login=$login");
exit;
}
//
mysql_query("unlock tables");
// Разблокировка таблицы

}




if ($page!="end") {


$title='[Регистрация]';
include('inc/html_header.php');
echo"<body bgcolor=EBEDEC>";



echo"<table width=350 border=1 bordercolor=CCCCCC cellspacing=0 cellpadding=3>
<tr>
<td align=center><b style='COLOR: Green'>[Регистрация]</b></td>
</tr>
</table><br>
";


if ($nms!="") echo"<script>alert('Найдены ошибки:\\n$nms');</script>";


echo"<table width=350 border=1 bordercolor=CCCCCC cellspacing=0 cellpadding=3>
<form action='' method=post>

<tr>
<td width=50%>&nbsp;Логин персонажа: (<b style='COLOR: Red'>*</b>)</td><td align=center><input name='login' class=input style='WIDTH: 150px' maxlength=20 value='$login'></td>
</tr>

<tr>
<td>&nbsp;Пароль: (<b style='COLOR: Red'>*</b>)</td><td align=center><input name='psw' type=password class=input style='WIDTH: 150px' maxlength=30 value='$psw'></td>
</tr>

<tr>
<td>&nbsp;Пароль повторно: (<b style='COLOR: Red'>*</b>)</td><td align=center><input name='conf_pass' type=password class=input style='WIDTH: 150px' value='$conf_pass'></td>
</tr>

<tr>
<td>&nbsp;Реальное имя: (<b style='COLOR: Red'>*</b>)</td><td align=center><input name='name' class=input style='WIDTH: 150px' maxlength=11 value='$name'></td>
</tr>

<tr>
<td>&nbsp;Дата рождения: (<b style='COLOR: Red'>*</b>)</td><td align=center>
<select name=day>";
for ($i=1; $i<32; $i++) { echo"<option value=$i"; if ($i==$day) echo" selected"; echo">$i"; }
unset($i);
echo"</select>
<select name=month>";
for ($i=1; $i<13; $i++) { echo"<option value=$i"; if ($i==$month) echo" selected"; echo">$i"; }
unset($i);
echo"</select>
<select name=year>";
for ($i=1950; $i<2000; $i++) { echo"<option value=$i"; if ($i==$year) echo" selected"; echo">$i"; }
unset($i);
echo"</select>
</td>
</tr>

<tr>
<td>&nbsp;Пол: (<b style='COLOR: Red'>*</b>)</td><td align=center><select name=sex style='WIDTH: 85px'><option><option value=1"; if ($sex==1) echo" selected"; echo">Мужской<option value=2"; if ($sex==2) echo" selected"; echo">Женский</select></td>
</tr>

<tr>
<td>&nbsp;Девиз: </td><td align=center><input name='deviz' class=input style='WIDTH: 150px' value='$deviz'></td>
</tr>

<tr>
<td>&nbsp;Город: </td><td align=center><input name='city' class=input style='WIDTH: 150px' maxlength=11 value='$city'></td>
</tr>

<tr>
<td colspan=2><input type=hidden name=law value=0><input type=checkbox name=law value=1"; if ($law == 1) echo " checked"; echo"> Я обязуюсь соблюдать <a href='law.php' target=_blank>законы</a></td>
</tr>


<tr>
<td align=center><input type=submit name=register class=input value='Регистрация' style='WIDTH: 150px'></td>
<td align=center><input type=button class=input value='Закрыть' style='WIDTH: 150px' onclick='window.close();'></td>

</tr>

</form>
</table>
";

}

elseif ($page=="end") {

$inf=mysql_fetch_array(mysql_query("SELECT * FROM players where user='".addslashes($login)."'"));

if ($inf[user]!="") {
if ($inf[active]==0) {

$title='[Регистрация]';
include('inc/html_header.php');

echo"<body bgcolor=EBEDEC>";

echo"<table width=350 border=1 bordercolor=CCCCCC cellspacing=0 cellpadding=3>
<tr>
<td align=center><b style='COLOR: Green'>[Регистрация]</b></td>
</tr>
</table><br>
";

echo"<table width=330 border=1 bordercolor=CCCCCC cellspacing=0 cellpadding=3 height=329><tr><td align=center valign=center>";


echo"Спасибо за регистрацию, <b>$inf[user]</b>!<br>
<br>
<br>
<input type=button value='Войти в игру с главной страницы!' class=input onclick='window.open(\"http://\",\"\",\"width=700,height=400,resizable,location=yes,menuba r=yes,status=yes,toolbar=yes,scrollbars=yes\");'>

";

mysql_query("update players set active=1 where id=$inf[id]");

} else { $title='[Регистрация]';
include('inc/html_header.php');
echo"<body bgcolor=EBEDEC>";



echo"<table width=350 border=1 bordercolor=CCCCCC cellspacing=0 cellpadding=3>
<tr>
<td align=center><b style='COLOR: Green'>[Регистрация]</b></td>
</tr>
</table><br>
";

echo"<center>Аккаунт был активирован ранее!</center>"; }
}

echo"</td></tr></table>";
}


?>

Joker-jar
15.10.2007, 17:14
Требуется поднять поддержку ф-ии mail на локалхосте. Кто-нибудь знает smtp-сервер, поддерживающий анонимную отправку писем, либо подскажите, как настроить php, чтоб использовал сервер с авторизацией (в php.ini вижу только адрес сервера и порт)

MegaDeth
15.10.2007, 18:15
sasha72 структуру бд в студию и где конкретно прогон?

sasha72
15.10.2007, 18:38
MegaDeth

Всмысле прогон? и бд в студию?

MegaDeth
15.10.2007, 18:46
sasha72, ну если ты прсишь его исправить.. значит в скрипте прогон?
и не саму бд а структуру её... атакже еще инклюды (подкл. файлы)...
что на регу? с регистрацией глюк? в чем ошибка, как проялвяется?

mouse.pro
15.10.2007, 20:17
Как сделать обводку текста в imagettftext() ?
Просто вывожу текст на изображение, но мне надо этот текст обвести черным цветом. :confused:

sasha72
15.10.2007, 21:32
MegaDeth
Ошибка состоит в том что когда я регюсь и заполняю все нужные поля нажимаю Зарегистрировать ну и меня возвращает обратно на страницу регистрации а акк в этом процессе не созаётся! Я терь вот думаю как исправить.....

MegaDeth
15.10.2007, 22:07
sasha72
кстати, код оформляй в [.CODE] [/CODE]
во вторых первре что на ум приходит - настройки сервера (тоесть интерпритатора точнее). попробуй так :
в 18 строку добавь

$login=$_POST['login'];
$conf_pass=$_POST['conf_pass'];
$name=$_POST['name'];
$sex=$_POST['sex'];
$day=$_POST['day'];
$month=$_POST['month'];
$year=$_POST['year'];
$deviz=$_POST['deviz'];
$city=$_POST['city'];

а также и все передаваемые скрипту данные, которые я незнаю еще потомучто нет инклюдов.

Helios
15.10.2007, 22:32
Как сделать обводку текста в imagettftext() ?
Просто вывожу текст на изображение, но мне надо этот текст обвести черным цветом. :confused:
Читай маны)


(PHP 3 >= 3.0.1, PHP 4, PHP 5)

imagettfbbox -- Give the bounding box of a text using TrueType fonts
Description
array imagettfbbox ( float size, float angle, string fontfile, string text )


This function calculates and returns the bounding box in pixels for a TrueType text.

sasha72
15.10.2007, 22:47
не таже проблема. Может это не с клиентом а с бд?

MegaDeth
15.10.2007, 23:45
sasha72, для отладки временно включи отображение ощибок или посмотри лог. Может это не с клиентом а с бд?
если так думаешь то посмотри какую ошибку будет выдвать скрипт после запроса INSERT INTO. (104 строка добавь "echo mysql_error();" )


mysql_query("INSERT INTO players (id, user, pass, name, birth, birthdate, real_city, sex, browser, deviz, ip) values('".$NEW_USER_ID."','".addslashes($login)."',md5('$psw'),'".addslashes($name)."','$day.$month.$year','$this_time','".addslashes($city)."','".addslashes($sex)."','".addslashes($browser)."','".addslashes($deviz)."','$ip')");
echo mysql_error();
далее у тебя идет "отправка" браузера register.php?page=end&login=login. который в свою очередь отфутболивает на главную пагу тк. записи в таблице почемуто нет. блин, скинул бы весь движек и структуру бд тогда мог бы чемнить помоч ато тыкаюсь вслепую...

mouse.pro
16.10.2007, 04:53
Читай маны)
Ты думаешь я сразу прям сюда обратился?
Я прочитал мануалы, но что-то у меня ничего не вышло. Я надеюсь здесь мне помогут.
P.S: Меня раздражают такие умники типа тебя, которые посылают читать мануалы.
Это тема по-моему специально создана для подобных вопросов.

sasha72
16.10.2007, 08:31
MegaDeth
Вот ссылка на движок и на бд, пароль "sasha72" (бд в самом движке в папке www (BD)) если поможешь буду оч блогадарен.

Helios
16.10.2007, 12:48
Я прочитал мануалы, но что-то у меня ничего не вышло.

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

mouse.pro
16.10.2007, 13:17
Если бы ты прочитал, ты бы увидел, что imagettfbbox возвращает координаты углов нужной рамки, после чего отрисовать эту рамку линиями не составляет труда.
Ты мне лучше код напиши, твои слова мне ничего не говорят.

Impuls*
16.10.2007, 15:11
Объясните мне кто-нибудь, как работает вообще язык PHP, да и программирование в целом??А то тут задумался и не понял...занимаюсь этим, а самого главного пожалуй не знаю.
в смысле вот почему, допустим, функция file() читает файл и передает его в массив??почему она вот так делает, как ей "приказали" так делать?? :)
Как объяснили интерпретатору правильно обрабатывать код?

P.S. не подумайте ничего плохого, просто понять не могу, как происходят такие процессы.

mr.The
16.10.2007, 15:33
Объясните мне кто-нибудь, как работает вообще язык PHP, да и программирование в целом??А то тут задумался и не понял...занимаюсь этим, а самого главного пожалуй не знаю.
в смысле вот почему, допустим, функция file() читает файл и передает его в массив??почему она вот так делает, как ей "приказали" так делать??
Как объяснили интерпретатору правильно обрабатывать код?

P.S. не подумайте ничего плохого, просто понять не могу, как происходят такие процессы.

простой пример интерпритатора:
если команда file() то почитать её параметры и сделать то-то
если комада echo то почитать её параметры и сделать то-то
.....
ну и тд

эт каэш самый примитив.

MegaDeth
16.10.2007, 15:48
Impuls*,
функции пхп обьявлены в либах,(библиотеках) там заложены инструкции что и как делать, вообще высокоуровневые языки програмирования придуманы чтобы каждый мог програмировать не задумаваясь о выделении адреса в памяти для какой-то переменной, чтобы не парить мозг с типом хранимых данных (а пхп, в этом плане очень прост и там идет автоматическая конвертация данных) интерпритатор получая эти более "человеческие" инструкции выполняет их, тоесть от file() принимает параметр, например file($put) . $put для этой переменной был выделено в памяти адрес, по которому распологается путь к файлу. далее идет открытие файла, чтение его содержимого в память, разбивка по переносу, забивка по выделеным адресам значений, для пхп это будет "массив". ну а само название функции указывает что с параметром делать)

$Lemur$
16.10.2007, 23:16
Помогите решить задачку: (само задание ;) )
Условие: нужно написать скрипт для периименования файлов в директории из всякой абра кодабры в числовае вида: 01 02 03 04.....10 посоветуйте как это сделать :confused:

у меня имеются лиш поверхностные знания php :( поэтому тяжело мне пока осилить самостоятельно

lsass.exe
16.10.2007, 23:46
Помогите решить задачку: (само задание ;) )
Условие: нужно написать скрипт для периименования файлов в директории из всякой абра кодабры в числовае вида: 01 02 03 04.....10 посоветуйте как это сделать :confused:

у меня имеются лиш поверхностные знания php :( поэтому тяжело мне пока осилить самостоятельно
абсолютно всех файлов или определенных? подробнее опиши файлы в директории

MegaDeth
16.10.2007, 23:54
$Lemur$

$dir= opendir("./dir/");
$inc=0;
while($file = readdir($dir)){rename($file, $inc); $inc++;};

scrat
16.10.2007, 23:56
Помогите решить задачку: (само задание ;) )
Условие: нужно написать скрипт для периименования файлов в директории из всякой абра кодабры в числовае вида: 01 02 03 04.....10 посоветуйте как это сделать :confused:

у меня имеются лиш поверхностные знания php :( поэтому тяжело мне пока осилить самостоятельно
<?
$dr="наша директория";
$dir=opendir($dr);
chdir($dr);
$i=0;
while($d=readdir($dir))
{
if(is_file($d)) rename($d,$i);
$i++;
}

Impuls*
17.10.2007, 16:27
MegaDeth
Спасибо, теперь понятно :)

$Lemur$
17.10.2007, 16:39
to lsass.exe все файлы в дире формата .jpeg

to scrat MegaDeth спасибо!

spamoney
19.10.2007, 16:21
Такая проблема: Хотел cраббить анекдоты с _http://anekdotov.net/vovochka/index-page-1.html


но скрипт почему то не работает, хотя вроде всё правильно написано, в чём проблема??

<?
$file = file_get_contents('http://anekdotov.net/vovochka/index-page-1.html');
$file = preg_match_all('|<strong>(.*)<tr>|U',$file,$frazes);
for($i=0;$i<10;$i++){
echo "<hr>".$frazes[0][$i]."\r\n<hr>";

}
?>


Выдаёт ошибку:

Warning: file_get_contents(http://anekdotov.net/vovochka/index-page-1.html) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.1 403 Forbidden in z:\home\backup.ru\www\anek.php on line 2

MegaDeth
19.10.2007, 16:27
spamoney так низя. надо самому запрос писать... и пихать его в сокет.

Y.Dmitriy
19.10.2007, 16:32
Warning: file_get_contents(http://anekdotov.net/vovochka/index-page-1.html) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.1 403 Forbidden in z:\home\backup.ru\www\anek.php on line 2

groundhog
19.10.2007, 16:34
spamoney, проблема в file_get_contents, она посылает кривой запрос... Скорее всего не посылает заголовок Host. Лучше тяни через сокеты...

NOmeR1
19.10.2007, 16:35
spamoney
Ошибка в том, что этот скрипт пытается получить страницу, а получает ошибку 403 (доступ запрещён), это чаще всего бывает из-за robots.txt (http://anekdotov.net/robots.txt) он блочит если вы заходите без браузера как видно. Поэтому здесь вряд ли получится сделать без сокетов.
spamoney так низя. надо самому запрос писать... и пихать его в сокет.
Чушь. Так можно, но здесь нужны сокеты.

MegaDeth
19.10.2007, 16:40
spamoney
Ошибка в том, что этот скрипт пытается получить страницу, а получает ошибку 403 (доступ запрещён), это чаще всего бывает из-за robots.txt (http://anekdotov.net/robots.txt) он блочит если вы заходите без браузера как видно. Поэтому здесь вряд ли получится сделать без сокетов.

Чушь. Так можно, но здесь нужны сокеты.
я имел ввиду в конкретном этом случае, что еще сказать челу который про ошибку протокола хттп "403 доступ запрещен" не знает? (ну или невидет...)

XIII
20.10.2007, 02:59
скрипт добавления в mysql базу

<?php
$login = $_POST['login'];
$email = $_POST['email'];
$pass = $_POST['pass'];


$link = mysql_connect("localhost", "root", "*****") or
die("Could not connect: " . mysql_error());


mysql_select_db("nova");

$query = DBQuery("SELECT * FROM admin WHERE email = '$email'");
if (mysql_num_rows($query))
die("Такой пользователь уже существует");


DBQuery("insert into admin (username, passwd, email) values('$login','$pass','$email')");


mysql_close($link);
?>
php ругается на выделеную строку а вот почему незнаю =(

Helios
20.10.2007, 03:12
в php нет функции DBQuery(), есть mysql_query(), а DBQuery() ты скорее всего взял из какого-нибудь движка, где она и была определена.

XIII
20.10.2007, 03:19
спасибо

Scipio
20.10.2007, 03:22
в php нет функции DBQuery(), есть mysql_query(), а DBQuery() ты скорее всего взял из какого-нибудь движка, где она и была определена.

вобщем если DBQuery() у тебя определена, то пользуй так :$query = DBQuery("SELECT * FROM admin WHERE email = '".$email."'");

аналогично и с mysql_query()

ЗЫ это же у тебя все равно не конечный вариант скрипта, да? (надеюсь)

spamoney
20.10.2007, 09:58
spamoney
Поэтому здесь вряд ли получится сделать без сокетов.


Всем спасибо, что сказали про сокеты, а то я в php как то не очень по этому сам бы не догнал, сделал через сокеты, вроде получилось, правда там наверное много лишннего кода, т.к фук-цию function httpSocketConnection нашел в полезных скриптах:

<?php

function httpSocketConnection($host, $method, $path, $data)
{
$method = strtoupper($method);

if ($method == "GET")
{
$path.= '?'.$data;
}

$filePointer = @fsockopen($host, 80, $errorNumber, $errorString);

if (!$filePointer)
{
exit('Failed opening http socket connection: '.$errorString.' ('.$errorNumber.')<br/>\n');
return false;
}

$requestHeader = $method." ".$path." HTTP/1.1\r\n";
$requestHeader.= "Host: ".$host."\r\n";
$requestHeader.= "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1) Gecko/20061010 Firefox/2.0\r\n";
$requestHeader.= "Content-Type: application/x-www-form-urlencoded\r\n";

if ($method == "POST")
{
$requestHeader.= "Content-Length: ".strlen($data)."\r\n";
}

$requestHeader.= "Connection: close\r\n\r\n";

if ($method == "POST")
{
$requestHeader.= $data;
}

fwrite($filePointer, $requestHeader);

$responseHeader = '';
$responseContent = '';

do
{
$responseHeader.= fread($filePointer, 1);
}
while (!preg_match('/\\r\\n\\r\\n$/', $responseHeader));


if (!strstr($responseHeader, "Transfer-Encoding: chunked"))
{
while (!feof($filePointer))
{
$responseContent.= fgets($filePointer, 128);
}
}
else
{

while ($chunk_length = hexdec(fgets($filePointer)))
{
$responseContentChunk = '';

//logEventToTextFile('debug', $chunk_length);
$read_length = 0;

while ($read_length < $chunk_length)
{
$responseContentChunk .= fread($filePointer, $chunk_length - $read_length);
$read_length = strlen($responseContentChunk);
}

$responseContent.= $responseContentChunk;

fgets($filePointer);

}

}

//logEventToTextFile('debug', $responseContent);


return chop($responseContent);
}

$bb=0;
for($f=0;$f<3;$f++){


$data="";
$host = "anekdotov.net";
$path = "http://anekdotov.net/vovochka/index-page-$f.html";
$method = "GET";


$a=httpSocketConnection($host, $method, $path, $data);

$file = preg_match_all("#<input type=hidden name=story value='(.*?)<INPUT type=image src=#si",$a,$frazes);


for($i=0;$i<$file;$i++){
echo "<hr>".$frazes[1][$i]."\r\n<hr>";
}
$bb++;
}
$vsego=$bb*$file;
echo "Анекдотов на странице: <font color=red>$file</font><br>";
echo "Всего Анекдотов: <font color=green>$vsego</font>";

?>

XIII
20.10.2007, 15:49
$result = mysql_query ("SELECT * FROM admin WHERE email = '".$email."'");
$num_rows = mysql_num_rows($result);
echo "Совпадений $num_rows \n<br>";
if ($num_rows >= 1){
print "Такой логин или email уже зарегистрирован в базе!<br>";
}

$query ="insert into admin (username, passwd, email) values('$login','$pass','$email')";
$result = mysql_query($query);
printf ("Пользователь успешно зарегистрирован", mysql_insert_id());
mysql_close($link);

между проверкой на совпадение в базе и добавлением в базу надо чтото ещё написать? просто если даже находит совпадение оно всё равно дальше лезет добавлять в базу и пишит успешно зарегистрирован =) чтото не пойму в чём ошибка

XIII
20.10.2007, 16:16
уже разобрался всем спасибо
сделал чтота типа вот работает =)
$result = mysql_query ("SELECT * FROM admin WHERE email = '".$email."'");
$num_rows = mysql_num_rows($result);
echo "Совпадений $num_rows \n<br>";
if ($num_rows >= 1){
print "Такой логин или email уже зарегистрирован в базе!<br>Регистрация невозможна";
}
elseif ($num_rows = 1){
$query ="insert into admin (username, passwd, email) values('$login','$pass','$email')";
$result = mysql_query($query);
printf ("Пользователь успешно зарегистрирован", mysql_insert_id());
}
mysql_close($link);

groundhog
20.10.2007, 18:03
XIII, ты коряво сделал... Нужно так:

$result = mysql_query ("SELECT * FROM admin WHERE email = '".$email."'");
$num_rows = mysql_num_rows($result);
echo "Совпадений $num_rows \n<br>";
if ($num_rows >= 1){
print "Такой логин или email уже зарегистрирован в базе!<br>Регистрация невозможна";
}
else {
$query ="insert into admin (username, passwd, email) values('$login','$pass','$email')";
$result = mysql_query($query);
printf ("Пользователь успешно зарегистрирован", mysql_insert_id());
}
mysql_close($link);

Impuls*
20.10.2007, 19:59
Помогите пожалуйста!

Вот хочу сделать так, чтобы на моем сайте не флудили, не спамили не нужной фигней :)
А именно:
Вот когда пользователь добавляет комментарий, то ту переменную, допустим строка комментария - $text, обыскивали. Я это реализовал через strstr() .

$www=strstr($text, "http://");
if ($www=='http://'){
echo "
Реклама запрещена!";
exit;}

Но проблема заключается в том, что будут же вводить не "http://", а там "http://mysite.ru" и это уже обходит скрипт, как мне это подредактировать под все случаи?Как можно сделать так что, если в строке $text php-сценарий находит фрагмент "http://", то независимо от того что идет дальше или шло раньше делает то-то? :)

P.S. если есть более рациональный способ анти-спама, то сообщите пожалуйста.
Заранее спасибо!

Helios
20.10.2007, 20:03
if (preg_match('/http:\/\//', $text))
{
//... что-то делаем
}

Ch3ck
20.10.2007, 21:08
стр реплэйс

lsass.exe
20.10.2007, 22:10
Помогите пожалуйста!

Вот хочу сделать так, чтобы на моем сайте не флудили, не спамили не нужной фигней :)
А именно:
Вот когда пользователь добавляет комментарий, то ту переменную, допустим строка комментария - $text, обыскивали. Я это реализовал через strstr() .

$www=strstr($text, "http://");
if ($www=='http://'){
echo "
Реклама запрещена!";
exit;}

Но проблема заключается в том, что будут же вводить не "http://", а там "http://mysite.ru" и это уже обходит скрипт, как мне это подредактировать под все случаи?Как можно сделать так что, если в строке $text php-сценарий находит фрагмент "http://", то независимо от того что идет дальше или шло раньше делает то-то? :)

P.S. если есть более рациональный способ анти-спама, то сообщите пожалуйста.
Заранее спасибо!
как уже сказал Dr.Check юзай
$www=str_replace("http://","",$text);
например
переменные сам поменяешь, ну и на что заменять тоже

Impuls*
21.10.2007, 11:27
Спасибо всем за помощь, но я решил сделать через preg_match()
ИМХО так удобнее на мой взгляд. :)
Еще вопрос в связи с этим...
Вот я решил все слова забить в массив, но сценарий почему-то неправильно обрабатывается, пишет ошибку - preg_match() expects parameter 1 to be string
Пробывал я сам решить проблему, но не понял... :-D


$_words=array('http://', '.ru', '.com', '.mobi', '.info', '.org');
if (preg_match($_words, $text)){
// делаем то-то :)
exit;}


Подскажите, что тут не правильно) надо значения из массива как-то по-другому выводить что ли?Заранее спасибо.

Red_Red1
21.10.2007, 11:31
preg_match($_words[n], $text) где n номер елемента массива. Возможно тебе нужен цикл.

Как то так
for ($n=1, $n>count($_words), $n++) if preg_match($_words[n], $text)......

Нужно все это только по одной причине у preg_match первым параметром идет строка, а ты ставишь массив.

Impuls*
21.10.2007, 11:36
preg_match($_words[n], $text) где n номер елемента массива. Возможно тебе нужен цикл.
Оо. А без цикла что ли никак??

Red_Red1
21.10.2007, 11:55
Можно и без цикла, почитай про оператор альтернативы в регулярных выражениях.
Должно быть примерно так
$_words='^http://|\.ru$|\.com$|\.mobi$|\.info$|\.org$'
if (preg_match($_words, $text))....

Impuls*
21.10.2007, 12:01
Нет, что-то не так... не работает.
А как же массив? :)

lsass.exe
21.10.2007, 12:12
Нет, что-то не так... не работает.
А как же массив? :)
Массив в прег_матч ты не запихаешь, входной параметр должен быть строкой(как уже сказал Ред) а ты выбираешь массив, если ты будешь рассматривать каждый элемент массива по отдельности, то он будет представлять из себя строку. $_words[n], ну а n перебираем естествено в цикле...

Red_Red1
21.10.2007, 12:20
<?
$text='http:s//dgasda';
$_words='#^http://|\.ru$|\.com$|\.mobi$|\.info$|\.org$#';
if (preg_match($_words, $text))
echo 'Чтото сделали!!!!!!!!!; Регулярка прошла';
else
echo 'Нифига не сделали!!!!!!!!!; Регулярка НЕ прошла';
?>

Поэксперементируй со строкой $text.
Вот тебе и без цикла, я же сказал ПОЧИТАЙ оператор альтернативы в регулярках.

Impuls*
21.10.2007, 12:56
2 Red_Red1
ЗачОт!! :) Огромное спасибо!!

temp_late
22.10.2007, 00:44
читал гдето про эту функцию preg_match() есть у ней какойто баг, не совсем работает как задумывалось, баг вроде связан с проверкой на емейл, если задать чуток дургие символы при которы должен вернуть false, то он все равно в проверку дает true.. Эту дыру спамеры юзают для рассылки спама, это я в статье читал гдето.
______________
Вопрос такой есть в php.ini такие настройки:

post_max_size = 8M
upload_max_filesize= 2M

Как выглядят функции для их перезадания уже в самом PHP скрипте?

groundhog
22.10.2007, 02:14
Как выглядят функции для их перезадания уже в самом PHP скрипте?
Выглядят они так: string ini_set ( string varname, string newvalue ). Например:

ini_set('post_max_size', '16M');
ini_set('upload_max_filesize', '16M');

XIII
23.10.2007, 01:45
вопрос по сессиям:
хочу закрыть сессию а мне пишит ошибки
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\AppServ\www\user\admin\logout.php:2) in C:\AppServ\www\user\admin\logout.php on line 5

Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\user\admin\logout.php:2) in C:\AppServ\www\user\admin\logout.php on line 9

скипт закрытия

<?
session_start();
session_destroy();
Header("Location: index.php");
?>
чёт не пойму в чём дело

Helios
23.10.2007, 01:54
После того, как был передан хотя бы один байт данных нельзя передать ни одного заголовка, а при создании/удалении сессии передаются заголовки Set-Cookie

Как вариант, создавать/разрушать сессии до вывода данных или использовать буферизацию вывода (что, в принципе, то же самое, но меньшей кровью):


<?php ob_start(); ?>
тут был вася
<?php
// работаем с сессиями
?>
тут я тоже был
<?php
ob_end_flush();

XIII
23.10.2007, 02:05
как тогда после очистки сессий вернутся на обратную сраницу если на преодресацию пхп кричит Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\user\admin\logout.php:2) in C:\AppServ\www\user\admin\logout.php on line 5

Helios
23.10.2007, 02:08
Посмотри что у тебя выводится на второй строке скрипта C:\AppServ\www\user\admin\logout.php и выводи это после работы с сессиями

XIII
23.10.2007, 02:08
уже понял =)

ferdinant
23.10.2007, 10:48
1. Мне нужен на сайте wap (отображение новостей в мобильной версии)
2. Создать билинговую систему совместную с даталайф. В которой есть денежные и неденежные средства. С разными правами доступа (плачу отдельно). Это перспектива.
3. Новости можно придать более 3-6 значений. Например в Дле счас придать новости можно по одному значению. И виглядит это примерно так: 1 - 1.1, 1.2, 1.3, 1.4 и тд. Я думаю понятно, а мне нужно 1, 2, 3, 4, 5, 6, и потом только можно подпункты.
4. Ности не имеют привичку публиковатся по дате розмещения, это существет нов коде на странице не должно показыватся. Основная по чему будет публиковатся новость это региональное розмещение (1. Страна 1.1Область/Огромный город 1.1.1 Район 1.1.1.1 Город.... ) это основной признак! И потом все остальное. Потом другие признаки который придаются новости. Что бы можно было отобрать 1.1.1.1 Город.... + 2.2 + 3.
5 Новости розмещаются на странице заданый мной позиции Например вип на самом верху. А самые галимые в самом конце. Также самостоятельно новости розмещаются розмещаются по посещаемости и по датете! Также в ручную можно добавить посещаемость!
6. Скрип создание меню випадающих и розкладающихся!
7. Система защиты!!!

Какой движок лутше? Какой по минимуму нужно будет переделывать? ЗА помощь плачу, от 100.

По вопросам: 311960596 ferdinant@i.ua

groundhog
23.10.2007, 10:52
Для ваших целей идеально подойдёт битрикс, но разумеется он не бесплатен. Ни один движок с открытым исходным кодом не даст такой функциональности, разве что Drupal. Да и вообще, такую работу нужно делать с нуля, а не базироваться на каком-то движке. И поверьте, такая работа стоит не 100, а 1000 USD или даже больше.

ferdinant
23.10.2007, 11:13
Для ваших целей идеально подойдёт битрикс, но разумеется он не бесплатен. Ни один движок с открытым исходным кодом не даст такой функциональности, разве что Drupal. Да и вообще, такую работу нужно делать с нуля, а не базироваться на каком-то движке. И поверьте, такая работа стоит не 100, а 1000 USD или даже больше.


Я это понимаю, но у меня нет счас таких денег! Мне б найти програмиста на перспективу... В будущем ЗП рослаб от 100=>1000 и више появление новых сервисов и тому подобное! Есть идея но нет знаний! Учить надо это потерять год. За год может появится целое стадо конкурентов! Или просто идея утратит свою актуальность! Тот кто будет заниматся этип проэктом получит cPanel И все нужные рычаги. Ищу желающих! Может кто-то есть? У кого есть свободное время и пока ЗП.

groundhog
23.10.2007, 11:35
Не знаю... В такой ситуации на работу согласиться только не опытный разработчик. У меня есть опыт разработки биллинговых систем, мобильных порталов, систем продажи мобильного контента, поэтому я знаю каким гемором это обернётся в будущем. Тем более, когда работаешь один... За такие деньги нормальный разработчик не возьмётся за реализацию этого проекта. Ни один проект не будет приносить прибыли, пока в него не будет вложено достаточно моральных и материальных сил... В любом случае - теперь вам в разде о работе... Тут обсуждаются технические вопросы, а не организационные.

ferdinant
23.10.2007, 12:02
Не знаю... В такой ситуации на работу согласиться только не опытный разработчик. У меня есть опыт разработки биллинговых систем, мобильных порталов, систем продажи мобильного контента, поэтому я знаю каким гемором это обернётся в будущем. Тем более, когда работаешь один... За такие деньги нормальный разработчик не возьмётся за реализацию этого проекта. Ни один проект не будет приносить прибыли, пока в него не будет вложено достаточно моральных и материальных сил... В любом случае - теперь вам в разде о работе... Тут обсуждаются технические вопросы, а не организационные.


У меня огромное жедание с Вами пообатся!!! Свяжитесь со мной 311960596 моя ася

je0n
23.10.2007, 16:16
что подразумевается под выражением "класс, предназначенный для хранения
коллекции объектов"?
я понимаю, что это класс, который содержит другие классы. Но где и он их содержит и в чем? хотелось бы увидеть пример. (подразумевается работа с php5)

=======ДОБАВЛЕНО===========
Долго думал над этим... полазил в нете. Может подразумевается класс, в котором есть переменная-ассоциативный массив, которая хранит указатели на объекты. И обращаться к объекту нужно по его ключу (имени из массива). Логично же? но все равно жду версий и примеров

======ЕЩЕ ДОБАВЛЕНО=========
Да, короче, это так. Вопрос снят. попозже выложу пример, в этот же пост.
======ЕЩЕ ЕЩЕ ДОБАВЛЕНО :)========
короче примерно так:

class Collection
{
var $col; //типа ассоциативный массив будущий

//добавление объекта
function AddItem($key,$object)
{
$this->col[$key]=$object;
}
//получение объекта по ключу, если объект есть то возвращает его иначе NULL
function GetItem($key)
{
if(isset($this->col[$key]))return $this->col[$key];else return NULL;
}
}


$a=new Collection();
$b=1;$c="yoo";$massiv=array(1,2,3,4);
$a->AddItem('b',$b);
$a->AddItem('c',$massiv);
$d=$a->GetItem('b');
echo "$d<br>";
$d=$a->GetItem('c');
echo $d[3];

XIII
24.10.2007, 00:23
где тут ошибка? запрос не выполняется чего то
mysql_query("UPDATE admin SET username = '$useedit', passwd = '$passedit', email = '$mailedit', iсq = '$icqedit' WHERE admin.id_admin= '$_SESSION[id_adm]' LIMIT 1; ");

Scipio
24.10.2007, 00:29
где тут ошибка? запрос не выполняется чего то

мож здесь:
mysql_query("UPDATE admin SET username = '$useedit', passwd = '$passedit', email = '$mailedit', iсq = '$icqedit' WHERE admin.id_admin= '$_SESSION[id_adm]' LIMIT 1; ");

просто r пропустил?

lsass.exe
24.10.2007, 00:40
где тут ошибка? запрос не выполняется чего то
скопируй сюда репорт об ошибке, а вобще убери limit 1; проверь правильность имен таблиц и замени admin.id_admin на id_admin

XIII
24.10.2007, 00:54
да всё равно лажа =) делаю тоже самое сразу в mysql всё работает а через скрипт не пашет =)

halkfild
24.10.2007, 01:14
сделай дебаг..
сам запрос пиши в переменную и в процесе выводи на екран.. проверь сам запрос и юзай вывод ошибок


echo mysql_errno() . ": " . mysql_error(). "\n";


саму ошибку можешь кинуть сюда

XIII
24.10.2007, 01:21
1054: Unknown column 'iГ±q' in 'field list'

XIII
24.10.2007, 01:24
это типа ошибка самой базы

groundhog
24.10.2007, 09:23
xiii, ты пытаешься апдейтнуть несуществующее поле в таблице... Ошибка именно об этом и говорит. Только название поля в какой-то кодировке странной... Ты что, создавал поля на русском? :)

Scipio
24.10.2007, 12:28
поле icq напиши заново, ты походу "c" русскую написал, они ничем неотличаются и на одной клавише находятся...

.:EnoT:.
24.10.2007, 13:10
Тупой вопрос:
Можно ли средствами php определить включён ли жаба-скрипт в браузере или это возможно определить только самим жаба-скриптом?
Просто нужен скрипт который пускает на страницу если включён джава-скрипт в браузере и посылает если выключен.
<?php
if (....) {echo "Привет, вы вошли!";} else {echo "Пшол вон!";}
?>

groundhog
24.10.2007, 13:28
Ну теоретически можно... В PHP есть такая функция:

mixed get_browser ( [string user_agent [, bool return_array]] )
Подробнее можешь про неё узнать из мануала:

http://ru.php.net/manual/ru/function.get-browser.php

Вот с помощью этой функции можно сделать такую функциональность:


<?php

$data = get_browser(null, true);

if ($data) {
echo ($data["javascript"] == 1) ? "Привет, вы вошли!" : "Пшол вон!";
}

?>
Да, чуть не забыл... Чтобы воспользоваться этой функцией, тебе нужно скачать файл:

http://browsers.garykeith.com/stream.asp?PHP_BrowsCapINI

Он содержит параметры современных браузеров. Сохраняешь его в директорию доступную для чтения PHP, и в php.ini в секции [browscap] прописываешь параметр:

browscap = /путь/к/файлу/browscap.ini

.:EnoT:.
24.10.2007, 13:34
Спасибо разобрался :)

Impuls*
24.10.2007, 20:42
Всем привет! :)
Я опять, кто помнит, по поводу антирекламы))
Вот как правильно сделать антирекламу, чтобы и синтаксис учитывался и все...а то вот посидел и понял, что мой скрипт достаточно легко обводится :) кто не видел, то его я обсуждал раньше в этой теме.

Если кто выложит готовый вариант своей, чужой, то буду очень благодарен!!С меня + ;)

P.s. антиреклама делается для комментариев новостей сайта, если кому надо знать)))

FiA
24.10.2007, 22:44
привет . ребята вот сижу вечерамя сума схожу .. помогите избавьте от страданий . в Instincts.ru там в лесу надо клад добывать. и сижу каждую минуту пароль набираю для клада .. немоглибы вы дать или сделать php код. чтоб код сам определялся и вводился и чтоб автоматически отправлялся . ато постоянно надоедает набирать разные пароли и сидеть ждать пока пройдет минута и сново прописывать .. буду очень благодарна . зарание спасибо

Iceangel_
25.10.2007, 09:12
Может кто нибудь дать скрипт (его писать пару минут, просто я php только начал изучать...), чтобы он отправлял 1000 http запросов и ответ от каждого сохранял в файл?
С меня ++

Iceangel_
25.10.2007, 09:20
2 Impuls*
Вот что нашел...
http://hosttest.info/webmaster.php?id=php
Там должно быть в исходниках чата...
Сам ничего не проверял...

ant0ha
25.10.2007, 16:12
Может кто нибудь дать скрипт (его писать пару минут, просто я php только начал изучать...), чтобы он отправлял 1000 http запросов и ответ от каждого сохранял в файл?
С меня ++

<?php
for($i=0;$i<1000;$i++){
$ch = curl_init("http://www.site.ru/");
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
$result=curl_exec($ch);
curl_close($ch);

$fp=fopen('file.txt',"a+");
fputs($fp,$result);
fclose($fp);
}
?>
в каталоге со скриптом создай файл file.txt с правами на запись, в него будут писаться ответы на запросы
+ нужна поддержка curl'а на хостинге

FiA
25.10.2007, 20:06
ниукого небудет ? =(

Ch3ck
25.10.2007, 20:16
ниукого небудет ? =(
https://forum.antichat.ru/showpost.php?p=222983&postcount=10

inlanger
25.10.2007, 23:26
Привет. У меня такой вопрос. Страница содержит в себе информацию, которая зависит от переменной type. Так же количетсво этой информации зависит от переменной num.
То есть, при загрузке страницы адресс выглядит примерно так:
news.php?type=menu&num=3
а вопрос такой...как мне сделать, чтобы значение одной переменной менялось, а значение другой - нет? Ведь если я перезагружаю страницу, то обе переменные обнуляются...

Helios
25.10.2007, 23:38
подробнее напиши что хочешь, а то ничего не понятно=\

inlanger
25.10.2007, 23:42
мне надо, чтобы переменная num изменилась, например на 10, а переменная type и дальше осталась menu

lsass.exe
25.10.2007, 23:58
мне надо, чтобы переменная num изменилась, например на 10, а переменная type и дальше осталась menu
если я тебя правильно понял, ты хочешь чтобы при каждом нажатии ф5 строка news.php?type=menu&num=3 менялась на news.php?type=menu&num=4 и т.д. ?

inlanger
26.10.2007, 00:05
ну,типа того. только не при нажании на ф5, а при нажатии на сцылку

lsass.exe
26.10.2007, 00:08
делай ссылку вида
news.php?type=menu&num=$n
и в начало страницы всунь $n++
при каждом обращении к странице $n будет увеличиваться

inlanger
26.10.2007, 00:13
и толку? При нажатии на ссылку ОБЕ переменные обулятся.

lsass.exe
26.10.2007, 00:15
давай линк на сайт и объясни для чего тебе это нужно, тогда мы сможем тебе реально помочь

inlanger
26.10.2007, 00:19
сайт тупо перестал работать.
а нужно это мне для того, чтобы при различных переменных выводился различный контент.

lsass.exe
26.10.2007, 00:24
<a href=news.php?type=menu&num=1>Страница 1</a>
<a href=news.php?type=menu&num=2>Страница 2</a>
<a href=news.php?type=menu&num=3>Страница 3</a>
В скрипте вывода контента юзай $_GET['num']=1,2,3 и т.д.

Или опять не то? =\

Dimon93rus
26.10.2007, 10:15
Всем доброго времени суток, тут такая проблема:
при попытке открыть страницу браузер выводит сообщение:
Warning: include(.) [function.include]: failed to open stream: Success in /var/www/test/parser/out.php on line 46

Warning: include() [function.include]: Failed opening '.' for inclusion (include_path='.:/usr/share/pear') in /var/www/test/parser/out.php on line 46

Вот строчка файла на которое указывает сообщение:
include $DOCUMENT['filename'];
Но я запускаю не именно этот файл, а другой....

Дело в том что на инет сервере всё работает нормально, а у меня на локальной машине не хочет...

Я так понимаю, что у меня проблемы с ПХП?
Какая Вам необходима дополнительная информация для решения моей проблемы?

P.S.
OS: ASPLinix 11.2
PHP: 5.1.2
Apache: 2.2.3

Red_Red1
26.10.2007, 10:26
Если можно скрипт полностью. И еще глянь значение $DOCUMENT['filename'];
Например так echo $DOCUMENT['filename']; Может там нифига нету.

inlanger
26.10.2007, 10:46
<a href=news.php?type=menu&num=1>Страница 1</a>
<a href=news.php?type=menu&num=2>Страница 2</a>
<a href=news.php?type=menu&num=3>Страница 3</a>
В скрипте вывода контента юзай $_GET['num']=1,2,3 и т.д.
не катит. надо чтобы при нажатии на ссылку news.php?type=menu&num=2 было изменении этой же ссылки на news.php?type=world&num=2

lsass.exe
26.10.2007, 11:53
не катит. надо чтобы при нажатии на ссылку news.php?type=menu&num=2 было изменении этой же ссылки на news.php?type=world&num=2
не кажется ли тебе что ты сам запутался, вот цитата одного из твоих постов выше
мне надо, чтобы переменная num изменилась, например на 10, а переменная type и дальше осталась menu

Давай ты уже решишь что именно тебе нужно ;)

inlanger
26.10.2007, 12:07
блин...точно запутался. просто система у меня тупая получилась...вот и запуталсо...

Ponchik
27.10.2007, 16:33
inlanger, как я понял тебе тупо постраничный вывод нужен =\
http://www.google.com/search?client=opera&rls=ru&q=php+%D0%BF%D0%BE%D1%81%D1%82%D1%80%D0%B0%D0%BD%D 0%B8%D1%87%D0%BD%D1%8B%D0%B9+%D0%B2%D1%8B%D0%B2%D0 %BE%D0%B4&sourceid=opera&ie=utf-8&oe=utf-8

Impuls*
27.10.2007, 21:41
Помогите плиз!
Вот написал антирекламу для сайта)но тут в чем-то ошибка, потому что всегда скрипт выводит false вроде.Кто знает, помогите пожалуйста!


$_anti='#^http://|\.ru$|\.com$|\.mobi$|\.info$|\.org$|\.net$|\.su$| \.ua$#';
$search_text=stristr($content, $_anti);
if ($search_text==false){
echo "
<body>
<div style=\"text-align:left\" class=\"tit\">Ошибка</div>
<div style=\"text-align:left\" class=\"box\">
Спам запрещен!<br/>
Пожалуйста, будьте разумными:<br/>
покупайте официально рекламу на нашем сайте.<br/>
В любом случае ваш спам будет удален,<br/>
ваши старания ровно на 3 мин :)
</div>";
include("inc/foot.inc.php");}

Impuls*
27.10.2007, 21:43
Насчет "синтаксических ошибок" не беспокоится))просто коряво вывел код на форум.
А вот в самом коде чего-то не хватает, надо описать когда true?Что написать?
Заранее спасибо! :)

lsass.exe
27.10.2007, 21:48
if ($search_text==false)
сделай так
if($search_text)
{
true
}
else
{
false
}

Red_Red1
27.10.2007, 21:49
Как то странно ты используешь функцию stristr. У тебя в переменной $_anti записано регулярное выражение, а ты его подставляешь в функцию поиска в строке. Короче логика кода мягко говоря хромает. Если быть точнее то написан полный бред. Без обид но это так.

Вот описание функции stristr.
http://doc.mpv.ru/php/function.stristr.html
Объясни свой код с точки зрения этого описания

Impuls*
27.10.2007, 21:51
Что-то я не понял.
Мне надо, чтобы выполнялись определенные действия, а не просто true или false)
Может я тебя не понял, напиши плиз подробнее.Все равно спасибо)

lsass.exe
27.10.2007, 21:54
Impuls* напиши в чем именно заключается твоя "антиспам система" тогда нам будет легче тебе помочь

Impuls*
27.10.2007, 21:54
Как то странно ты используешь функцию stristr. У тебя в переменной $_anti записано регулярное выражение, а ты его подставляешь в функцию поиска в строке. Короче логика кода мягко говоря хромает. Если быть точнее то написан полный бред. Без обид но это так.
Я не обижаюсь, я учусь, спасибо за критику :)
Тогда, подскажи как сделать правильно.
Мне надо чтобы при спаме (наборе определенных слов), комментарий не печатался, а выводилось сообщение, например: "Реклама запрещена!".Вот я так попытался сделать)
str_replace не подойдет на мой взгляд, потому что сообщение напечатается, а мне этого не надо.

Impuls*
27.10.2007, 22:06
Что, уже никто не может помочь? :)

Red_Red1
27.10.2007, 22:21
Если я правильно понял твой алгоритм, то должно быть так.

$_anti='#^http://|\.ru$|\.com$|\.mobi$|\.info$|\.org$|\.net$|\.su$| \.ua$#';
if (preg_match($_anti, $content)){
echo "
<body>
<div style=\"text-align:left\" class=\"tit\">Ошибка</div>
<div style=\"text-align:left\" class=\"box\">
Спам запрещен!<br/>
Пожалуйста, будьте разумными:<br/>
покупайте официально рекламу на нашем сайте.<br/>
В любом случае ваш спам будет удален,<br/>
ваши старания ровно на 3 мин :)
</div>";
include("inc/foot.inc.php");}

Но я уже выше тебе это писал. Странно что ты не реализовал.
Действует так: если регулярка сработала т.е. в переменной $content присутствует что то из $_anti, функция preg_match вернет true и выполниться ветка "Спам запрещен!"
Вроде так. Если что не понял стучись 434-675-68три

RedBull@12
27.10.2007, 23:58
Всем привет.
по мне там неверно написан шаблон.

//$content - переменная текста
$anti='#http://[a-z0-9_\.]+(\.ru$|\.com$|\.mobi$|\.info$|\.org$|\.net$|\.su$ |\.ua$)#i';
preg_match($anti,$content,$out);
if ($out[0] != ""){
echo "<div style=\"text-align:left\" class=\"tit\">Ошибка</div> ";
echo "<div style=\"text-align:left\" class=\"box\"> ";
echo "Спам запрещен!<br/> ";
echo "Пожалуйста, будьте разумными:<br/> ";
echo "покупайте официально рекламу на нашем сайте.<br/> ";
echo "В любом случае ваш спам будет удален,<br/> ";
echo "ваши старания ровно на 3 мин :) ";
echo "</div>";
}
else { echo "Ok!"; }

Red_Red1
28.10.2007, 00:07
Шаблон тот который дал Impuls*. Может ему именно так нужно искать. Хотя я понял твою идею :). А вот ($out[0] != "") необязательно т.к. preg_match - функция и если есть совпадения то вернет 1, т.е. можно сразу писать if (preg_match($_anti, $content)

Да и еще одно при твоем варианте шаблона будет неверно обрабатываться сайты вида site.xxx т.к. у тебя в [a-z0-9_\.]+ присутствует точка и дальше в расширениях тоже есть точка, значит регулярка будет искать site..xxx (две точки) что неверно.

RedBull@12
28.10.2007, 00:25
Шаблон тот который дал Impuls*. Может ему именно так нужно искать. Хотя я понял твою идею :). А вот ($out[0] != "") необязательно т.к. preg_match - функция и если есть совпадения то вернет 1, т.е. можно сразу писать if (preg_match($_anti, $content)

Там изначально неверный шаблон.
Ну по поводу if-согласен,но мне почему-то просто так больше нравится(хотя вероятно это менее безопасно).

Да и еще одно при твоем варианте шаблона будет неверно обрабатываться сайты вида site.xxx т.к. у тебя в [a-z0-9_\.]+ присутствует точка и дальше в расширениях тоже есть точка, значит регулярка будет искать site..xxx (две точки) что неверно.
вот скрипт накатал...все работает...т.к. в адресе могут быть поддомены.
http://aandb.ru/test.php?a=http://aaa.www.ru

Red_Red1
28.10.2007, 00:51
Я тоже думал про поддомены.... все это ясно. Но я написал адреса вида site.xxx т.е. как оно будет работать если нету поддоменов?

RedBull@12
28.10.2007, 00:52
Я тоже думал про поддомены.... все это ясно. Но я написал адреса вида site.xxx т.е. как оно будет работать если нету поддоменов?
я кинул линк скрипта...можешь порверить все работает.

Red_Red1
28.10.2007, 01:07
Да. Я все понял. Будет работать! Ты прав... я тупанул с классом :)
Хотя там есть одна темка которую скрипт не учитывает. По идее регулярка ищет адреса и если запись соответствует "понятию" адрес сайта, то пишет "СПАМ". Но если мы в сделаем так. http://aandb.ru/test.php?a=http://aaa.........ru (http://aaa.........ru - не адрес сайта) то скрипт все равно выдаст СПАМ!!!! Хотя это уже наверно не критично.

RedBull@12
28.10.2007, 01:14
Да. Я все понял. Будет работать! Ты прав... я тупанул с классом :)
Хотя там есть одна темка которую скрипт не учитывает. По идее регулярка ищет адреса и если запись соответствует "понятию" адрес сайта, то пишет "СПАМ". Но если мы в сделаем так. http://aandb.ru/test.php?a=http://aaa.........ru (http://aaa.........ru - не адрес сайта) то скрипт все равно выдаст СПАМ!!!! Хотя это уже наверно не критично.
почему?...если это порсто текст то он просто проинорирует и все.
ну можно еще прописать дополнительный,необзатель ый параметр в шаблоне, чтобы проверял раширение файла...и т.п. но это уже авто сам добавит...это уже причесать и прилизать...

bxN5
28.10.2007, 04:19
Как прикрутить капчу к форме, а точнее вообще как реализовать капчу. сПс

forsecure4
28.10.2007, 08:54
Доброго времени суток господа!
Есть 2 пхп скрипта на удаленном сервере

1 пхп начинается:

<? session_start(); ?>
<html>
<head>
<title>ADMIN</title>

<script type="text/javascript">
function CheckAll(formname)
{
thisCheckBoxes = document.forms[formname].getElementsByTagName('input');
for (i = 0; i < thisCheckBoxes.length; i++) {
if (thisCheckBoxes[i].name!='forall')
thisCheckBoxes[i].checked = !thisCheckBoxes[i].checked;
}
}
</script>
</head>

<body>
<?
if (session_is_registered("valid_user")) $valid=true; else $valid=false;
if (!isset($login) && !isset($password)) $logged=false;else $logged=true;
if (!$logged && !$valid) {
?>
Please, log in:
<form method=post name=auth action='1.php'>
<table><tr>
<td>Login:</td>
<td><input type=text name=login></td>
</tr><tr>
<td>Password:</td>
<td><input type=password name=password></td>
</tr><tr>
<td colspan=2 align=center><input type=submit value="LOGIN"></td>
</tr>
</form>
<?
}
if ($logged)

...

2 пхп начинается так:

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

<?php
@set_time_limit(0);
@ini_set('max_execution_time',0);
@ini_set('output_buffering',0);

require ("3.php");

...

Возможно ли подменить сеесию?
или получить первый скрипт ?
Или может что-нить другое можно сделать ?
За помощь отблагодарю $

RedBull@12
28.10.2007, 10:25
Как прикрутить капчу к форме, а точнее вообще как реализовать капчу. сПс
а собственно что такое "капча"?

RedBull@12
28.10.2007, 10:57
Возможно ли подменить сеесию?
Чтобы подделать сессию,ее нужно найти сначала.
Как найти сессию - XSS,но здесь вроде как ничего не сделаешь.
у тебя есть участок кода после if ($logged)?
Или может что-нить другое можно сделать ?
если там идет обращение к БД, то вероятно можно покапаться на наличие SQL-inj.

forsecure4
28.10.2007, 15:12
У меня есть код, он почТИ такой же:

if ($login=='admin' && $password=='admin) {
session_register("valid_user");
$valid=true;
} else {
echo "<h3>WRONG LOGIN OR PASS!</h3>";
}
if (!$valid) exit();

groundhog
28.10.2007, 15:18
При register_globals=off к таким скриптам не докопаться.

phol1eadeux
28.10.2007, 16:48
а собственно что такое "капча"?
Почитай здесь:
http://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D0%BF%D1%87%D0%B0

Impuls*
28.10.2007, 17:55
Про preg_match(), я реализовал этот вариант как только ты мне его дал!
НО: он ищет именно этот текст, учитывает вроде регистр букв, потом если написать "http://google.ru/tuta - картинки!" то он пропустит его, я пробывал.Или просто надо что-то добавить))
Вот из-за этих минусов я пробывал это реализовать через поиск без регистра stristr(), здесь и если написано еще что-то то скрипт работает.

Red_Red1
28.10.2007, 18:40
В регулярках можно поставить модификатор "i" тогда будет игнорировать регистр. По поводу остального - напиши подробнее что ты хочешь чтобы у тебя искало и фильтровало... какие именно записи должны фильтроваться скриптом?

Impuls*
28.10.2007, 19:25
ОГРОМНОЕ СПАСИБО Red_Red1!! :)
Все понял, все работает!

RedBull@12
28.10.2007, 19:56
ну собственно в моем примере использовался параметр "i"...
не за что

RedBull@12
28.10.2007, 20:10
Как прикрутить капчу к форме, а точнее вообще как реализовать капчу. сПс
http://www.php.ru/forum/viewtopic.php?p=67825
если нужно могу помочь с реализацией.

----------
С наилучшими пожеланиями!

bxN5
29.10.2007, 00:36
http://captcha.ru/

RedBull@12
29.10.2007, 22:35
http://captcha.ru/
В личку глянь

inlanger
30.10.2007, 01:42
Люди, а как вывести количетсво он-лайн посетителей на сайте не используя базу?

Piflit
30.10.2007, 02:27
Люди, а как вывести количетсво он-лайн посетителей на сайте не используя базу?
сессии

RedBull@12
30.10.2007, 09:34
Люди, а как вывести количетсво он-лайн посетителей на сайте не используя базу?
Работай с сессиями.Сейвь их файл,может конечно есть функция,при заходе чела проверяй какий остались живые.

Если нужно помогу с реализацией.

--------------
С наилучшими пожеланиями!

TANZWUT
30.10.2007, 14:04
есть текст.. с сайта граблю, а затем юзаю preg_match... надо вытащить название файла и размер...
HTML
*****
<p align="center">
test.rar&nbsp;&nbsp;&nbsp;304,237 байт
<br><br>
</p>
*****


preg_match("/\<p align=\"center\"\>(.*?\<)/i", $html, $text);


чёта никак не вкурю в эти каракули с preg_match =\

.::Gh0st::.
30.10.2007, 14:15
можно сделать preg_split с регуляркой <p align="center">|&nbsp;|<br>

RedBull@12
30.10.2007, 16:30
А у меня предложение всеже использовать вот такого вида шаблон.
<?
$content = "<p align=\"center\">test.rar&nbsp;&nbsp;&nbsp;304,237 байт <br><br> </p>";
$anti='#<p align="center">(.*)&nbsp;&nbsp;&nbsp;(.*)<br><br> </p>#i';
preg_match($anti,$content,$out);
echo $content."<br>";
if ($out[0] != ""){
echo "index=0 =>".$out[0];
echo "index=1 =>".$out[1]."<br>";
echo "index=2 =>".$out[2];
}
?>
Т.к. у прег_мача есть необязательный парамет, в него под нулевым индексом записывается полностью вся найденная комбинация.
А дальше начина с 1- в массиве[1] лежит первая скобка,в массиве[2] лежит вторая скобка и т.д.
Данный пример имет общий вид.

---------------------
С наилучшими пожеланиями!

TANZWUT
30.10.2007, 17:23
вобщем почитал http://ru.php.net/manual/ru/reference.pcre.pattern.syntax.php попарил мозги и сделал...

http://tanzwut.name/parser.php

Anna89
02.11.2007, 04:56
Люди, а как вывести количетсво он-лайн посетителей на сайте не используя базу?


<?Php
session_save_path("/path/to/custom/directory");
session_start();
define("MAX_IDLE_TIME", 3);
function getonlineusers(){
if ( $directory_handle = opendir(session_save_path() ) )
{ $count = 0; while ( false !== ( $filename = readdir( $directory_handle ) ) )
{ if($file != '.' && $file != '..'){
if(time()- fileatime(session_save_path() . '\\\\' . $filename) < max_idle_time * 60)
{ $count++; } } } closedir($directory_handle); return $count; } else { return false; }}
print 'Пользователей онлайн: ' . getonlineusers() . '<br />';
?>

inlanger
02.11.2007, 12:31
Народ, у меня такой вопрос. Я хочу создать РСС ленту на сайте. Но у меня тупо не выходит.

<?php
header("content-type: application/rss+xml");
echo "
<?xml version=\"1.0\" encoding=\"windows-1251\"?>
<rss version=\"2.0\">
<channel>
<title>Здесь название канала</title>
<link>Здесь ссылка на сайт</link>
<description>Здесь краткое описание данного канала</description>
<lastBuildDate>Здесь дата последнего изменения в канале (RFC 2822)</lastBuildDate>

<item>
<title>Заголовок статьи1 или новости1</title>
<link>Ссылка на эту статью или новость</link>
<description>Текст статьи или новости в произвольном объёме</description>
<pubDate>Дата опубликования данной статьи или новости</pubDate>
</item>

<item>
<title>Заголовок статьи2 или новости2</title>
<link>Ссылка на эту статью или новость</link>
<description>Текст статьи или новости в произвольном объёме</description>
<pubDate>Дата опубликования данной статьи или новости</pubDate>
</item>

<item>
<title>Заголовок статьи3 или новости3</title>
<link>Ссылка на эту статью или новость</link>
<description>Текст статьи или новости в произвольном объёме</description>
<pubDate>Дата опубликования данной статьи или новости</pubDate>
</item>

</channel>
</rss>";
?>

когда я пытаюст открыть эту страницу мне браузер предлагает её сохранить или выбрать, через что открыть. Если я выбираю ФФ, то выводит
Здесь ссылка на сайт Здесь краткое описание данного канала Здесь дата последнего изменения в канале (RFC 2822) Ссылка на эту статью или новость Текст статьи или новости в произвольном объёме Дата опубликования данной статьи или новости Ссылка на эту статью или новость Текст статьи или новости в произвольном объёме Дата опубликования данной статьи или новости Ссылка на эту статью или новость Текст статьи или новости в произвольном объёме Дата опубликования данной статьи или новости
вот такая фигня... проверял не только на локалке.