 |
Форум Wizards World
|
Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
M-Solo
Сообщения: 157
|
Добавлено: Чт Окт 04, 2007 18:01 Заголовок сообщения: |
|
|
Фрэймы однозначно не лучшее..и за что только их любят програмисты) ведьхочется еще и свою инфо дописать- звание в клане, медалька, шоколадка, если есть. ссылочка на фотоальбом. любое ограничение на управление информацией на сайте меня , например, нервит). |
|
Вернуться к началу |
|
 |
КЛЫКОЗУБ
Сообщения: 22
|
Добавлено: Пн Окт 08, 2007 15:09 Заголовок сообщения: |
|
|
Есть еще один вариант, он мне нравится больше но прокатит только на хороших платных хостингах на остальных запрещают функции работы с файлами через ВЕБ.
1. Получаем страничку с персонажем (функции OPEN, при разрешенном доступе через Веб).
2. Меняем в ней ссылки с относительных на абсолютные. Добавляем клановую инфу и тд.
2(альтернативный). Парсим страничку в поиске нужной инфы (ИМПа, Статуса и тд.) и вносим в свою базу. и заканчиваем на этом.
3. Сохраняем в своей базе.
4. Делаем доступ к страничкам по типу www.мой_клановый_сайт.ru/viewPers.php?id=1255 где скрипт viewPers.php просто выводит инфу из базы и отображает её.
5. Как угодно отображаем эту страничку, хоть фреймами хоть как.
Плюс такого варианта, Перс которого вносят в базу может выставить лучший вариант шмота и апов, который будут видеть при просмотре а не текущий одетый в данный момент. |
|
Вернуться к началу |
|
 |
Ночной_Правнук
Сообщения: 2901
|
Добавлено: Пн Окт 08, 2007 16:01 Заголовок сообщения: |
|
|
так и делают на сайтов некоторых коанов (на скок я понимаю) только вместо БД используют обыкновеный текстовик, дабы меньше её нагружать и выводится скриптом на одну страницу т.е. 4 пункт другой.
Лично у меня проблема возникла именно с 2 альтернативным, при сборе инфы с самой странице...знаний не хватает))  |
|
Вернуться к началу |
|
 |
s304_student Модератор Форума
 Сообщения: 7699
|
Добавлено: Пн Окт 08, 2007 17:25 Заголовок сообщения: |
|
|
Не понял в чем смысл последних предложенных вариантов. |
|
Вернуться к началу |
|
 |
КЛЫКОЗУБ
Сообщения: 22
|
Добавлено: Пн Окт 08, 2007 17:43 Заголовок сообщения: |
|
|
Ночной_Правнук
Что там сложного? Я конечно начинающий Веб программист, но в не Веб програмировании я шарю неплохо, поэтому я например использовал бы такой вариант(без регулярных выражений) для проверки ИМПа:
$s = file_get_contents($adr);
$p = strpos($s, "ИПМ: <b>")+13;
$pe = strpos($s, "</b>", $p);
$imp = substr($s, $p, $pe-$p);
В строке $adr находится ссылка на перса в виде: http://tarnia.wiw1.ru/cgi-bin/personviews.cgi?nickname=КЛЫКОЗУБ
В результате в строке $imp получим 2...
Это почти весь скрипт, без пары строк.
Нужно не забывать что функция file_get_contents не сработает, если запрещен доступ к файлам через TCP/IP
И еще нельзя использовать такой скрипт в цикле, лучше раз в день запускать. К примеру часа в три ночи. В случае если проверка статуса, минут 10 хотя бы интервал проверок сделать... Хотя тут лучше у строителей спросить сколько им не жалко
Или что еще лучше, сделать по обращению к скрипту, но не чаще чем 10 минут...
s304_student Непонятно что я предложил? Если в двух словах, я предложил парсить страницу с инфой и сохранять её у себя. Для дальнейшего отображения. |
|
Вернуться к началу |
|
 |
Ночной_Правнук
Сообщения: 2901
|
Добавлено: Пн Окт 08, 2007 18:35 Заголовок сообщения: |
|
|
Так скрипты и запускаются раз в ...10 минут (точно время естественно не знаю), инфа кидается в текстовик, и при генерации страница при просмотри от туда и берется инфа, следовательно задержка инфы не больше 10 минут, а для того чтобы с этой страницы смотреть кто в клане онлайн, и в каком городе сидит, +-10 минут вполне приемлимы.
Для составление клановог орейтинга тоже можно написать скрипт обрабатывающий инфу в текстовике и выдающий к примеру прирост апов, боев итд ,за неделю к примеру, ну и прочие рейтинги клана также.
А насчет начинающий вэб-программер...я не вэб-программер к сожалению))  |
|
Вернуться к началу |
|
 |
