| |
автор: Felix (13.09.2004 в 12:00) |
|
| | Подскажите кто нибудь почему не работает вот такой код:
<?
$q="body=CRACK/crack.htm";
$r="body=RUSIFIK/rus.htm";
$i="$QUERY_STRING";
$url_i = ereg("^(body=CRACK)\.([[:alnum:]+\.([[:alnum:]]+)". $i, $regs);
if ($url_i) :
$A=$regs[0];
endif;
if ($i === $q) {include_once "CRACK/crack.htm"; include_once "HTML/search.htm";}
elseif ($i === $r) {include_once "RUSIFIK/rus.htm"; include_once "HTML/search.htm";}
elseif ($i === $A) {include_once "CRACK/crack.htm"; include_once "HTML/search.htm";}
else {include_once "HTML/search.htm";}
?>
|
| |
| |
|
|
| |
|
|
| |
для: Felix
(13.09.2004 в 12:00)
| | | Было бы проще если бы вы пояснили как должен выполняться этот код. Т.е. что он должен делать и что он делает не так. | |
| |
|
|
| |
|
|
| |
для: glsv (Дизайнер)
(13.09.2004 в 14:04)
| | | че то я тоже не догоняю что тут конкретно должно выполняться | |
| |
|
|
| |
|
|
| |
для: Felix
(13.09.2004 в 12:00)
| | | В строке
<?php
$url_i = ereg("^(body=CRACK)\.([[:alnum:]+\.([[:alnum:]]+)". $i, $regs);
?>
|
После регулярного выражения стоит точка, которую следует заменить на запятую... Вообще если код не работает неплохобы вместе с ним выложить сообщение интерпретатора PHP. | |
| |
|
|
| |
автор: Felix (14.09.2004 в 05:55) |
|
| |
для: cheops
(13.09.2004 в 23:57)
| | |
<?php
$q="body=CRACK/crack.htm";
$r="body=RUSIFIK/rus.htm";
$i="$QUERY_STRING";
$url_i = ereg("^(body=CRACK)\.([[:alnum:]+\.([[:alnum:]]+)". $i, $regs);
if ($url_i) :
$A=$regs[0];
endif;
if ($i === $q) {include_once "CRACK/crack.htm"; include_once "HTML/search.htm";}
elseif ($i === $r) {include_once "RUSIFIK/rus.htm"; include_once "HTML/search.htm";}
elseif ($i === $A) {include_once "CRACK/crack.htm"; include_once "HTML/search.htm";}
else {include_once "HTML/search.htm";}
?>
|
В общем на всех страницах которые в директории /CRACK/ должно выводиться "CRACK/crack.htm" и "HTML/search.htm"
а оно почемуто не работает.
Пробовал еще вот так но тоже не работает
<?php
if (ereg("/CRACK/", $i)){include_once "CRACK/crack.htm"; include_once "HTML/search.htm";}
?>
|
А ошибки никакой не выдает. | |
| |
|
|
| |
|
|
| |
для: Felix
(14.09.2004 в 05:55)
| | | Т.е. нужно определить в какой директории находишься и в зависимости от этого подключить определенные файлы?
Давайте по другому пойдем. Регулярные выражения - слишком уж сильно для этой задачи.
<?
$path=$_SERVER['SCRIPT_FILENAME'];
$dir=dirname($path);
if (stripos($dir, "crack"))
{
echo "Вы находитесь в директории Crack";
// подключаете файлы
}
else
{
echo "Вы находитесь НЕ в директории Crack";
// подключаете файлы
}
?>
|
| |
| |
|
|
| |
|
|
| |
для: Felix
(14.09.2004 в 05:55)
| | | Сейчас внимательно посмотрел на скрипт - он всегда будет выдавать include_once "HTML/search.htm"; Так как по сути сравниваются строки:
<?php
"$QUERY_STRING" === "body=CRACK/crack.htm" // $i === $q
"$QUERY_STRING" === "body=RUSIFIK/rus.htm" // $i === $r
?>
|
а это всегда будет давать FALSE. | |
| |
|
|
| |
автор: Felix (16.09.2004 в 11:10) |
|
| |
для: cheops
(14.09.2004 в 09:51)
| | | Когда я включил вот этот код:
<?php
$path=$_SERVER['SCRIPT_FILENAME'];
$dir=dirname($path);
if (stripos($dir, "crack"))
{
echo "Вы находитесь в директории Crack";
// подключаете файлы
}
else
{
echo "Вы находитесь НЕ в директории Crack";
// подключаете файлы
}
?>
|
Апач выдал мне вот такое : Fatal error: Call to undefined function: stripos() in g:\home\test1.ru\www\index.php on line 324
обьясните что есть stripos() и можно ли как нибудь его заменить ??? А иначе не работает. | |
| |
|
|
| |
автор: Felix (16.09.2004 в 11:36) |
|
| |
для: Felix
(16.09.2004 в 11:10)
| | | Еще хочу добавить. Я узнал что функция stripos() введена в php5 версии а мне надо как нибудь обойтись возможностями 4 версии а то на хостинге где мой сайт лежит php5 еще не поддерживается. | |
| |
|
|
|
| |
|
|
| |
для: Felix
(16.09.2004 в 11:10)
| | | Это функция осуществляющая поиск позиции первого вхождения подстроки без учета регистра... Хм... зря я её вам посоветовал, она введена только в PHP 5, замените её на strpos() - это регистрозависимый вариант функции, доступный в более ранних версиях PHP.
http://www.softtime.ru/dic/id_dic=64&id_group=1 | |
| |
|
|
| |
автор: Felix (16.09.2004 в 12:14) |
|
| |
для: cheops
(16.09.2004 в 11:43)
| | | Я заменил функцию но скрипт в любом случае выводит
"Вы находитесь НЕ в директории Crack" даже если я зашол в директорию кряк. | |
| |
|
|
| |
|
|
| |
для: Felix
(16.09.2004 в 12:14)
| | | Регистр учитываете? Функция зависит от регистра... | |
| |
|
|
| |
автор: Felix (16.09.2004 в 18:20) |
|
| |
для: cheops
(16.09.2004 в 16:34)
| | | Я разобрался в чем дело. Вместо SCRIPT_FILENAME нужно было написать QUERY_STRING и тогда все работает на ура.
Спасибо за содействие.
Скрипт в работе можете посмотреть на моем сайте
http://crackall.fatal.ru | |
| |
|
|
| |
|
|
| |
для: Felix
(16.09.2004 в 18:20)
| | | >Вместо SCRIPT_FILENAME
Ну чтож, значит на Вашем хостинге админы "спрятали" эту переменную. | |
| |
|
|