[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Не могу дать htm-ке понять где лежит php
Punktir
Закинул сайт на хост. пхп поддерживает.
закинул в дирректорию нужную скрипт гостевой книги, атрибуты выставил требуемые.
Впихиываю в нужную страничку в нужное место ссылку:

<?php
include("http://..........cgi-bin/index.php")
?>

но как ничего и не проиходило...
В чем дело,кто знает?



Спустя 4 минуты, 29 секунд (3.08.2012 - 23:31) Winston написал(а):
Для того, чтобы можно было подключать через http нужно включить директивы
http://www.php.net/manual/ru/filesystem.co...allow-url-fopen
allow_url_include и allow_url_fopen

Спустя 9 минут, 25 секунд (3.08.2012 - 23:40) Punktir написал(а):
Цитата (Winston @ 4.08.2012 - 00:31)
Для того, чтобы можно было подключать через http нужно включить директивы
http://www.php.net/manual/ru/filesystem.co...allow-url-fopen
allow_url_include и allow_url_fopen

Я так понимаю php.ini должен лежать на хосте?

Спустя 3 минуты, 32 секунды (3.08.2012 - 23:43) Guest написал(а):
Winston
Хостер уже таких благ не даёт, ни один, если такое есть это дырка в безопасности так как можно и такое зачудить fopen('http://')

Спустя 30 минут, 56 секунд (4.08.2012 - 00:14) Punktir написал(а):
Так как в итоге то? скормить гостевуху пхп html-ке?

Спустя 57 секунд (4.08.2012 - 00:15) killer8080 написал(а):
Цитата (Punktir @ 4.08.2012 - 00:26)
Впихиываю в нужную страничку в нужное место ссылку:

<?php
include("http://..........cgi-bin/index.php")
?>

но как ничего и не проиходило...

И где ты здесь видишь ссылку? rolleyes.gif

Спустя 8 часов, 9 минут, 16 секунд (4.08.2012 - 08:25) Punktir написал(а):
Цитата (killer8080 @ 4.08.2012 - 01:15)
Цитата (Punktir @ 4.08.2012 - 00:26)
Впихиываю в нужную страничку в нужное место ссылку:

<?php
include("http://..........cgi-bin/index.php")
?>

но как ничего и не проиходило...

И где ты здесь видишь ссылку? rolleyes.gif

то есть?)

Спустя 2 часа, 59 минут, 54 секунды (4.08.2012 - 11:25) killer8080 написал(а):
Цитата (Punktir @ 4.08.2012 - 09:25)
то есть?)


То и есть, инклюд это не ссылка.

Спустя 1 час, 42 минуты, 28 секунд (4.08.2012 - 13:07) Punktir написал(а):
Цитата (killer8080 @ 4.08.2012 - 12:25)
Цитата (Punktir @ 4.08.2012 - 09:25)
то есть?)


То и есть, инклюд это не ссылка.

а,верно...

Решил проблему так:




<iframe src="http://............................./index.php" width="800" height="800" frameborder = "0" scrolling = "no">
</iframe>

подогнал чтоб было не сужено, по истинному размеру.
Никто не сталкивался с отсутствием показа изображений всех частей скрипта?(

Спустя 5 минут, 20 секунд (4.08.2012 - 13:12) killer8080 написал(а):
Punktir
Выкинь этот изврат с ифреймом. Файлы нужно инклюдить через файловую систему, а не через урл. Должно быть что то типа такого
include $_SERVER['DOCUMENT_ROOT']."/cgi-bin/index.php";

Спустя 15 минут, 7 секунд (4.08.2012 - 13:27) Punktir написал(а):
Цитата (killer8080 @ 4.08.2012 - 14:12)
Punktir
Выкинь этот изврат с ифреймом. Файлы нужно инклюдить через файловую систему, а не через урл. Должно быть что то типа такого
include $_SERVER['DOCUMENT_ROOT']."/cgi-bin/index.php";

<?include $_SERVER['DOCUMENT_ROOT']."http://.........../cgi-bin/index.php";?>

так-страница в ноль эмоций

Спустя 1 час, 30 минут, 10 секунд (4.08.2012 - 14:58) killer8080 написал(а):
Punktir
блин, да перестань ты туда http:// совать biggrin.gif

Спустя 1 час, 30 минут, 55 секунд (4.08.2012 - 16:29) Punktir написал(а):
Цитата (killer8080 @ 4.08.2012 - 15:58)
Punktir
блин, да перестань ты туда http:// совать biggrin.gif

аааа))
так, щас спрошу,если туплю, то заранее извиняюсь))
надо так?

<?include $_SERVER['DOCUMENT_ROOT']."/cgi-bin/index.php";?>
или дать путь аля сайт.ру/cgi-bin/index.php ?

в любом случае не видит..

Спустя 7 минут, 41 секунда (4.08.2012 - 16:36) killer8080 написал(а):
Punktir
для начала, как работает у тебя php? Модуль апача, или fcgi?

Спустя 55 минут, 4 секунды (4.08.2012 - 17:31) Punktir написал(а):
Цитата (killer8080 @ 4.08.2012 - 17:36)
Punktir
для начала, как работает у тебя php? Модуль апача, или fcgi?

У меня cgi, если не ошибаюсь.

