PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (7): [1] 2 3 4 5 6 7 »

> Найдено сообщений: 94
sofck Отправлено: 27 Июля, 2011 - 09:24:01 • Тема: Настройки mod_rewrite • Форум: Вопросы новичков

Ответов: 0
Просмотров: 93
До вчерашнего вечера на всех хостингах работало нормально следующее выражение
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. RewriteEngine on
  3. RewriteCond %{REQUEST_FILENAME} !-f
  4. RewriteCond %{REQUEST_FILENAME} !-d
  5. RewriteRule (.*)$  index.php/$1 [QSA]

Но вчера на новом хостинге пишет "No input file specified"

При постановки знака вопроса
CODE (htmlphp):
скопировать код в буфер обмена
  1. RewriteRule (.*)$  index.php?/$1 [QSA]

все ссылки сайта показывают только главную.
Если же изменить на
CODE (htmlphp):
скопировать код в буфер обмена
  1. RewriteRule (.*)$  http://formula-q.ru/index.php/$1 [QSA]

то всё работает, но подставляется "index.php", что естественно не нужно.

Подскажите плиз как это исправить....
php info : formula-q.ru/phpinfo.php
sofck Отправлено: 28 Февраля, 2011 - 20:08:44 • Тема: Как сделать ЧПУ? • Форум: Программирование на PHP

Ответов: 20
Просмотров: 1808
Спасибо. Гляну.
sofck Отправлено: 12 Февраля, 2011 - 17:50:41 • Тема: Рекурсия • Форум: Программирование на PHP

Ответов: 11
Просмотров: 1867
Ну вроде сделал. По крайне мере работает. Но если предложите вариант без множества запросов к бд. То буду благодарен. Вот мой рабочий вариант:
PHP:
скопировать код в буфер обмена
  1. function display_child($parent = 0, $level = NULL)
  2. {
  3.         $x=1;
  4.         $sql = "SELECT * from pages WHERE id!=2 and subto='$parent' ORDER BY sort";
  5.         $result = mysql_query($sql);
  6.         if(mysql_num_rows($result)>0)
  7.         {
  8.                 if($parent!=0){$level.='.';}
  9.         }
  10.         echo '<ul>';
  11.         while ($row = mysql_fetch_array($result))
  12.         {
  13.         echo '<li>';
  14.         echo $level;
  15.         echo $x.'. ';
  16.         echo $row['name'];
  17.         display_child($row['id'],$level.$x);   
  18.         $x++;
  19.         echo '</li>';
  20.         }
  21.         echo '</ul>';
  22. }

Спасибо всем.
sofck Отправлено: 11 Февраля, 2011 - 17:13:26 • Тема: Рекурсия • Форум: Программирование на PHP

Ответов: 11
Просмотров: 1867
[quote=LEONeso][/quote]
LEONeso пишет:
попытка сделать многоуровневое меню или древо сайта?



Ну да дерево сайта где у каждой страницы есть свой номер - в зависимости от её предков.
sofck Отправлено: 11 Февраля, 2011 - 14:12:46 • Тема: Рекурсия • Форум: Программирование на PHP

Ответов: 11
Просмотров: 1867
А в таблице всё просто

id=индификатор записи
name = название
subto = индивикатор родителя (если 0 то верхний уровень - главная)


так наглядней
sofck Отправлено: 11 Февраля, 2011 - 13:51:33 • Тема: Рекурсия • Форум: Программирование на PHP

Ответов: 11
Просмотров: 1867
И что это даст! От куда брать значение всех предыдущих родителей?
sofck Отправлено: 11 Февраля, 2011 - 13:33:14 • Тема: Рекурсия • Форум: Программирование на PHP