M-Solo
Сообщения: 157
|
Добавлено: Вт Окт 09, 2007 15:44 Заголовок сообщения: |
|
|
КЛЫКОЗУБ, спаибо,конечно) только не программист я - можно подробнее
что значит парсим) и что значит в бд) то есть, пример таблицы в бд - раз уж взялись помогать) и пример функции на странице- ) спсаибо) |
|
Вернуться к началу |
|
 |
Такеда
Сообщения: 581
|
Добавлено: Вт Окт 09, 2007 17:14 Заголовок сообщения: |
|
|
КЛЫКОЗУБ писал(а): | Есть еще один вариант, он мне нравится больше но прокатит только на хороших платных хостингах на остальных запрещают функции работы с файлами через ВЕБ.
1. Получаем страничку с персонажем (функции OPEN, при разрешенном доступе через Веб).
2. Меняем в ней ссылки с относительных на абсолютные. Добавляем клановую инфу и тд.
2(альтернативный). Парсим страничку в поиске нужной инфы (ИМПа, Статуса и тд.) и вносим в свою базу. и заканчиваем на этом.
3. Сохраняем в своей базе.
4. Делаем доступ к страничкам по типу www.мой_клановый_сайт.ru/viewPers.php?id=1255 где скрипт viewPers.php просто выводит инфу из базы и отображает её.
5. Как угодно отображаем эту страничку, хоть фреймами хоть как.
Плюс такого варианта, Перс которого вносят в базу может выставить лучший вариант шмота и апов, который будут видеть при просмотре а не текущий одетый в данный момент. |
повторюсь ..
в данном случае есть одна неприятность, связанная с перемещениями персов между городами .. если волшебник не найден в запрашиваемом городе, то инфа не будет получена .. а опрашивать все города ИМХО не есть гуд да и долго это .. или же писать скрипт, который будет отслеживать редиректы ..
rss лента позволила бы отслеживать текущее состояние перса, а не примерное за день, как в вышеуказанном случае .. к тому же не решена проблема получения инфы персонажа из неизвестного города, с учетом редиректа ..
наверно предложение к строителям такое - перевести отображение инфы персонажей на отдельный домен и подключать разные css, в зависимости от города пребывания ..
но опять же это на усмотрение строителей )) может быть это создаст дополнительную нагрузку на сервер, а может быть немного его наоборот разгрузит ... |
|
Вернуться к началу |
|
 |
Ночной_Правнук
Сообщения: 2901
|
Добавлено: Ср Окт 10, 2007 1:00 Заголовок сообщения: |
|
|
Такеда писал(а): |
наверно предложение к строителям такое - перевести отображение инфы персонажей на отдельный домен и подключать разные css, в зависимости от города пребывания ..
но опять же это на усмотрение строителей )) может быть это создаст дополнительную нагрузку на сервер, а может быть немного его наоборот разгрузит ... |
Ну тогда нужно подать в соседний форум заявку)) А то зедсь общение
Насчет бага с перелетом: при отсутствие новой инфы о персе просто не обновлять старую.
Насчет ленты это будет удобнее нам, но я так понимаю на каждого перса скрипт будет делать свою ленту? и сохранять её где-то до востребования клановыми сайтами?
я просто не совсем точно представляю как работает система с rss  |
|
Вернуться к началу |
|
 |
M-Solo
Сообщения: 157
|
Добавлено: Ср Окт 10, 2007 2:01 Заголовок сообщения: |
|
|
как то с xml ))) |
|
Вернуться к началу |
|
 |