Спустя 5 минут, 40 секунд (4.08.2012 - 17:37) killer8080 написал(а):
Цитата (Punktir @ 4.08.2012 - 18:31)
У меня cgi, если не ошибаюсь.

echo PHP_SAPI;

что выдает?

Спустя 24 минуты, 57 секунд (4.08.2012 - 18:02) Punktir написал(а):
Цитата (killer8080 @ 4.08.2012 - 18:37)
Цитата (Punktir @ 4.08.2012 - 18:31)
У меня cgi, если не ошибаюсь.

echo PHP_SAPI;

что выдает?

Всё верно, "cgi-fcgi" пишет.

Спустя 8 минут, 37 секунд (4.08.2012 - 18:10) killer8080 написал(а):
Punktir
Возможно $_SERVER['DOCUMENT_ROOT'] некорректно работает, выведи
echo $_SERVER['DOCUMENT_ROOT'].'<br>';
echo __FILE__;

Сравни соответствие путей. В инклюде используй полный путь от корня файловой системы.

Спустя 18 минут, 11 секунд (4.08.2012 - 18:29) Punktir написал(а):
Цитата (killer8080 @ 4.08.2012 - 19:10)
Punktir
Возможно $_SERVER['DOCUMENT_ROOT'] некорректно работает, выведи
echo $_SERVER['DOCUMENT_ROOT'].'<br>';
echo __FILE__;

Сравни соответствие путей. В инклюде используй полный путь от корня файловой системы.

Дал он мне пару ссылок, самую полную вписал в инклюд

/home/s/сайт.ru/WWW/cgi-bin/index.php

все равно не прорезались глазки у хтмл'а

Спустя 4 минуты, 15 секунд (4.08.2012 - 18:33) killer8080 написал(а):
в начале файла
ini_set('display_errors', 1);

ini_set('display_startup_errors', 1);

error_reporting(E_ALL|E_STRICT);

смотри какие ошибки выдает.
Каталог /cgi-bin/ может находиться и не в веб директории.

Спустя 3 минуты (4.08.2012 - 18:36) Punktir написал(а):
Ошибок не дал. но ооткрыл я лог с еррорами и вот эта там в цикле:

[04-Aug-2012 14:02:19] PHP Warning: include() [<a href='function.include'>function.include</a>]: Failed opening 'data/top.html' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/s/сайт.ru/WWW/cgi-bin/index.php on line 295

Спустя 9 минут, 20 секунд (4.08.2012 - 18:45) killer8080 написал(а):
Punktir
покажи код целиком, вслепую трудно что то советовать.

Спустя 2 минуты, 50 секунд (4.08.2012 - 18:48) Punktir написал(а):
Цитата (killer8080 @ 4.08.2012 - 19:45)
Punktir
покажи код целиком, вслепую трудно что то советовать.

Код чего именно? лога ошибок скрипта?

[04-Aug-2012 09:55:18] PHP Parse error: syntax error, unexpected $end in /home/s/сайт.ru/WWW/cgi-bin/admin.php on line 485
[04-Aug-2012 14:00:05] PHP Warning: include(data/top.html) [<a href='function.include'>function.include</a>]: failed to open stream: No such file or directory in /home/s/сайт..ru/WWW/cgi-bin/index.php on line 295
[04-Aug-2012 14:00:05] PHP Warning: include() [<a href='function.include'>function.include</a>]: Failed opening 'data/top.html' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/s/сайт.ru/WWW/cgi-bin/index.php on line 295
[04-Aug-2012 14:02:19] PHP Warning: include(data/top.html) [<a href='function.include'>function.include</a>]: failed to open stream: No such file or directory in /home/s/сайт.ru/WWW/cgi-bin/index.php on line 295
[04-Aug-2012 14:02:19] PHP Warning: include() [<a href='function.include'>function.include</a>]: Failed opening 'data/top.html' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/s/сайт.ru/WWW/cgi-bin/index.php on line 295


или другой код?

Спустя 4 минуты, 36 секунд (4.08.2012 - 18:53) killer8080 написал(а):
Нет, самого скрипта. Кстати судя по логам, ты туда пихал относительный путь data/top.html, соответственно полный путь получается
/home/s/сайт.ru/WWW/cgi-bin/data/top.html
где в действительности находится data/top.html ?
В общем тут явно проблемы с путями.

Спустя 5 минут, 24 секунды (4.08.2012 - 18:58) Punktir написал(а):
top.html там и находится в ДАТА, только в описании скрипта позволено было удаление если не надо, удалил-ошибка.вернул.

вот индекс.пхп:

<? // Гостевая книга v 2.0.1 //  04.08.12 г.  //  md-sashka@mail.ru

ini_set('display_errors', 1);

ini_set('display_startup_errors', 1);

error_reporting(E_ALL|E_STRICT);
error_reporting (E_ALL);

include "data/config.php";

// так надо
$use_www="0"; $use_addpole="0"; $use_rezerv1="0"; $use_rezerv2="0"; $use_rezerv3="0";

$host=$_SERVER["HTTP_HOST"]; $self=$_SERVER["PHP_SELF"]; $url=str_replace('index.php','',"http://$host$self");

// Удалите коментарии // ниже у любого дополнительного поля! Какое Вам нужно!
//$use_www="1"; // Адрес сайта
//$use_addpole="1"; // Доп. поле
//$use_rezerv1="1"; // Резервное поле 1
//$use_rezerv2="1"; // Резервное поле 2
//$use_rezerv3="1"; // Резервное поле 3


