11.08.2011 06:52 |
sun-ks |
Цитата:
Сообщение от kos
Что-то криво слегка текст отображается
|
Это тестовый хост. У людей эта ошибка исправлена.
|
08.08.2011 22:42 |
kos |
Что-то криво слегка текст отображается
|
08.08.2011 21:01 |
sun-ks |
всем спасибо сайт сдан.
П.с.TIGR PhoeniXX отдельное спасибо.
Будет время пишите в лс , пойдем пиво пить.
|
03.08.2011 08:08 |
TIGR |
Цитата:
Сообщение от sun-ks
ошибка исправлена, удалите пожалуйста этот пост.
|
пост на твоём сайте? так ты должен удалить его с базы. никто ж кроме тебя не имеет доступа к базе...
|
02.08.2011 22:37 |
sun-ks |
хелп
ошибка исправлена, удалите пожалуйста этот пост.
|
01.08.2011 15:11 |
TIGR |
Цитата:
Сообщение от sun-ks
хакер)
Я с явой не знаком( , а как его убрать?
|
ну можно еще так попробовать http://www.php.net/manual/en/function.htmlentities.php
|
01.08.2011 09:21 |
sun-ks |
Цитата:
Сообщение от TIGR
а теперь идём в воспоминания и видим alert
если его сан-кс уберет то моё воспоминание было следующим:
|
хакер)
Я с явой не знаком( , а как его убрать?
|
01.08.2011 07:44 |
TIGR |
Цитата:
Сообщение от sun-ks
сайт готов. http://akina.org.ua/
вроде все работает............
|
а теперь идём в воспоминания и видим alert
если его сан-кс уберет то моё воспоминание было следующим:
Цитата:
<script>alert(document.cookie);</script>
|
|
31.07.2011 22:51 |
sun-ks |
сайт готов. http://akina.org.ua/
вроде все работает............
|
28.07.2011 08:10 |
TIGR |
html {overflow-y: scroll; } поставить видимо не судьба :(
Цитата:
Сообщение от дмитрий_оч_приятно
ну тут два метода: или удалить + implode() или же шлейфом первые 10, т.е. все равно костыль нужен.
|
это не костыль, а нормальное программирование когда проходишься по массиву и выбираешь то что тебе нужно. а регулярки нужны только в крайнем случае когда разобрать либо оооочень большую строку либо когда другого выхода нет, т.к. неопытный человек может навредить себе работая с ними.
|
28.07.2011 07:19 |
sun-ks |
Да, дергается "о проекте".
задал в с-вах главной таблицы min-height:101%
все равно скачет. Скачет именно в мазиле в др браузерах все нормально.
если задать min-height: в пикселях, то скролин появляется и все работает нормально. Но вот только с процентами почему то не работает(
|
27.07.2011 23:27 |
дмитрий_оч_приятно |
извини, в ответах я ограничен. задавай правильно вопрос ©
если имеешь в виду то, что "о проекте" дергается при переходе, так это от того, что страница сначала не имеет скроллинга, а потом при дальнейшей загрузке он появляется. нужно сделать так, чтоб высота страницы изначально была больше высоты окна, делается в стилях (min-height 101% и другие способы). хотя возможно это на моем экране только, т.к. сейчас с нетбука и разрешение 1024х600
если что-то другое, описывай подробней
|
27.07.2011 22:28 |
sun-ks |
Верхнеее меню да и вся таблица смещается при переходе.
http://akina.org.ua/index.php
на
http://akina.org.ua/razdel_1.php?a=0...20%EB%FE%E4%E8
в с-ве таблице стоит - table-layout: fixed;
|
27.07.2011 21:18 |
дмитрий_оч_приятно |
Цитата:
Сообщение от TIGR
не обязательно удалять. просто проходишься по массиву и выводишь то что надо. помойму если есть возможность, то необходимо без регулярных выражений обходиться. и отличие в 5 строк вообще не существенно.
а ты учел в своём регулярном выражении разделители кроме пробела? еще через пару модификаций в нём будет тяжело разобраться. зачем городить велосипеды?
|
ну тут два метода: или удалить + implode() или же шлейфом первые 10, т.е. все равно костыль нужен. дефолтную функцию то-ли не вспомню, то-ли ее и нет такой. а выражением все-же чище и читабильней получается + можно под потребности модифицировать на сколько это нужно
я конечно не знаю, сколько строк нужно таким методом обработать, но на сколько я понял не так уж там много дел, так что о скорости можно не беспокоиться
п.с. комментарии никто не отменял, выработал привычку комментить такие вещи, чего хотел добиться данной функцией. иначе можно не только с выражениями запутаться самому-же
п.п.с. если ситуация позволяет обойтись 200 символами вместо 10 слов, тем лучше. в таком случае однозначно substr(). возможно стоит учесть ситуацию с меньшим количеством символов
PHP код:
(strlen($text) > 200) ? $title = substr($text, 0, 200) . '...' : $title = $text;
также можно первое число 200 заменить на 203 или второе на 197, т.к. будет нелогично текст в 201 символ обрезать и увеличивать точками до 203 символов. но это как бы все от ситуации зависит.
|
27.07.2011 16:58 |
TIGR |
Цитата:
Сообщение от дмитрий_оч_приятно
@TIGR: функция str_word_count() разбивает строку в массив, после чего нужно все равно удалять лишние элементы и опять склеивать в строку. выше привел решение в 3 строки
|
не обязательно удалять. просто проходишься по массиву и выводишь то что надо. помойму если есть возможность, то необходимо без регулярных выражений обходиться. и отличие в 5 строк вообще не существенно.
а ты учел в своём регулярном выражении разделители кроме пробела? еще через пару модификаций в нём будет тяжело разобраться. зачем городить велосипеды?
|
27.07.2011 14:47 |
дмитрий_оч_приятно |
Цитата:
Сообщение от sun-ks
C словами не вышло, люди согласились на вариант с символами
|
А чем регулярные выражения не подходят? Я давал работающий пример. Кстати лучше будет изменить следующим образом (добавил +)
PHP код:
$a = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec volutpat elementum metus nec scelerisque.';
preg_match('/([^ ]+[ ]+){10}/', $a, $result);
$b = substr($result[0], 0, -1).'...';
иначе не будет работать с фразами, в которых несколько пробелов подряд. Если во всей фразе (строке $a) меньше 10 слов, коротать не будет, т.к. незачем.
@TIGR: функция str_word_count() разбивает строку в массив, после чего нужно все равно удалять лишние элементы и опять склеивать в строку. выше привел решение в 3 строки
|
27.07.2011 07:42 |
TIGR |
ну с частью строки всё понятно, что ты что-то пробовал, а функцию str_word_count ты пробовал? и что у тебя с ней не получилось?
|
27.07.2011 07:13 |
sun-ks |
Цитата:
Сообщение от дмитрий_оч_приятно
пы.сы. этот вариант выдает первые 200 символов, а не первые 10 слов.
|
C словами не вышло, люди согласились на вариант с символами
|
27.07.2011 00:33 |
дмитрий_оч_приятно |
Цитата:
Сообщение от sun-ks
Я пробовал не помогло. В пхп уже есть функция которая выводит часть строки.
Я решил проблему следующим образом:
PHP код:
$title=substr (" $text", 1, 200).'...'; // копируем часть строки.
п.с. Всем спасибо за участие.
|
не пойму, для чего добавлять перед строкой сначала пробел, а потом его обрезать.
PHP код:
$title = substr($text, 0, 200) . '...';
как-то чище смотрится, что-ли...
пы.сы. этот вариант выдает первые 200 символов, а не первые 10 слов.
|
26.07.2011 19:47 |
sun-ks |
Цитата:
Сообщение от TIGR
кстати чтобы этот пример заработал достаточно перед переменными написать знак доллара(как в этой цитате).
|
Я пробовал не помогло. В пхп уже есть функция которая выводит часть строки.
Я решил проблему следующим образом:
PHP код:
$title=substr (" $text", 1, 200).'...'; // копируем часть строки.
п.с. Всем спасибо за участие.
|
26.07.2011 12:29 |
TIGR |
Цитата:
Сообщение от PhoeniXX
PHP код:
$ind = 0;
$count = 0;
while ($ind != -1 || $count <= 10)
{
$ind = strrpos($a," ", $ind + 1);
$count++;
}
if ($ind != -1)
{
$b = substr($a, 0, $ind) + "...";
}
ЗЫ. не факт, что пример работоспособен
|
кстати чтобы этот пример заработал достаточно перед переменными написать знак доллара(как в этой цитате).
|
26.07.2011 12:28 |
PhoeniXX |
Цитата:
Сообщение от TIGR
так а где ты видишь тут критику? я как на форум зашел предложил решение увы вечерами не часто бываю тут.
зы кстати дын-дыра тебе с инкой в пятницу вечером около галереи - прошли и не заметили и на крики мои не отвечали
|
и тебе дындыра мы с инкой такие, постоянно втыкаем с этим
|
26.07.2011 12:25 |
TIGR |
Цитата:
Сообщение от PhoeniXX
я кагбы php незнаю, и дефолтные функции тем более.
Забавно, что после того как дают хоть какой-то совет, сразу все набегают, и всё критикуют... А до этого сплошная тишина
|
так а где ты видишь тут критику? я как на форум зашел предложил решение увы вечерами не часто бываю тут.
зы кстати дын-дыра тебе с инкой в пятницу вечером около галереи - прошли и не заметили и на крики мои не отвечали
|
26.07.2011 11:48 |
PhoeniXX |
я кагбы php незнаю, и дефолтные функции тем более.
Забавно, что после того как дают хоть какой-то совет, сразу все набегают, и всё критикуют... А до этого сплошная тишина
|
26.07.2011 09:28 |
TIGR |
а стандартная функция в пхп не подходит?
|
26.07.2011 01:03 |
дмитрий_оч_приятно |
проще будет воспользоваться regex:
PHP код:
$a = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec volutpat elementum metus nec scelerisque.';
preg_match('/([^ ]+[ ]){10}/', $a, $results);
$b = substr($results[0], 0, -1).'...';
|
26.07.2011 00:46 |
sun-ks |
Цитата:
Сообщение от PhoeniXX
PHP код:
$ind = 0; $count = 0; while (ind != -1 || count <= 10) { ind = strrpos($a," ", ind + 1); count++ } if (ind != -1) { $b = substr($a, 0, ind) + "..."; }
ЗЫ. не факт, что пример работоспособен
|
$ind;
$count;
- Это переменные?
У меня пишет ситаксическая ошибка в строке № 18
Почесав затылок, юзер дописал через 8 минут
PHP код:
<?php //çàïðåùàåì êåøèðîâàíèå ñòðàíèöû.!!!!!!!!!!!!!!!!! Header('Cache-Control: no-cache, no-store, max-age=0, must-revalidate'); Header('Pragma: no-cache'); //âûáîðêà íàçâàíèÿ ðàçäåëà $razdel=$_GET[razdel]; //ïðîâåðêà ðåçóëüòàòîâ çàïîëíåíÿ ôîðìû if(isset($_POST[name])) {$name = $_POST[name];if($name == "") {unset($name);}}
if(isset($_POST[text])) {$text = $_POST[text];if($text == "") {unset($text);}} $data=date("y.m.d"); $ind = 0; $count = 0; while ($ind != -1 || $count <= 10) { $ind = strrpos($text1," ", $ind + 1); $count++; } if ($ind != -1) { $title = substr($text, 0, $ind) + "..."; }
//äîáàâëÿåì äàííûå â áàçó äàííûõ. include('db.php');//ñîåäèíåíèå ñ áàçîé äàííûõ. if(isset($razdel)&& isset($name) && isset($title) && isset($text) && isset($data) ) { /*Çàíîñèì èíôîðìàöèþ â áàçó*/ $result = mysql_query("INSERT INTO razdel (name, title, text, data, razd) VALUES ('$name','$title','$text','$data','$razdel')" ); if($result == 'true') {echo "<p>Äîáàâëåíî óñïåøíî!</p>"; $var='index.php'; } else {echo "<p>Îøèáêà äîáàâëåíèÿ!</p> <br/><p>Çàïîëíèòå âñå ïîëÿ!</p>";} }
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//RU" "http://www.w3.org/TR/REC-html40/loose.dtd"> <html> <head> <title>Ãëàâíàÿ</title> <meta http-equiv="Content-Language" content="ru"> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> <meta name="author" content="storozhukua@gmail.com"> <meta name="keywords" content=""> <meta name="description" content=""> <?php if(isset($var)){ echo"<meta http-equiv='refresh' content='1;url=$var '> "; } ?> <link rel="stylesheet" type="text/css" href="css/1.css"> <link rel="shortcut icon" type="image/x-icon" href=""> </head> <body> <table id='table' border='0' align='center' width='1000px'> <tr> <td > <table id='v_menu' width='1000px' ><tr><td class='v_menu1'><a href='index.php'>íà ãëàâíóþ </a></td><td width='600px'></td><td class='v_menu1'>î ïðîåêòå</td><td class='v_menu1'>êîíòàêòû</td></tr></table> </td> <!-- Âåðõíÿÿ ïîëîñà --> </tr> <tr> <td> <!--Âîñïîìèíàíèÿ --> <table id='table1' width='1000px'> <tr><td class='td_add'> <span><span>Çàïîëíèòå ïîëÿ:</span> <span style="margin-left:200px">Âû äîáàâëÿåòå ïîñò â ðàçäåë:<span style="color:red;"> <?php echo $razdel ; ?></span></span> </span> <form name="add_vosp" action="add_vosp.php?razdel=<?php echo'',$razdel; ?>" method="post" style="text-align:left"> <label>Èìÿ (Nick):<br/><input type="text" name="name" SIZE='40'></input></label><br> <label>ßðêîå çàïîìèíàþùèåñÿ íàçâàíèå:<br><input type="text" name="title" SIZE='80'></input></label><br> <label>Ñàìîå ðàíåå âîñïîìèíàíèå èç äåòñòâà:<br/><textarea rows="10" cols="105" name="text" ></textarea></label><br/> <div style="text-align:left"> <label ><input type="submit" id="submit" name="submit" value="Çàïîñòèòü!"></input></label> </div> </form>
</td></td></tr>
</table> </td> </tr>
</table>
</body> </html>
Почесав затылок, юзер дописал через 47 минут
проблему решил с помощью функции - substr
|
25.07.2011 21:59 |
PhoeniXX |
PHP код:
$ind = 0;
$count = 0;
while (ind != -1 || count <= 10)
{
ind = strrpos($a," ", ind + 1);
count++
}
if (ind != -1)
{
$b = substr($a, 0, ind) + "...";
}
ЗЫ. не факт, что пример работоспособен
|
25.07.2011 21:55 |
sun-ks |
Цитата:
Сообщение от PhoeniXX
если именно 10 слов, то можно через некий indexof найти индекс последнего 10 пробела, и сделать substring до этого символа.
сэмпл на шарпе:
PHP код:
int ind = 0, count = 0; while (ind != -1 || count <= 10) { ind = someString.IndexOf(" ", ind + 1); count++ } if (ind != -1) { string result = someString.SubString(0, ind) + "..."; }
|
красиво, но если не сложно можно этот же пример но с переменными....$a $b
Просто уже времени совсем не осталось...
п.с. С меня бокал холодного запотевшего пива... + полосатики ))))))
|
25.07.2011 21:41 |
PhoeniXX |
если именно 10 слов, то можно через некий indexof найти индекс последнего 10 пробела, и сделать substring до этого символа.
сэмпл на шарпе:
PHP код:
int ind = 0, count = 0;
while (ind != -1 || count <= 10)
{
ind = someString.IndexOf(" ", ind + 1);
count++
}
if (ind != -1)
{
string result = someString.SubString(0, ind) + "...";
}
|