Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

02.03.2008, 16:44
|
|
Banned
Регистрация: 11.08.2006
Сообщений: 1,522
Провел на форуме: 5128756
Репутация:
2032
|
|
имхо с html такое невозможно. только если через логи сервера...
|
|
|

02.03.2008, 17:09
|
|
Новичок
Регистрация: 01.03.2008
Сообщений: 7
Провел на форуме: 16495
Репутация:
0
|
|
например, ложим хтаксесс в корень
понятно что все достыпы походятчерез него, если взять прметивный пример, это защита от хотлинка
родилась мысль, можно ли используя хтаксесс одать параллельно файлу обработчику на пхп
|
|
|

02.03.2008, 17:40
|
|
Познающий
Регистрация: 22.08.2006
Сообщений: 39
Провел на форуме: 69953
Репутация:
11
|
|
Сообщение от .:EnoT:.
temp_late
а почему ты не инициализировал переменную $t в самом цикле? и $t++ туда же не засунул? =\
Есть предположение, что на подсчет длины через функцию на каждом цикле будет тратиться больше ресурсов, чем если подсчитать однажды и просто цеплять результат уже из переменной, если мое мнение ошибочно поправьте меня.
Насчет $t++, согласен есть такое, можно, привычка.. вот научили на Pascale так делать. А что будет быстрее если сделать так?:
PHP код:
<?php
$text='! ышвгфращфзышвгарзщыфшварышгвар!!!';
$char=3;// насколько делить
$sizet=strlen($text);
$t=1;
$out='';
for ($i=0;$i<$sizet;$i++,$t++){
if($t>$char){$t=1;$out.='-';}
$out.=$text{$i};
}
echo $out;
?>
Сообщение от =.:EnoT:.
Специально для таких целей существует функция str_split() ,которая бьёт строку на массивы и не нужно никаких извращений!)
<?php
$text = "ышвгфращфзышвгарзщыфшвар шгва";
$skoka = 3; //По сколько символов разбивать
$arr = str_split($text, $skoka);
for($i=0; $i < count($arr); $i++)
{
$str = $arr[$i]."-";
echo $str;
}
?>
В твоем коде логическая ошибка, функция str_split() кромсает строку в масив по 3 символа, и потом собирает масив в едино, прибавляя в конце '-'.
Ошибка в том что строка не всегда может делиться на три ровно, а тире по заданию нужно поставить через каждые 3 символа,
$text='1234567';
так будет выполнять твой код
123-
456-
7-
последние тире поставилось не через 3 символов, для этого нужно внести следующее условие в твой код:
PHP код:
<?php
$text = "ышвгфращфзышвгарзщыфшварышгва";
$skoka = 3; //По сколько символов разбивать
$arr = str_split($text, $skoka);
for($i=0; $i < count($arr); $i++)
{
if (strlen($arr[$i])==3){$str = $arr[$i]."-";}
else{$str = $arr[$i];}
echo $str;
}
?>
тогда будет правильно, но мне кажется мой код будет проще, и рациональней использовать системные ресусры.
PS:Правильней было бы присвоить текст используя одинарный ковычки:
$text = 'ышвга';
//а так :
$text = "ышвга"; //он будет тратить больше ресурсов, ибо будет искать в текст переменные для их замены.
|
|
|

02.03.2008, 18:12
|
|
Постоянный
Регистрация: 29.05.2007
Сообщений: 852
Провел на форуме: 4832771
Репутация:
1916
|
|
в чём-то соглашусь с тобой, в чём то нет)
Логической ошибки там нет, т.к. функция режет строку на равные части по 3 символа) Для этого она и существует)) И если уж говорить о ресурсоёмкости (что в данном примере в принципе смешно), то мой код менее извращённый и в цикле не содержится лишних переменных (которые ты объявил я сам не знаю зачем). С твоей доработкой кода согласен, если автору нужно чтобы только после каждого 3-го символа ставилось тире, то ты да.
Насчёт двойных кавычек ... хехе, выразился конечно так....в таких ничтожных скриптах это не суть важно....а в серьёзных проектах...согласен одинарную кавычку использовать рациональней 
|
|
|

02.03.2008, 18:28
|
|
Познающий
Регистрация: 24.07.2007
Сообщений: 31
Провел на форуме: 1417840
Репутация:
35
|
|
и вообще
PHP код:
<?php
echo implode('-', str_split('ышвгфращфзышвгарзщыфшварышгва', 3));
?>
|
|
|

02.03.2008, 21:58
|
|
Познающий
Регистрация: 18.10.2006
Сообщений: 42
Провел на форуме: 119338
Репутация:
3
|
|
Вот такая ситуация. Нужно сделать так:
Если например есть кукис cook_lang:ru в браузере то оставить все как есть ничто не трогать а если их нету то перенаправить на страницу выбора языка например Lang.php
Подскажите пожалуйста как так сделать можно
|
|
|

02.03.2008, 22:00
|
|
Познавший АНТИЧАТ
Регистрация: 02.06.2006
Сообщений: 1,188
Провел на форуме: 6023777
Репутация:
2642
|
|
VADIK-XXX,
PHP код:
<?php
if(!$_COOKIE['cook_lang']) {
header('Location: Lang.php');
exit();
}
?>
Вставь вначало.
|
|
|

02.03.2008, 22:00
|
|
Тут может быть ваша реклама.
Регистрация: 30.07.2005
Сообщений: 1,243
Провел на форуме: 4520553
Репутация:
1316
|
|
if(!isset($_COOKIE['cook_lang']) || $_COOKIE['cook_lang'] != 'ru') {
header('Location: lang.php');
}
|
|
|

02.03.2008, 22:16
|
|
Познающий
Регистрация: 18.10.2006
Сообщений: 42
Провел на форуме: 119338
Репутация:
3
|
|
Спасибо ребят все получилось Вам +1
|
|
|

03.03.2008, 01:22
|
|
Постоянный
Регистрация: 11.11.2006
Сообщений: 834
Провел на форуме: 3941248
Репутация:
668
|
|
Такой вопрос...если я проверяю залогинен ли юзер по сессии возможно ли обойти проверку?
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|