$host="http://"; $host.=$_SERVER["HTTP_HOST"]; $self=$_SERVER["PHP_SELF"];
$self=str_replace("index.php","",$self);// Определяем URL места нахождения скрипта (для защиты от спама)

$shapka="<html><head><META content='text/html; charset=windows-1251' http-equiv=Content-Type><link rel=stylesheet type='text/css' href='$skin/style.css'></head><body>";

// БЛОК загадок
$rand_zag=array(
"Сидит дед, во сто шуб одет. Кто его раздевает, тот слёзы проливает.",
"Стоит Антошка на одной ножке. Кто его встретит - всяк ему поклонится.",
"Кто поляны белит белым? И на стенах пишет мелом?",
"Шьет пуховые перины, разукрасил все витрины?",
"Покатился по полу колобок, да оставил хвост на семь верст",
"Все обходят это место: здесь земля, как буд-то тесто.",
"Здесь осока, кочки, мхи, нет опоры для ноги.",
"умный Ивашка в деревянной рубашке. По белому полю пойдёт, всяк его след поймет",
"Кто приходит, кто уходит, все ее за ручку водят",
"Летит - кричит, сядет - молчит, кто его убьет - свою кровь прольет");

// БЛОК ответов на загадки
$rand_qwe=array(
"лук",
"гриб",
"мороз",
"мороз",
"клубок",
"болото",
"болото",
"карандаш",
"дверь",
"комар");


if (isset($_GET['image'])) {
// Функция с цифрами защиты
$st="R0lGODlhCgAMAIABAFNTU////yH5BAEAAAEALAAAAAAKAAwAAAI"; // общая часть для всех рисунков
function imgwr($st,$num){
if ($num=="0") {$len="63"; $number=$st."WjIFgi6e+QpMP0jin1bfv2nFaBlJaAQA7";}
if ($num=="1") {$len="61"; $number=$st."UjA1wG8noXlJsUnlrXhE/+DXb0RUAOw==";}
if ($num=="2") {$len="64"; $number=$st."XjIFgi6e+QpMPRlbjvFtnfFnchyVJUAAAOw==";}
if ($num=="3") {$len="64"; $number=$st."XjIFgi6e+Qovs0RkTzXbj+3yTJnUlVgAAOw==";}
if ($num=="4") {$len="64"; $number=$st."XjA9wG8mWFIty0amczbVJDVHg9oSlZxQAOw==";}
if ($num=="5") {$len="63"; $number=$st."WTIAJdsuPHovSKGoprhs67mzaJypMAQA7";}
if ($num=="6") {$len="63"; $number=$st."WjIFoB6vxmFw0pfpihI3jOW1at3FRAQA7";}
if ($num=="7") {$len="61"; $number=$st."UDI4Xy6vtAIzTyPpg1ndu9oEdNxUAOw==";}
if ($num=="8") {$len="63"; $number=$st."WjIFgi6e+QpMP2slSpJbn7mFeWDlYAQA7";}
if ($num=="9") {$len="64"; $number=$st."XjIFgi6e+QpMP0jinvbT2FGGPxmlkohUAOw==";}
header("Content-type: image/gif");
header("Content-length: $len");
echo base64_decode($number); }
// Вывод изображений на экран (все кодированы - робот не пройдёт)
if (array_key_exists("image", $_REQUEST)) { $num=$_REQUEST["image"];
for ($i=0; $i<10; $i++) {if (md5($i+$rand_key)==$num) {imgwr($st,$i); die();}} }
exit;}

$rnd_do=array("п<B>лю</B>с","<B>ми</B>нус","ум< B>но</B>жить");