КЛЫКОЗУБ
Сообщения: 22
|
Добавлено: Ср Окт 10, 2007 16:13 Заголовок сообщения: |
|
|
Такеда писал(а): |
повторюсь ..
в данном случае есть одна неприятность, связанная с перемещениями персов между городами .. если волшебник не найден в запрашиваемом городе, то инфа не будет получена .. а опрашивать все города ИМХО не есть гуд да и долго это .. или же писать скрипт, который будет отслеживать редиректы ..
rss лента позволила бы отслеживать текущее состояние перса, а не примерное за день, как в вышеуказанном случае .. к тому же не решена проблема получения инфы персонажа из неизвестного города, с учетом редиректа .. |
Так я для избежания бага и предложил хранить в базе страничку, а не каждый раз качать.
А насчет редиректов Посмотри на эту страничку Попробуй повводить различные имена, персонажей в разных городах
Код скрипта:
<?
if(isset($nik))
{
$s = file_get_contents("http://aradon.wiw.ru/cgi-bin/personviews.cgi?nickname=".$nik);
$ps = strpos($s, "ИПМ: <b>");
if ($ps === FALSE) {
echo "ИПМ отсутствует";
} else {
$p = $ps+13;
$pe = strpos($s, "</b>", $p);
$imp = substr($s, $p, $pe-$p);
echo "ИПМ равен = ".htmlspecialchars($imp);
}
$ps = strpos($s, "</font> ");
if ($ps === FALSE) {
echo "Город неизвестен!";
} else {
$p = $ps+20;
$pe = strpos($s, " ", $p);
$city = substr($s, $p, $pe-$p);
echo "<br>Находится в городе: ".htmlspecialchars($city);
}
}
?>
ЗЫ: для наглядности добавил еще и город 
Последний раз редактировалось: КЛЫКОЗУБ (Ср Окт 10, 2007 17:28), всего редактировалось 1 раз |
|
Вернуться к началу |
|
 |
M-Solo
Сообщения: 157
|
Добавлено: Ср Окт 10, 2007 16:28 Заголовок сообщения: |
|
|
милый) а как сюда вставить еще бп и ап?) можно без ечо) хотя бы как переменные называются) спасибо!)ой) и картинку.) ечо) |
|
Вернуться к началу |
|
 |
КЛЫКОЗУБ
Сообщения: 22
|
Добавлено: Ср Окт 10, 2007 16:28 Заголовок сообщения: |
|
|
M-Solo писал(а): | КЛЫКОЗУБ, спаибо,конечно) только не программист я - можно подробнее
что значит парсим) и что значит в бд) то есть, пример таблицы в бд - раз уж взялись помогать) и пример функции на странице- ) спсаибо) |
Я не хочу писать готовы решения, так как не знаю возможностей вашего хостинга, а так же у меня нет уверенности в отсутствие дыр в моих скриптах я все-же больше к обычному программированию привык
Парсим, по иному тырим данные с чужой страницы
БД - база данных, обычно mySQL или иная в зависимости от хостинга. (в нашем случае можно забить на базу и работать с файлами)
А помогать не могу времени нет В игру вхожу только имп поднять  |
|
Вернуться к началу |
|
 |
M-Solo
Сообщения: 157
|
Добавлено: Ср Окт 10, 2007 16:30 Заголовок сообщения: |
|
|
у меня платный хостинг, всю , что нужно) php 4? апач, май си..) неогранич бд) |
|
Вернуться к началу |
|
 |
Damir
Сообщения: 7
|
Добавлено: Ср Окт 10, 2007 16:51 Заголовок сообщения: |
|
|
сорри оффтоп:
меня всегда интересовало почему многие ИПМ называют ИМП?  |
|
Вернуться к началу |
|
 |
КЛЫКОЗУБ
Сообщения: 22
|
Добавлено: Ср Окт 10, 2007 17:26 Заголовок сообщения: |
|
|
Добавил отображение картинки. дело на 3 мин.
$ps = strpos($s, '<img id="char_info_pers_icon_left" src="');
if ($ps === FALSE) {
echo "Нет картинки!";
} else {
$p = $ps+40;
$pe = strpos($s, '" alt="', $p);
$imgA = substr($s, $p, $pe-$p);
//echo "s = ".strpos($s, "ИПМ: <b>");
echo '<br>Портрет:<br> <img src="'.htmlspecialchars($imgA).'">';
}
Результат работы можно глянуть тут.
АП можно узнать только текущий, а не максимальный. А от текущего пользы мало.
БП аналогично, только диапазон посчитать по званию.
ЗЫ: вечером если будет время распишу что есть что и как изменить, для иных фишек, а пока нет времени. |
|
Вернуться к началу |
|
 |
M-Solo
Сообщения: 157
|
Добавлено: Ср Окт 10, 2007 18:54 Заголовок сообщения: |
|
|
ой) кака прелесть, знать бы чего тепреь с этим делать) пожалуй, самое время мучать студента.) |
|
Вернуться к началу |
|
 |