Ответов: 11
Просмотров: 1867
Ну дядьки!! Есть же простое решение наверника! Подскажите плиз!(
sofck Отправлено: 10 Февраля, 2011 - 23:12:15 • Тема: Рекурсия • Форум: Программирование на PHP

Ответов: 11
Просмотров: 1867
...но мой предыдущий пример не работает. Каким то магическим образом после 4 вложения вся цепочка сбивается.
сейчас буду краток:
PHP:
скопировать код в буфер обмена
  1. function display_child($parent)
  2. {
  3.         $sql = "SELECT * from `pages` WHERE subto='$parent'";
  4.         $result = mysql_query($sql);
  5.         echo '<ul>';
  6.         $x=1;
  7.         while ($row = mysql_fetch_array($result))
  8.                 {
  9.                         echo '<li>';
  10.                         echo $x.'.'.$row['name'];
  11.                         $x++;
  12.                         display_child($row['id']);
  13.                         echo '</li>';
  14.         }
  15.         echo '</ul>';
  16. }
  17. display_child(0);

Как сделать что бы нумерация была не просто числовая в текущем уровне а еще и перед текущем номером элементы был значение (адрес) был адрес всего родительского уровня.

К примеру
1 item
2 item
2.1 item
2.2 item
2.2.1 item
2.2.2 item
3 item
sofck Отправлено: 06 Февраля, 2011 - 16:06:14 • Тема: Помогите с рекурсией! • Форум: Программирование на PHP

Ответов: 7
Просмотров: 374
Разобрался!
Спасибо всем кто откликнулся. Ну а кому может потребуется то вот работающий пример.
Естественно для работы нужно поправить кое чего!))

вот код:
PHP:
скопировать код в буфер обмена
  1. <?
  2. function cataloglinks($subto=0,$num=NULL)
  3. {
  4. $n=1;
  5. $res = $this->db->customback('select id,subto,name from pages where list=1 and status=1 order by sort DESC')
  6. or die ("ошибко ".mysql_error());
  7. if(mysql_num_rows($res)<1){return false;}else{
  8.           while ($line = mysql_fetch_assoc($res)) {
  9.                 $tags[ (int) $line['subto'] ][] = array( (int) $line['id'], $line['name']);
  10.         }  
  11.         echo '<ul>';
  12.                
  13.         for ($i=count($tags[$subto])-1; $i>=0;$i--) {//
  14.                
  15.                                 echo '<li>';
  16.                                 if (isset($tags[ $tags[$subto][$i][0] ]))
  17.                                 {
  18.                                         echo $num;$num.=$n.'.';
  19.                                 }
  20.                                 else
  21.                                 {
  22.                                 echo $num;
  23.                                 }
  24.                                 echo $n++;
  25.                                 echo $tags[$subto][$i][1];             
  26.  
  27.  
  28.  if (isset($tags[ $tags[$subto][$i][0] ]))
  29.  {
  30.         cataloglinks($tags[$subto][$i][0],$num); $num=NULL;
  31. }
  32.  echo '</li>';
  33.       }
  34.         echo '</ul>';
  35. }
  36.  
  37. }  
  38. ?>
sofck Отправлено: 06 Февраля, 2011 - 13:47:57 • Тема: Помогите с рекурсией! • Форум: Программирование на PHP

Ответов: 7
Просмотров: 374
На счет массива это я так к слову сказал чтобы показать что <ol> не подходит )


Мне нужно получить переменную для каждого элемента которая содержит номера элемента в формате что я указал. Тоесть её номер в текущей категории и перед ни номер родителя
(Добавление)
Мелкий пишет:
http://htmlbook[dot]ru/css/counter-reset
Эту задачу CSS решать умеет


Ну только мне нужно не просто выводить это значение а получить его в "руки" для дальнейших действий!)
sofck Отправлено: 06 Февраля, 2011 - 13:13:54 • Тема: Помогите с рекурсией! • Форум: Программирование на PHP

Ответов: 7
Просмотров: 374
grefon пишет:
Радость Заменить <ul> ... </ul> на <ol> ... </ol>.


не то!)) Во первый мне нужно чтобы для каждого вложения к началу нумерация подставлялось значение родителя.