function replacer ($text) { // ФУНКЦИЯ очистки кода
$text=str_replace(" ",' ',$text);
$text=str_replace(">",'>',$text);
$text=str_replace("<",'<',$text);
$text=str_replace("\"",'"',$text);
$text=preg_replace("/\n\n/",'<p>',$text);
$text=preg_replace("/\n/",'<br>',$text);
$text=preg_replace("/\\\$/",'$',$text);
$text=preg_replace("/\r/",'',$text);
$text=preg_replace("/\\\/",'\',$text);
// если magic_quotes включена - чистим везде СЛЭШи в этих случаях: одиночные ('
) и двойные кавычки ("), обратный слеш (\)
if (get_magic_quotes_gpc()) {
$text=str_replace("\"",'"',$text); $text=str_replace("\'",'\'',$text); $text=str_replace("\\",'\',$text); }
$text=str_replace("\r\n","<br> ",$text);
$text=str_replace("\n\n",'
<p> ',$text);
$text=str_replace("\n",'
<br> ',$text);
$text=str_replace("\t",'',$text);
$text=str_replace("\r",'',$text);
$text=str_replace(' ',' ',$text);
return $text; }


function nospam() { global $max_key,$rand_key; // Функция АНТИСПАМ 2011 !
if (array_key_exists("image", $_REQUEST)) { $num=replacer($_REQUEST["image"]);
for ($i=0; $i<10; $i++) {if (md5("$i+$rand_key")==$num) {imgwr($st,$i); die();}} }
$xkey=""; mt_srand(time()+(double)microtime()*1000000);
$dopkod=mktime(0,0,0,date("m"),date("d"),date("Y")); // доп.код: меняется каждые 24 часа
$stime=md5("$dopkod+$rand_key");// доп.код
echo'
<table border=0 cellspacing=0 cellpadding=0><tr height=30><TD>Защитный код:</TD>';
$nummax=0; for ($i=0; $i<=$max_key; $i++) {
$snum[$i]=mt_rand(0,9); $psnum=md5($snum[$i]+$rand_key+$dopkod);
$secret=mt_rand(0,1); $styles='';
if ($nummax<3) { if ($secret==1 or $i==0) {$styles='
bgcolor=#FFFF00'; $xkey=$xkey.$snum[$i]; $nummax++;}}
echo "<td width=20 $styles><img src=antispam.php?image=$psnum border=0 alt=''></td>\r\n";}
$xkey=md5("$xkey+$rand_key+$dopkod"); //число + ключ из config.php + код меняющийся кажые 24 часа
print"<td><input name='usernum' class=post type='text' maxlength=$nummax size=6> (введите цифры, которые на <font style='font-weight:bold'> жёлтом фоне</font>)
<input name=xkey type=hidden value='
$xkey'>
<input name=stime type=hidden value='
$stime'>
</td></tr></table>"
;
return; }


if (isset($_GET['savemsg'])) { // Событие добавления сообщения

// возвращаем значения данных из формы и присваиваем их переменным

if (isset ($_POST['name']) & isset ($_POST['msg']) & isset ($_POST['email'])) {
$name=replacer($_POST['name']); $msg=replacer($_POST['msg']); $email=replacer($_POST['email']);} else exit;

$ip=$_SERVER['REMOTE_ADDR']; // определяем IP юзера

//Проверка ЗАПРЕТА IP-пользователя на добавление объявлений (файл bad_ip.dat)

if (is_file("data/bad_ip.dat")) { $lines=file("data/bad_ip.dat"); $i=count($lines);
if ($i>0) {do {$i--; $idt=explode("|", $lines[$i]);
if ($idt[0]===$ip) exit("<center><br><br><B>Админитратор заблокировал для Вашего IP: $ip<br> возможность добавлять что-либо по следующей причине:<br><br> <font color=red><B>$idt[1].</B></font><br><br>Вам разрешено просматривать сообщения,<br> а вот ДОБАВЛЯТЬ СООБЩЕНИЯ категорически ЗАПРЕЩЕНО!</B><br><br>");
} while($i > "1");} unset($lines);}

if (isset($_POST['www'])) $www=$_POST['www']; else $www="";
if (isset($_POST['addpole'])) $addpole=$_POST['addpole']; else $addpole="";
if (isset($_POST['rezerved1'])) $rezerved1=$_POST['rezerved1']; else $rezerved1="";
if (isset($_POST['rezerved2'])) $rezerved2=$_POST['rezerved2']; else $rezerved2="";
if (isset($_POST['rezerved3'])) $rezerved3=$_POST['rezerved3']; else $rezerved3="";

// БЛОК ГЕНЕРИРУЕТ СЛЕДУЮЩИЙ ПО ПОРЯДКУ НОМЕР сообщения, начиная просмотр с 1000
$rn=1000; $allid=null; $records=file("data/guest.dat"); $imax=count($records); $i=$imax;
if ($i > 0) { do {$i--; $rd=explode("|",$records[$i]); $allid[$i]=$rd[0]; } while($i>0);
//natcasesort($allid); // сортируем по возрастанию
do $rn++; while(in_array($rn,$allid)); }

// Защита от взлома - проверяется с какой страницы пришёл юзер

$fromurl=getenv("HTTP_REFERER"); if (substr_count($fromurl,$host)<1) exit("Хакер? ха-ха ...\n");

sleep(1); // мелкая защита от БОТОВ

if ($antispam=="2") {
$bada="$shapka $back <font color=red>Введённый вами код НЕ совпадает</font> с расчётным!";
if (isset($_POST['usernum'])) $usernum=$_POST['usernum']; else exit("$bada");
if (isset($_POST['chek'])) $chek=$_POST['chek']; else exit("$bada");
$dt=explode("|",$chek);
if ($dt[1]==0) $number=$dt[8]+$dt[2];
if ($dt[1]==1) $number=$dt[8]-$dt[2];
if ($dt[1]==2) $number=$dt[8]*$dt[2];
if ($usernum!=$number) exit("$bada"); }

if ($antispam=="3") {
$qwe=$_POST['qwe']; $answer=$_POST['answer'];
if (strtolower($rand_qwe[$qwe])!=strtolower($answer)) exit("$shapka $back <font color=red>ОТВЕТ НЕ верен!</font> Попробуйте снова."); }

if ($antispam=="4") {
//--А-Н-Т-И-С-П-А-М--проверка кода--
if (!isset($_POST['usernum']) or !isset($_POST['xkey']) or !isset($_POST['stime']) ) exit("данные из формы не поступили!");
$usernum=replacer($_POST['usernum']); $xkey=replacer($_POST['xkey']); $stime=replacer($_POST['stime']);
$dopkod=mktime(0,0,0,date("m"),date("d"),date("Y")); // доп.код. Меняется каждые 24 часа
$usertime=md5("$dopkod+$rand_key");// доп.код
$userkey=md5("$usernum+$rand_key+$dopkod");
if (($usertime!=$stime) or ($userkey!=$xkey)) exit("введён ОШИБОЧНЫЙ код!"); }

if ($name == "" || strlen($name) > $maxname) exit("$shapka $back ваше имя или пустое, или превышает $maxname символов!</B></center>");
if ($msg == "" || strlen($msg) > $maxmsg) exit("$shapka $back ваше сообщение или пустое или превышает $maxmsg символов.</B></center>");
if (!preg_match('/^([0-9a-zA-Z]([-.w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-w]*[0-9a-zA-Z].)+[a-zA-Z]{2,9})$/si',$email) and strlen($email)>50 and $email!="") exit("$shapka $back и введите корректный E-mail адрес!</B></center>");

$msg=str_replace("|","I",$msg);
$name=wordwrap($name,24,' ',1); // разрываем слишком длинные строки
$msg=wordwrap($msg,75,' ',1);
$today=mktime(); // определяем текущее время

// производим запись данных в файл по шаблону: ключ|штамп_времени|1|IP|имя|емайл|www-адрес|доп_поле|собщение|ответ_админа|резервное_поле1|резервное_ поле2|резервное_поле3|

$text="$rn|$today|1|$ip|$name|$email|$www|$addpole|$msg||$rezerved1|$rezerved2|$rezerved3|"; $text=replacer($text);

if ($antiflud=="1") { // функция АНТИФЛУД здесь!
$linesn = file("data/guest.dat"); $in=count($linesn);
if ($in > 0) {
$lines=file("data/guest.dat"); $i=count($lines)-1; $itogo=$i; $dtf=explode("|",$lines[$i]);
$txtback="$dtf[3]|$dtf[4]|$dtf[5]|$dtf[8]|"; $lastmsg=$dtf[5];
$dtb=explode("|",$text);
$txtflud="$dtb[3]|$dtb[4]|$dtb[5]|$dtb[8]|";
$today=mktime();
if (($lastmsg+30)>$today) {
$eshe=($lastmsg+30)-$today; exit("$back Чаще 30 секунд запрещено размещать сообщения. Подождите ещё $eshe секунд!");
if ($txtflud==$txtback) exit("$back Данное сообщение уже размещено. Флудить в гостевой запрещено!"); }
}


if ($undermoder==TRUE) $fp=fopen("data/guest-moder.dat","a+"); else $fp=fopen("data/guest.dat","a+");
flock ($fp,LOCK_EX);
fputs($fp,"$text\r\n");
flock ($fp,LOCK_UN);
fclose($fp);


if ($sendmail=="1") { // отправка сообщения админу на мыло
$headers=null;
$headers.="Content-Type: text/plain; charset=windows-1251\r\n";
$headers.="From: ".$name." <".$email.">\r\n";
$headers.="X-Mailer: PHP/".phpversion()."\r\n";
// Собираем всю информацию в теле письма
$allmsg = $gname.chr(13).chr(10).'Новое сообщение в гостевой: '.$host.$self.chr(13).chr(10).'Имя: '.$name.chr(13).chr(10).'E-mail: '.$email.chr(13).chr(10).'Сообщение: '.$msg.chr(13).chr(10);
mail("$adminemail", "$gname (сообщение)", $allmsg, $headers); // Отправляем письмо майлеру на съедение ;-)
}

if ($undermoder==TRUE) $addtext="<br><font color=red>После одобрения модератором оно будет опубликовано.</font>"; else $addtext="";
print "$shapka <script language='Javascript'>function reload() {location = 'index.php'}; setTimeout('reload()', 3500);</script>
<table width=100% height=80%><tr><td><table border=1 cellpadding=10 cellspacing=0 bordercolor=#224488 align=center valign=center width=60%><tr><td><center>
Спасибо, <B>
$name</B>, Ваше сообщение успешно добавлено. $addtext <BR><BR>Через несколько секунд Вы будете автоматически перемещены на первую страницу гостевой.<BR><BR>
<B><a href='index.php'>ДАЛЬШЕ >>></a></B></td></tr></table></td></tr></table& amp; gt;</center></body></html>"
;
exit;
}}









// Типо главной страницы
// считываем данные в память

$lines=file("data/guest.dat"); $maxi=count($lines)-1; $i=0; $maxpage=ceil(($maxi+1)/$qq);

// Исключаем ошибку вызова несуществующей страницы
if (!isset($_GET['page'])) $page=1; else {$page=$_GET['page']; if (!ctype_digit($page)) $page=1; if ($page<1) $page=1;}
if ($page>$maxpage) { $page=$maxpage;
$shapka=str_replace('</head>','<meta name="Robots" content="noindex,follow"></head>',$shapka);
print"$shapka<center><br><br>Данной страницы не существует. Вы можете перейти по ссылке<br>
на <a href='
$url'>главную страницу гостевой книги</a>";
if ($page>1) print",<br> либо на <a href='".$url."index.php?page=$maxpage'>последнюю страницу</a>!";
echo'</body></html>';
exit;}

if ($undermoder==TRUE) $addtext="<B>Модерирование включено</B>, поэтому сообщения публикуются только при одобрении администратора."; else $addtext="";
print "<html><head>
<title>
$gname</title>
<META HTTP-EQUIV='Pragma' CONTENT='no-cache'>
<META HTTP-EQUIV='Cache-Control' CONTENT='no-cache'>
<META content='text/html; charset=windows-1251' http-equiv=Content-Type>
<META name='Keywords' content='
$gname, $maintext'>
<META name='Description' content='Гостевая книга. Здесь Вы можете оставить отзыв о нашем сайте.'>
<link rel=stylesheet type='text/css' href='
$skin/style.css'>
<script language=JavaScript>
function x () {return;}
function FocusText() {
document.REPLIER.msg.focus();
document.REPLIER.msg.select();
return true; }
function DoSmilie(addSmilie) {
var revisedmsgage;
var currentmsgage = document.REPLIER.msg.value;
revisedmsgage = currentmsgage+addSmilie;
document.REPLIER.msg.value=revisedmsgage;
document.REPLIER.msg.focus();
return;
}
function DoPrompt(action) { var revisedmsgage; var currentmsgage=document.REPLIER.qmsgage.value; }
</SCRIPT>
</head>
<body>

<center><a href='
$self'><h3>$gname</h3></a>

<TABLE width=780 border=0 align=center cellPadding=0 cellSpacing=0>
<TR>
<TD width='1%'><IMG src='
$skin/1.gif' width=14 height=12 border=0></TD>
<TD width='98%' background='
$skin/2.gif'></TD>
<TD width='1%'><IMG src='
$skin/3.gif' width=14 height=12 border=0></TD>
</TR><TR>
<TD background='
$skin/4.gif'></TD>
<TD>
<table width=100%><TR><TD><B>Сегодня <b>
$date</b></TD>
<TD align=center><a href='index.php?addmsg'>Добавить сообщение</a></TD>
<TD align=center><a href='
$mainpage'>Вернуться на главную</a></B></TD></TR><TR>
<TD colspan=3><hr size=-1 width=100%><center>
$maintext</center><br>
$addtext</TD></TR></TABLE>
</TD>
<TD width=500 background='
$skin/6.gif'></TD>
</TR><TR>
<TD><IMG src='
$skin/8.gif' width=14 height=12 border=0></TD>
<TD background='
$skin/5.gif'></TD><TD><IMG src='$skin/9.gif' width=14 height=12 border=0></TD>
</TR></TABLE>"
;

include "data/top.html"; // Подключаем нижний рекламный блок




if (isset($_GET['addmsg'])) {
print "
<TABLE width=780 align=center cellPadding=0 cellSpacing=0><TBODY>
<TR><TD width='1%'><IMG src='
$skin/1.gif' width=14 height=12 border=0></TD><TD width='98%' background='$skin/2.gif'></TD><TD width='1%'><IMG src='$skin/3.gif' width=14 height=12 border=0></TD></TR>
<TR><TD background='
$skin/4.gif'></TD>
<TD><center><B>Добавить сообщение</B></center>
<div style='PADDING-LEFT: 200px;'><BR>
<form action='index.php?savemsg' method=post name=REPLIER>
<B>Имя</B>: <input type=text value='' name=name size=26> 
E-mail: <input type=text value='' name=email size=21><br>"
;

if ($use_www==TRUE) print"<br>Сайт: <input type=text value='' name=www size=58><br>";
if ($use_addpole==TRUE) print"<br>Доп. поле: <input type=text value='' name=addpole size=53><br>";
if ($use_rezerv1==TRUE) print"<br>Резервное поле 1: <input type=text value='' name=rezerved1 size=45><br>";
if ($use_rezerv2==TRUE) print"<br>Резервное поле 2: <input type=text value='' name=rezerved2 size=45><br>";
if ($use_rezerv3==TRUE) print"<br>Резервное поле 3: <input type=text value='' name=rezerved3 size=45><br>";

print"<B>Сообщение:</B><br><textarea cols=61 rows=7 size=500 name=msg></textarea><br>";
if ($smile!="0") { print"
<A href='javascript:%20x()' onclick=
\"DoSmilie(' :-))');\">$s1</a>
<a href='javascript:%20x()' onclick=
\"DoSmilie(' :-)');\">$s2</a>
<a href='javascript:%20x()' onclick=
\"DoSmilie(' :-P');\">$s3</a>
<a href='javascript:%20x()' onclick=
\"DoSmilie(' 8-)');\">$s4</a>
<a href='javascript:%20x()' onclick=
\"DoSmilie(' :-(');\">$s5</a>
<A href='javascript:%20x()' onclick=
\"DoSmilie(' :-O');\">$s6</a>
<A href='javascript:%20x()' onclick=
\"DoSmilie(' ;-)');\">$s7</a>
<A href='javascript:%20x()' onclick=
\"DoSmilie(' :roll:');\">$s8</a>
<A href='javascript:%20x()' onclick=
\"DoSmilie(' :rf:');\">$s9</a>
<A href='javascript:%20x()' onclick=
\"DoSmilie(' 8-(');\">$s10</a>
<A href='javascript:%20x()' onclick=
\"DoSmilie(' `-(');\">$s11</a>
<A href='javascript:%20x()' onclick=
\"DoSmilie(' ');\"><B>B</b></a>
<A href='javascript:%20x()' onclick=
\"DoSmilie('[RB] [/RB] ');\"><font color=red><B>RB</b></font></a><br>";}

// Второй вариант антиспама
if ($antispam=="2") {$rnd1=mt_rand(1,9); $rnd2=mt_rand(0,2); $rnd3=mt_rand(1,9);
print"Защитный код АНТИСПАМ: <B>$rnd1</B> $rnd_do[$rnd2] <B>$rnd3</B> = <input name='usernum' type='text' maxlength=3 size=5> (посчитайте и введите значение)
<input name=chek type=hidden value='
$rnd1|$rnd2|$rnd3|'>";
}
// Третий вариант антиспама
if ($antispam=="3") {
$rand=mt_rand(0,9); $rnd=$rand_zag[$rand];
print"Отгадай загадку <B>$rnd</B> введите ответ <input name=qwe type=hidden value='$rand'>
<input name='answer' type='text' maxlength=30 size=15> (в ответе не используйте пробелы)"
;}

// Четвёртый вариант антиспама
if ($antispam=="4") nospam(); // АНТИСПАМ !


print"</div><center><input type='submit' value=' Добавить '></center><br>
<TD background='
$skin/6.gif'> </TD>
</TR><TR><TD><IMG src='
$skin/8.gif' width=14 height=12 border=0></TD><TD background='$skin/5.gif'></TD><TD><IMG src='$skin/9.gif' width=14 height=12 border=0></TD></TR>
</TBODY></TABLE>"
;
}

if ($maxi>"-1") {

// формируем переменную $pageinfo - со СПИСКОМ СТРАНИЦ
$pageinfo=""; $addpage=""; $maxpage=ceil(($maxi+1)/$qq); if ($page>$maxpage) $page=$maxpage;
$pageinfo.="<div style='padding:6px;' class=pgbutt>Страницы:  ";
if ($page>3 and $maxpage>5) $pageinfo.="<a href='index.php'>1</a> ... ";
$f1=$page+2; $f2=abs($page-2); if ($f2=="0") $f2=1; if ($page>=$maxpage-1) $f1=$maxpage;
if ($maxpage<=5) {$f1=$maxpage; $f2=1;}
for($i=$f2; $i<=$f1; $i++) { if ($page==$i) $pageinfo.="<B>$i</B>  ";
else {if ($i!=1) $addpage="?page=$i"; $pageinfo.="<a href=index.php$addpage>$i</a>  ";} }
if ($page<=$maxpage-3 and $maxpage>5) $pageinfo.="... <a href=index.php?page=$maxpage>$maxpage</a>";
$pageinfo.='</div>';

print"$pageinfo";

// Выводим qq сообщений на текущей странице
$maxpage=ceil(($maxi+1)/$qq); if ($page>$maxpage) $page=$maxpage;

if ($msginout=="1")
{ $fm=$qq*($page-1); if ($fm>$maxi) $fm=$maxi-$qq;
$lm=$fm+$qq; if ($lm>$maxi) $lm=$maxi+1; }
else
{ $fm=$maxi-$qq*($page-1); if ($fm<"0") $fm=$qq;
$lm=$fm-$qq; if ($lm<"0") $lm="-1"; }

do { $dt = explode("|", $lines[$fm]);
if ($msginout=="1") {$fm++; $num=$maxi-$fm+2;} else {$fm--; $num=$fm+2;}

if (!isset($dt[8])) $dt[8]="";
if (strlen($dt[8])>1) { // Если строчка потерялась в скрипте (пустая строка) - то просто её НЕ выводим

if ($smile!="0") { // заменяем текстовые смайлики на графические если разрешено
$dt[8]=str_replace(":-))",$s1,$dt[8]);
$dt[8]=str_replace(":-)",$s2,$dt[8]);
$dt[8]=str_replace(":-P",$s3,$dt[8]);
$dt[8]=str_replace("8-)",$s4,$dt[8]);
$dt[8]=str_replace(":-(",$s5,$dt[8]);
$dt[8]=str_replace(":-O",$s6,$dt[8]);
$dt[8]=str_replace(";-)",$s7,$dt[8]);
$dt[8]=str_replace(":roll:",$s8,$dt[8]);
$dt[8]=str_replace(":rf:",$s9,$dt[8]);
$dt[8]=str_replace("8-(",$s10,$dt[8]);
$dt[8]=str_replace("`-(",$s11,$dt[8]);}

$dt[8]=str_replace("","<B>", $dt[8]); $dt[8]=str_replace("","</B>", $dt[8]);
$dt[8]=str_replace("[RB]","<B><font color=red>", $dt[8]); $dt[8]=str_replace("[/RB]","</font></B>", $dt[8]);
$dt[8]=str_replace("|","|",$dt[8]);
$dt[8]=str_replace("<br>","<br>",$dt[8]);
if ($liteurl==TRUE) $dt[8]=preg_replace("#(\[url=([^\]]+)\](.*?)\[/url\])|(http://(www.)?[0-9a-z\.-]+\.[a-z]{2,6}[0-9a-z/\?=&\._-]*)#","<a href=\"$4\" >$4</a> ",$dt[8]);

$dt[1]=date("d.m.Y : H:i:s",$dt[1]);

print"
<TABLE width=780 align=center cellPadding=0 cellSpacing=0><TBODY>
<TR><TD width='1%'><IMG src='
$skin/1.gif' width=14 height=12 border=0></TD><TD width='98%' background='$skin/2.gif'></TD><TD width='1%'><IMG src='$skin/3.gif' width=14 height=12 border=0></TD></TR>
<TR><TD background='
$skin/4.gif'></TD>
<TD><B><a href='mailto:
$dt[5]'>$dt[4]</a> ($dt[1])</B><br>";

if (strlen($dt[6])>1) print "Сайт: $dt[6]<br>";
if (strlen($dt[7])>1) print "Доп. поле: $dt[7]<br>";
if (strlen($dt[10])>1) print"Резервное поле 1 $dt[10],";
if (strlen($dt[11])>1) print"Резервное поле 1 $dt[11],";
if (strlen($dt[12])>1) print"Резервное поле 1 $dt[12]";

print"<UL><em>$dt[8]</em><br><br>";

if (strlen($dt[9])>1) print"<fieldset align=center style='width:80%; color:#0080C0'><legend><B>Отвечает администратор:</B></legend>$dt[9]</fieldset>";

print"<div align=right>$num</div></TD>
<TD background='
$skin/6.gif'> </TD>
</TR><TR><TD><IMG src='
$skin/8.gif' width=14 height=12 border=0></TD><TD background='$skin/5.gif'></TD><TD><IMG src='$skin/9.gif' width=14 height=12 border=0></TD></TR>
</TBODY></TABLE>
"
;

} // если строчка потерялась

if ($msginout=="1") {$whm=$fm; $whe=$lm;} else {$whm=$lm; $whe=$fm;}
}
while($whm < $whe);

print"$pageinfo";

} else print"<br><br>Гостевая книга пуста. Добавьте сообщение. <br>"; // if $maxi > "-1"

?>

Спустя 8 минут, 18 секунд (4.08.2012 - 19:06) killer8080 написал(а):
Punktir
еще раз data/top.html лежит здесь?
/home/s/сайт.ru/WWW/cgi-bin/data/top.html

PS используй теги [ php ] [/ php] для подсветки синтаксиса.

Спустя 1 минута, 35 секунд (4.08.2012 - 19:08) Punktir написал(а):
Ок,буду юзать, не знал.
Да, он лежит там, в кишках у него только
"<center>
<small>
рекламно-информационный блок</small>
<br>
"

Спустя 2 минуты, 52 секунды (4.08.2012 - 19:11) killer8080 написал(а):
Punktir
у тебя все файлы в cgi-bin лежат?

Спустя 2 минуты, 7 секунд (4.08.2012 - 19:13) Punktir написал(а):
Цитата (killer8080 @ 4.08.2012 - 20:11)
Punktir
у тебя все файлы в cgi-bin лежат?

Там лежат только скрипты. Хостер говорит вот так:

Директория "cgi-bin" предназначена для cgi скриптов вашего сервера. Она
видна через веб как /cgi-bin/ . Например, файл test.cgi лежащий в директории "cgi-bin" будет виден как http://сайт.ru/cgi-bin/test.cgi. Не забудьте, что для работы
скриптов у них должен быть выставлен атрибут "executable".
Для этого Вам необходимо выполнить команду 'chmod 755 *'
или установить атрибуты всех файлов и директорий находящихся в "cgi"
равными "rwxr-xr-x" с помощью вашего FTP клиента.

Обратите внимание на то, что наш сервер не даст запускать скрипты из
директории "WWW" и не будет показывать страницы находящиеся в директории "cgi-bin". Java апплеты, файлы с flash-анимацией и.т.п. должны находиться в директории "WWW"

Спустя 4 минуты, 28 секунд (4.08.2012 - 19:17) killer8080 написал(а):
В начале скрипта объяви константу с полным пуем к CGI директории, и используй её в инклюдах
define('CGI_DIR', dirname( __FILE__ ));
include CGI_DIR."/data/config.php";

Спустя 6 минут, 52 секунды (4.08.2012 - 19:24) Punktir написал(а):
Цитата (killer8080 @ 4.08.2012 - 20:17)
В начале скрипта объяви константу с полным пуем к CGI директории, и используй её в инклюдах
define('CGI_DIR', dirname( __FILE__ ));
include CGI_DIR."/data/config.php";

полный путь,имеешь ввиду аля: home/s/сайт.ru/WWW/cgi-bin

или чисто так: сайт.ru/WWW/cgi-bin

Спустя 1 час, 48 минут, 31 секунда (4.08.2012 - 21:13) killer8080 написал(а):
Цитата (Punktir @ 4.08.2012 - 20:24)
полный путь,имеешь ввиду аля: home/s/сайт.ru/WWW/cgi-bin

/home/s/сайт.ru/WWW/cgi-bin

Спустя 18 минут, 1 секунда (4.08.2012 - 21:31) Punktir написал(а):
всё равно я послан. я хренею.

Спустя 9 минут, 8 секунд (4.08.2012 - 21:40) killer8080 написал(а):
Punktir
значит неправильно указал путь, проверяй.

Спустя 11 часов, 8 минут, 51 секунда (5.08.2012 - 08:49) Punktir написал(а):
Цитата (killer8080 @ 4.08.2012 - 22:40)
Punktir
значит неправильно указал путь, проверяй.

Неа, в хтмл вписал и
<?php
include $_SERVER['DOCUMENT_ROOT']."/home/s/stroykademo.hut4.ru/WWW/cgi-bin/index.php";
?>

и

<?php
include("/home/s/stroykademo.hut4.ru/WWW/cgi-bin/index.php")
?>


ни один не видит.

а в индекс.пхп:

define('CGI_DIR', /home/s/сайт.ru/WWW/cgi-bin( __FILE__ ));
include CGI_DIR."/data/config.php";
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.