|
www -> http://www ?Обсуждение темы www -> http://www ? в разделе HTML, CSS, JavaScript, часть категории ВЕБ-ПРОГРАММИРОВАНИЕ; Всем здрасьте... Помогите решить небольшую проблемку: Есть гостевая книга. В ней есть поле для ввода url. Если вводить url без "http://", тогда при ... |
|
Опции темы |
17.10.2004, 18:22 | #1 |
|
Всем здрасьте...
Помогите решить небольшую проблемку: Есть гостевая книга. В ней есть поле для ввода url. Если вводить url без "http://", тогда при выводе страницы ссылка получается такого вида: текущий адрес + то, что было введено. Например, в поле url человек ввел "asd.ru", а гостевая находится по адресу http://gb.ru, тогда ссылка получится такой: http://gb.ru/asd.ru. Как проверить, есть ли в начале "http://", и если нет, тогда добавить? Желательно показать это на примере. СпасибА! |
|
17.10.2004, 20:10 | #2 |
|
Вроде есть спец функция у пхп...
А если нет, то это вроде просто: Если первые 7 символов http://, то прописываем ссылку, а если не такие, то прописываем http://+введённый текст. |
|
17.10.2004, 20:37 | #3 |
|
Vulko, а как это сделать?
Можешь маленький примерчик написать? Я ничего на php не знаю. |
|
17.10.2004, 22:57 | #4 |
|
if (substr($sama_stroka, 0, 7)!="http://"){
$sama_stroka="http://".$sama_stroka; } |
|
17.10.2004, 23:23 | #5 |
|
PHP код:
|
|
18.10.2004, 01:06 | #6 |
|
Alkeeper, так даже лучше - более глубокое рассмотрение проблемы
|
|
18.10.2004, 14:03 | #7 |
|
Зачем это все делать??? Просто вырезаешь из строки функцией str_replace текст http:// , а при выводе просто добавляешь! И если чел ввел http:// , то оно вырежется, а если не ввел - не вырежется, и в любом случае строка при выводе будет с http:// .
Надеюсь понятно разъяснил? А вот и пример. 1. Чел ввел www.blablabla.ru $string=str_replace("http://", "", $string); И выводишь с добавлением http:// 2. Чел ввел http://www.blablabla.ru $string=str_replace("http://", "", $string); //вырезаем http:// Теперь у нас строка имеет вид: www.blablabla.ru И опять выводишь с добавлением http:// |
|
18.10.2004, 14:23 | #8 |
|
RoN, для реализации твоего варианта надо править в двух местах:
1. в обработчике формы. 2. при выводе ссылки. Может, тебе так и проще, но по-моему лучше при вводе приводить к нужному виду или при выводе, но в обеих частях. Я бы при вводе делал $string="http://".str_replace("http://", "", $string); |
|
18.10.2004, 19:12 | #9 |
|
RoN, то, что привёл Alkeeper хорошо тем, чтозаодно проверит и корректность всего адреса. Например http://ooo:-)бля~#$$@!&&&1803-^.пиписька - это явно некорректный адрес!
|
|
19.10.2004, 03:17 | #10 |
|
Всем спасибо!
Проблема решена своими силами. Кстати, если я не ошибаюсь, то код Alkeeper'а не до конца сделан. А если введут не просто без http://, но и без www? Например: blablabla.ru. Тогда вставки http:// не произойдет. Я сделал так: function inserthttp($string) { $string = " " . $string; $string = eregi_replace('([[:space:]()[{}])([-a-zA-Z0-9@:%_\+.~#?&//=]+)', '\\1http://\\2', $string); $string = ereg_replace("http://http://","http://",$string); return trim($string); } И только спустя некоторое время я понял, что можно просто добавлять в начало http://, а http://http:// удалять, но как такое сделать не знаю. Поэтому работает эта функция, и довольно-таки успешно. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
ftp vs. http | seka | Настройка серверов | 2 | 03.11.2005 10:26 |
http://biolonglife.com/ | seka | Зал дебютантов | 5 | 05.08.2005 13:43 |
http://staff-ua.com | 123321 | Зал дебютантов | 8 | 05.03.2005 20:05 |
http://onlive.nm.ru/ | Olga | Зал дебютантов | 5 | 29.07.2004 23:29 |
http-сервер и php-интерпретатор | pass | HTML, CSS, JavaScript | 13 | 01.12.2003 01:27 |
Реклама на форуме
Условия размещения рекламы
Биржа ссылок
Заработай на сайте!
|