s304_student Модератор Форума
 Сообщения: 7699
|
Добавлено: Ср Окт 10, 2007 19:05 Заголовок сообщения: |
|
|
кака, может и прелесть, только я при чем?) |
|
Вернуться к началу |
|
 |
M-Solo
Сообщения: 157
|
Добавлено: Ср Окт 10, 2007 19:07 Заголовок сообщения: |
|
|
так умничал же в начале темы) значит, что то еще знал) на самом деле, мне малость осталось узнать) - вечный вопрос- как? и куда?))) |
|
Вернуться к началу |
|
 |
M-Solo
Сообщения: 157
|
Добавлено: Чт Окт 11, 2007 3:34 Заголовок сообщения: вот что выходит |
|
|
<?php
// Устанавливаем соединение с базой данных
require_once ("../ооророророе5777.php");
$title="Олимпийцы";
include "../util/top1.php";
// Извлекаем из строки запроса параметр id_parent
// $id_parent = $_GET['id_parent'];
$id_photo=$_GET['id_photo'];
if(empty($id_parent)) $id_parent = 0;
?>
<table border="0" width="100%" align=center>
<?
// Выбираем из базы данных фотографии
$query = "SELECT * FROM photo
WHERE id_photo=$id_photo and hide = 'show'
ORDER BY pos";
$prt = mysql_query($query);
if(!$prt)
{
echo "error : ".mysql_error()."<br>";
echo $query;
puterror("Ошибка при обращении к блоку Фотогалерея");
}
// Если в текущей группе фотографии имеется хотя бы одна
// фотография - формируем таблицу с фотографиями
if(mysql_num_rows($prt) > 0)
{
// Вспомогательная переменная для вывода
// фотографий по 3 штуки в строке
$td == 0;
// Выводим заголовок таблицы
while($par = mysql_fetch_array($prt))
{
// Формируем переменную $image, несущую ответственность за вывод
// уменьшенного изображения, являющегося ссылкой на увеличенное
if(!empty($par['small']) &&
$par['small']!="-" &&
file_exists($par['small']))
{
// $image = "<a href='".$par['big']."' target=_blank>
//<img src=".$par['small']." border=0 width=81 height=168></a>";
// $image1 = "<a href='".$par['big1']."' target=_blank>
// <img src=".$par['small1']." border=0 width=81 height=168></a>";
// $image2 = "<a href='".$par['big2']."' target=_blank>
// <img src=".$par['small2']." border=0 width=81 height=168></a>";
}
else $small = "Нет";
// Если значение временной переменной равно 0
// выводим тэг начала строки таблицы <tr>
if ($td == 0) echo "<tr>";
// Выводим фотографию
echo "<td align=center><table border=0 valign=top><tr align=center> <td>
<a target=_new href=http://dorikan.wiw1.ru/cgi-bin/personviews.cgi?sid=&nickname= ". $par['name']. "</a> ".$par['name']." </a><br></td></tr>
<tr><td>
Здесь мне надо вывести инфу о персе из вива.
Но инфа должна быть привязана к $par['name'].
тогда у меня все это гармонично ввяжется и в смску и в фотогалерею и я смогу еще под нифой из вива- кучу другой инфы выложить о персе.
</td>
</tr>
<tr align=center>
<td width=97>$image4</td></tr>
<tr>
<td align=center width=95%><br><p class=main>".$par['name1']."</p></td>
</tr></table></td></tr>";
// Увеличиваем значение временной переменной $td
$td++;
// Если временная переменная $td принимает значение
// равное 5, следовательно строка завершена, и необходимо
// вывести завершающий тэг </tr>, а значение самой
// переменной обнулить
if ($td == 3)
{
echo "</tr>";
$td = 0;
}
}
}
?>
</table><br><br>
<?
include "../util/bottom1.php";
?>
Я вставила ваш код в фотогалерею. То есть попыталась. мне важно чтобы с основной страницы со списком разделов кликнув на фото, перешли именно на эту страницу- а здесь уже земенить фото из фотогалареи на инфо из вива. Почему? потому что на эту страницу я могу еще много другой инфо через смску выложить- Image4 - это и есть та инфо. мне надо как то привязать этот скрипт. то есть показать что $nik это тоже самое, что $par[name]
помогите пожалуйста- зедсь одной строчки не хватает(
Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /usr/home/wiwolimp/domains/wiw-olimp.ru/public_html/photo/photos3.php on line 70 |
|
Вернуться к началу |
|
 |
КЛЫКОЗУБ
Сообщения: 22
|
Добавлено: Чт Окт 11, 2007 9:35 Заголовок сообщения: |
|
|
То есть "вставила"? В каком виде?
Если вставлять в уже готовую страницу необходимо, откинуть <? и ?>, после этого, если есть 100% уверенность в существовании переменной $par[name], тогда можно исключить проверку на её наличие.
То есть вставить что то вроде, этого:
$s = file_get_contents("http://aradon.wiw.ru/cgi-bin/personviews.cgi?nickname=".$par[name]);
$ps = strpos($s, "ИПМ: <b>");
if ($ps === FALSE) {
echo "ИПМ отсутствует";
} else {
$p = $ps+13;
$pe = strpos($s, "</b>", $p);
$imp = substr($s, $p, $pe-$p);
echo "ИПМ равен = ".htmlspecialchars($imp);
}
$ps = strpos($s, "</font> ");
if ($ps === FALSE) {
echo "Город неизвестен!";
} else {
$p = $ps+20;
$pe = strpos($s, " ", $p);
$city = substr($s, $p, $pe-$p);
echo "<br>Находится в городе: ".htmlspecialchars($city);
}
Плюс к этому нужно учесть, что я давал пример парсинга, а нужно еще организовать вывод и хранение инфомации.
И еще один ньюанс.
Создай у себя страничку с кодом <? phpinfo() ?> и выполни ее на сайте, тебе покажут страницу с параметрами PHP, там нужно найти параметр allow_url_fopen - если он off скрипт работать не будет.
Еще стоит уточнить, что находится в 70-й строчке, если там ?> или { или } тогда, в соседних строчках.
и тд.... |
|
Вернуться к началу |
|
 |
M-Solo
Сообщения: 157
|
Добавлено: Пт Окт 12, 2007 16:06 Заголовок сообщения: |
|
|
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /usr/home/wiwolimp/domains/wiw-olimp.ru/public_html/photo/photos3.php on line 64
когда ставлю твой предыдущий скрипт- все работает. то есть через форму ввода все находит. а тут вот выдает ошибку, я думаю, что как то не так вставляю..
}
else $small = "Нет";
// Если значение временной переменной равно 0
// выводим тэг начала строки таблицы <tr>
if ($td == 0) echo "<tr>";
// Выводим фотографию
echo "<td align=center><table border=0 valign=top><tr align=center> <td alin=center>
<a target=_new href=http://dorikan.wiw1.ru/cgi-bin/personviews.cgi?sid=&nickname=".$par['name']."> ".$par['name']." </a><br>
$s = file_get_contents("http://aradon.wiw.ru/cgi-bin/personviews.cgi?nickname=".$par[name]);
$ps = strpos($s, "ИПМ: <b>");
if ($ps === FALSE) {
echo "ИПМ отсутствует";
} else {
$p = $ps+13;
$pe = strpos($s, "</b>", $p);
$imp = substr($s, $p, $pe-$p);
echo "ИПМ равен = ".htmlspecialchars($imp);
}
$ps = strpos($s, "</font> ");
if ($ps === FALSE) {
echo "Город неизвестен!";
} else {
$p = $ps+20;
$pe = strpos($s, " ", $p);
$city = substr($s, $p, $pe-$p);
echo "<br>Находится в городе: ".htmlspecialchars($city);
}
64 строка,это строка, где начинается твоЯ ВСТАВКА( спасибо тебе огромное запомощь) новости уже работают..а вот тут что то не так делаю..и половины из того что ты пишешь- не понимаю)) |
|
Вернуться к началу |
|
 |
madArx
Сообщения: 431
|
Добавлено: Вс Окт 14, 2007 22:01 Заголовок сообщения: |
|
|
Цитата: | // Выводим фотографию
echo "<td align=center><table border=0 valign=top><tr align=center> <td alin=center>
<a target=_new href=http://dorikan.wiw1.ru/cgi-bin/personviews.cgi?sid=&nickname=".$par['name']."> ".$par['name']." </a><br> ";
$s = file_get_contents("http://aradon.wiw.ru/cgi-bin/personviews.cgi?nickname=".$par[name]);
$ps = strpos($s, "ИПМ: <b>");
if ($ps === FALSE) {
|
Потерян кусок строки с закрывающими тегами! |
|
Вернуться к началу |
|
 |
|
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
|
Powered by phpBB © 2001, 2005 phpBB Group
|