несколько вопросов по php
у меня накопилось несколько вопросов, которые меня всегда мучали:
1) Как вставлять ссылку с помощью регулярных выражений? Например, чтобы выделить текст жирным, необходимо прописать:
$post = ereg_replace("\[b\]", "", $post);
$post = ereg_replace("\[/b\]", "", $post);
а как сделать, чтобы текст такого вида
<url=link>linkname</url>
имела вид linkname ?
2) Еще волнует вот что:
я хочу, чтобы на сайте все ссылки на разделы имели вид ?info=name
в принципе у меня это получилось - дизайн везде один и тот же, ну а там, где надо - просто include вставляю в соответствии с значением переменной info.
Волнует меня другое - если мне надо, чтобы если ссылка имеет вид ?info=create, то открывалось другое окно, например newart.php , в то же время ссылка имела такой же вид ?info=create. Что надо сделать?
В общем, надо, чтобы файл newart.php не инклудился, а открывался, заменяя прежнее окно... ну или что-то типа этого.
3) Доступ:
Я использую много файлов, которые инклудятся, в них я часто использую расширение *.inc, но как сделать, чтобы когда пользователь в строке наберет host.ru/file.inc то этот файл не открывался бы, либо выдавалось сообщение об ошибке?
пользую бесплатным хостингом amillo.net
3) Доступ:
Я использую много файлов, которые инклудятся, в них я часто использую расширение *.inc, но как сделать, чтобы когда пользователь в строке наберет host.ru/file.inc то этот файл не открывался бы, либо выдавалось сообщение об ошибке?
пользую бесплатным хостингом amillo.net
Может немного глупо, но я бы сделал так:
Делается файл, аля xyjna.php на который ссылается твоя ссылка..Далее xyjna.php передает типа переменную $xyjna="1234" , а в результирующем файле .php идет проверка на существование этой переменной и в случае ее отсутствия - echo "getout fucker!";
Извините за шах и ..
Как тебе такой вариант?:}
если я правильно понял, то если строка имеет вид
?action=vasia
то в скрипте надо писать
if($action != vasia){
echo "доступ закрыт и т.п.";
}
else {
скрипт...
}
так?
А можно поподробнее о mod_rewrite?
точнее меня интересует будет ли это работать на бесплатном хостинге amillo.net
BlackMarket, мне твоя мысль понравилась, мне она тоже в голову приходила... только я думал, что может можно как-нибудь по-другому...
если я правильно понял, то если строка имеет вид
?action=vasia
то в скрипте надо писать
if($action != vasia){
echo "доступ закрыт и т.п.";
}
else {
скрипт...
}
так?
Подожди, если в браузере наберут ?action=vasia , то ведь доступ будет!А тебе надо, чтобы человек только через твою ссылку смог запустить скрипт?
Подожди, если в браузере наберут ?action=vasia , то ведь доступ будет!А тебе надо, чтобы человек только через твою ссылку смог запустить скрипт?
Действительно...
ну а как тогда сделать? распиши поподробнее свой вариант, мне показалось что ты предлагал практически то же самое.:)
2) Еще волнует вот что:
я хочу, чтобы на сайте все ссылки на разделы имели вид ?info=name
в принципе у меня это получилось - дизайн везде один и тот же, ну а там, где надо - просто include вставляю в соответствии с значением переменной info.
Волнует меня другое - если мне надо, чтобы если ссылка имеет вид ?info=create, то открывалось другое окно, например newart.php , в то же время ссылка имела такой же вид ?info=create. Что надо сделать?
В общем, надо, чтобы файл newart.php не инклудился, а открывался, заменяя прежнее окно... ну или что-то типа этого.
СМотри твоя ссылка ...проверяется переменная типа $X="123"
Теперь чтобы по этой ссылке открылось новое окно, а не инклудилось твое нечто я бы сделал так:
if $X="123"
Header("Location:./tvoyscript.php"); \\будет выполнен переход на этот скрипт в этом же окне ..вот..(ну а как перейти на инклуд твоих .inc догадаться не трудно)
else end; \\вроде бы здесь должен end стоять(подскажите деды!!!!) потому как остальная часть этого скрипта не учитывается, а он должен закончиться корректно.
Что не понятно?
3) Доступ:
Я использую много файлов, которые инклудятся, в них я часто использую расширение *.inc, но как сделать, чтобы когда пользователь в строке наберет host.ru/file.inc то этот файл не открывался бы, либо выдавалось сообщение об ошибке?
пользую бесплатным хостингом amillo.net
Исходный скрипт на котором находится твоя ссылка допустим - first.php
дополнительный скрипт допустим - second.php
результирующий скрипт - third.php
В first.php :
echo "
Посмотреть что-то интересное";
В second.php :
$yourvar=value; \\ДЕДЫ ПОДСКАЖИТЕ ТАКАЯ ПЕРЕМЕННАЯ БУДЕТ ПЕРЕДАВАТЬСЯ В THIRD.PHP?
Header("Location:./third.php");
нУ ща в лому подробно думать, короче этот промежуточный скрипт передает значение переменной, которое известно только тебе(в браузерах оно вообще не светится)
И в окно после header загружается third.php на котором находится твоя результирующая инфа, но
идет проверка на существование этой промежуточной переменной
if ($yourvar="value") {good end..}
else "bad end...";
Ну как?
P(