для того что бы в конце перечисления дерева будет создался массив
$data['name'] = 3.2.2 Страница
$data['uri'] = Где будет адрес страницы
sofck Отправлено: 06 Февраля, 2011 - 12:49:38 • Тема: Помогите с рекурсией! • Форум: Программирование на PHP

Ответов: 7
Просмотров: 374
Есть функия построения дерева.

PHP:
скопировать код в буфер обмена
  1. function cataloglinks($subto=0)//отображение дерева каталога
  2. {
  3.  
  4. $res = $db->customback('select id,subto,name from pages where list=1 and status=1 order by sort DESC')
  5. or die ("ошибко ".mysql_error());
  6. if(mysql_num_rows($res)<1){return false;}else{
  7.           while ($line = mysql_fetch_assoc($res)) {
  8.                 $tags[ (int) $line['subto'] ][] = array( (int) $line['id'], $line['name']);
  9.         }  
  10.         echo '<ul>';
  11.         for ($i=count($tags[$subto])-1; $i>=0;$i--) {//
  12.                
  13.                                 echo '<li>';   
  14.                                
  15.                         echo $tags[$subto][$i][1];
  16.                
  17.  if (isset($tags[ $tags[$subto][$i][0] ]))
  18.  {
  19. cataloglinks($tags[$subto][$i][0]);
  20.         }
  21.                 echo '</li>';
  22.         }
  23.         echo '</ul>';
  24. }
  25.  
  26. }        


как сделать что бы список был нумерованный. Ну тоесть для каждого вложения к началу нумерация подставлялось значение родителя. Ну к примеру есть пункт 2 у него вложения 2.1 2.2 дальше у пункта 2.2 есть тоже вложения и там уже было 2.2.1 и т.д


p.s. ($db->customback не обращайте внимания =)))
sofck Отправлено: 18 Января, 2011 - 10:20:09 • Тема: баг с "вечным" футером • Форум: HTML, Дизайн & CSS

Ответов: 9
Просмотров: 2628
Радость Радость
Всем спасибо! Тема закрыта)))
sofck Отправлено: 18 Января, 2011 - 00:57:59 • Тема: баг с "вечным" футером • Форум: HTML, Дизайн & CSS

Ответов: 9
Просмотров: 2628
Ну точно! Из за прокрутки!!! И как избавиться от этих скачков?
sofck Отправлено: 14 Января, 2011 - 20:18:27 • Тема: баг с "вечным" футером • Форум: HTML, Дизайн & CSS

Ответов: 9
Просмотров: 2628
Проблема в том, что при быстрой загрузке страниц видно как скачет содержимое то влево то в право в зависимости от того занимает ли контент всё содежимое экрана или нет.
(естественно лишь при отцентрированном сайте)

Вот ссылка на пример: [url]http:/regesh.ru/footer/[/url]

Вот код css:
CODE (htmlphp):
скопировать код в буфер обмена
  1. * {
  2.         margin:0;
  3.         padding:0;
  4. }
  5. html, body, #wrap {
  6.         height: 100%;
  7. }
  8. body > #wrap {
  9.         height: auto;
  10.         min-height: 100%;
  11. }
  12. #main {
  13.         overflow:auto;
  14.         padding-bottom: 100px;
  15. }
  16. #footer {
  17.         position: relative;
  18.         margin-top: -100px;
  19.         height: 100px;
  20.         clear:both;
  21.         }
  22. /*Opera Fix*/
  23. body:before {
  24.         content:"";
  25.         height:100%;
  26.         float:left;
  27.         width:0;
  28.         margin-top:-32767px;
  29. }


Вот код html:
CODE (htmlphp):
скопировать код в буфер обмена
  1. <div id="wrap">
  2. <div id="main">
  3. CONTENT GOES HERE
  4. </div>
  5. </div>
  6. <div id="footer">
  7. footer
  8. </div>


Может кто сталкивался с таким "приколом" и нашел решение.
p.s. Пробовал много разных решений для "прилипшего" футера, но во всех примерах этот анти эффект присутствует.

Страниц (7): [1] 2 3 4 5 6 7 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB