PHP.SU

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

Страниц (19): « 1 2 [3] 4 5 6 7 8 9 ... » В конец

> Найдено сообщений: 277
Mister Отправлено: 03 Апреля, 2009 - 16:24:20 • Тема: Снова о постраничной навигации • Форум: Программирование на PHP

Ответов: 4
Просмотров: 285
Нашёл пример постраничной навигации http://www.php.su/articles/?cat=...les&page=062 переделал немного под свои запросы.
PHP:
скопировать код в буфер обмена
  1. include "templates/header.tpl";
  2. require_once "admin/config.php";
  3. // Переменная хранит число сообщений выводимых на станице
  4. $number = 5;
  5. // Извлекаем из URL текущую страницу
  6. $archiv = $_GET['archiv'];
  7. // Определяем общее число сообщений в базе данных
  8. $result = mysql_query("SELECT COUNT(*) FROM meropr WHERE meropr_date<NOW() ORDER BY meropr_date");
  9. $posts = mysql_fetch_row($result);
  10. // Находим общее число страниц
  11. $total = 1000/*intval(($posts - 1)/$number) + 1*/; если здесь оставить всё как в первоначальном коде, то выдаёт ошибку
  12. Fatal error: Unsupported operand types in T:\home\localhost\zakaz\archiv.php on line 13 , поэтому временно сделал значение 1000
  13. // Определяем начало сообщений для текущей страницы
  14. $archiv = intval($archiv);
  15. // Если значение $page меньше единицы или отрицательно
  16. // переходим на первую страницу
  17. // А если слишком большое, то переходим на последнюю
  18. if(empty($archiv) or $archiv < 0) $archiv = 1;
  19.   if($archiv > $total) $archiv = $total;
  20. // Вычисляем начиная к какого номера
  21. // следует выводить сообщения
  22. $start = $archiv * $number - $number;
  23. // Выбираем $num сообщений начиная с номера $start
  24. $result = mysql_query("SELECT * FROM meropr WHERE meropr_date<NOW() LIMIT $start, $number");
  25. // В цикле переносим результаты запроса в массив $postrow
  26. echo "<table>";
  27. while ( $postrow[] = mysql_fetch_array($result))  
  28. echo " ";
  29. for($i = 0; $i < $number; $i++)
  30. {
  31.         echo "<tr>
  32.                 <td width=\"80%\" align=\"left\">&nbsp;<a href=\"doc.php?id_meropr=".$postrow[$i]['id_meropr']."&".$postrow[$i]['meropr_path']."\" title=\"Просмотр конкурсной  документации для скачивания\">".$postrow[$i]['meropr']."</a></td><td>".$postrow[$i]['meropr_date']."</td>";
  33. }
  34. echo "</table>";  
  35. // Проверяем нужны ли стрелки назад
  36. if ($archiv!=1) $pervarchiv = '<a href=./archiv.php?archiv=1><<</a><a href=./archiv.php?archiv='. ($archiv-1) .'><</a> ';
  37. // Проверяем нужны ли стрелки вперед
  38. if ($archiv!=$total) $nextarchiv = '<a href=./archiv.php?archiv='.($archiv+1).'>></a><a href=./archiv.php?archiv='.$total.'>>></a>';
  39.  
  40. // Находим две ближайшие станицы с обоих краев, если они есть
  41. if($archiv-2>0) $archiv2left = '<a href= ./archiv.php?archiv='. ($archiv-2) .'>'. ($archiv-2) .'</a> | ';
  42. if($archiv-1>0) $archiv1left = '<a href= ./archiv.php?archiv='. ($archiv-1) .'>'. ($archiv-1) .'</a> | ';
  43. if($archiv+2<=$total) $archiv2right = ' | <a href= ./archiv.php?archiv='. ($archiv+2) .'>'. ($archiv+2) .'</a>';
  44. if($archiv+1<=$total) $archiv1right = ' | <a href= ./archiv.php?archiv='. ($archiv+1) .'>'. ($archiv+1) .'</a>';
  45. // Вывод меню
  46. echo $pervarchiv.$archiv2left.$archiv1left.'<b>'.$archiv.'</b>'.$archiv1right.$archiv2right.$nextarchiv;

Дальше всё работает вроде нормально, выдаёт навигацию в виде << < 1 | 2 | 3 и т.д.
Ссылки работают, но на первой странице ошибка
Notice: Undefined variable: archiv2left in T:\home\localhost\zakaz\archiv.php on line 47

Notice: Undefined variable: pervarchiv in T:\home\localhost\zakaz\archiv.php on line 47

Notice: Undefined variable: archiv1left in T:\home\localhost\zakaz\archiv.php on line 47
На второй
Notice: Undefined variable: archiv2left in T:\home\localhost\zakaz\archiv.php on line 47

Notice: Undefined variable: pervarchiv in T:\home\localhost\zakaz\archiv.php on line 47
На третьей
Notice: Undefined variable: archiv2left in T:\home\localhost\zakaz\archiv.php on line 47
Начиная с четвёртой ошибка исчезает.
Подскажите, в чём проблема?
Mister Отправлено: 05 Марта, 2009 - 08:49:55 • Тема: Одинаковая высота колонок и одинаковый фон • Форум: HTML, Дизайн & CSS

Ответов: 4
Просмотров: 2473
Он итак прикреплён, он не дублируется дальше самого блока.
Mister Отправлено: 04 Марта, 2009 - 19:43:38 • Тема: Одинаковая высота колонок и одинаковый фон • Форум: HTML, Дизайн & CSS

Ответов: 4
Просмотров: 2473
Подскажите, как сделать, чтобы при дивовой верстке высота колонок (а именно блоков) была одинаковой, независимо от содержащейся в ней информации. И фоновое изображение не заканчивалось как только заканчивается текст в короткой колонке.

Проблема на сайте www[dot]dzm-k[dot]ru , там слева фоновое изображение заканчивается вместе с текстом меню и не заполняет до низа. А необходимо чтобы эта полоса продолжалась до конца самого контента расположенного правее.
Mister Отправлено: 06 Января, 2009 - 16:18:07 • Тема: PHP4 прекратит существование в 2008 году • Форум: Новости веб-технологий

Ответов: 4
Просмотров: 48
Зачем делать такие глобальные изменения в языке, не проще оставлять старые возможности и добавлять в них новые? Или хотя бы сам интерпретатор поддерживал и старые версии?
Mister Отправлено: 28 Мая, 2008 - 11:34:59 • Тема: Новый движок форума • Форум: Колонка администратора

Ответов: 123
Просмотров: 65778
Подскажите, с хостинг-провайдером не было проблем по-поводу размещения форума ExBB в плане превышения нагрузки на сервер?
Mister Отправлено: 06 Мая, 2008 - 13:37:27 • Тема: Авторизация • Форум: Программирование на PHP

Ответов: 4
Просмотров: 823
Спасибо!
Mister Отправлено: 06 Мая, 2008 - 13:00:03 • Тема: Авторизация • Форум: Программирование на PHP

Ответов: 4
Просмотров: 823
Файл index.php содержит форму ввода логина и пароля. В файле check.php происходит проверка правильности введённых логина и пароля. А также в нём происходит проверка и сравнение с правильными логином и паролем. Главный вопрос в том, чтобы предъотвратить обращение пользователя к файлу check.php напрямую, минуя файл с формой.
Mister Отправлено: 06 Мая, 2008 - 11:33:53 • Тема: Авторизация • Форум: Программирование на PHP

Ответов: 4
Просмотров: 823
Я в безопасности не очень разбираюсь, не мог ли бы Вы подсказать всё ли у меня в порядке со скриптом?
Код формы файл index.php
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. //Создание сессии
  3. //Регистрация переменных
  4. $_SESSION['auth'] = "l";
  5. ?>
  6. <table cellpadding="5" cellspacing="5" border="0" align="center" width="400" height="10%">
  7. <form action="check.php" method="post">
  8. <tr bgcolor="#E7E7E7">
  9.         <td><b>Введите логин</b></td>
  10.         <td><input type="text" name="name">td>
  11. </tr>
  12. <tr bgcolor="#E7E7E7">
  13.         <td><b>Введите пароль</b></td>
  14.         <td><input type="password" name="password"></td>
  15. </tr>
  16. <tr bgcolor="#E7E7E7">
  17.         <td><b>Повторите пароль</b></td>
  18.         <td><input type="password" name="password_again"></td>
  19. </tr>
  20. <tr>
  21.         <td>&nbsp;</td>
  22.         <td><input type="submit" name="go" value="&nbsp;&nbsp;&nbsp;Вход&nbsp;&nbsp;&nbsp;"></td>
  23. </tr>
  24. </form>
  25. </table>
  26.  

Этот файл уже непосредственно проверяет данные введённые в форму, файл check.php.
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. if (!isset ($_SESSION['auth']))
  4.         {
  5.                 header ('Location: index.php');
  6.                 die ();
  7.         }
  8.         {      
  9. //Проверка полей
  10. $_POST['name'] = trim ($_POST['name']);
  11. $_POST['password'] = trim ($_POST['password']);
  12. $_POST['password_again'] = trim ($_POST['password_again']);
  13. if (empty($_POST['name']))
  14.         {
  15.                 echo "Поле <b>Имя</b> не заполнено, пожалуйста, проверьте правильность введённых данных";
  16.                 echo "<br><a href=# onClick = 'history.back()'>Вернуться назад</a>";
  17.                 exit();
  18.         }
  19. if (empty($_POST['password']))
  20.         {
  21.                 echo "Поле <b>Пароль</b> не заполнено";
  22.                 echo "<br><a href=# onClick = 'history.back()'>Вернуться назад</a>";
  23.                 exit();
  24.         }
  25. if (($_POST['password']) !== ($_POST['password_again']))
  26.         {
  27.                 echo "Введённые пароли не совпадают";
  28.                 echo "<br><a href=# onClick = 'history.back()'>Вернуться назад</a>";
  29.                 exit();
  30.         }
  31. $name = htmlspecialchars(stripslashes($_POST["name"]));
  32. $password = htmlspecialchars(stripslashes($_POST["password"]));
  33.         }
  34. //Далее будет следовать проверка правильности введённого пароля и логина
  35. ?>
  36.  
Mister Отправлено: 19 Апреля, 2008 - 19:10:16 • Тема: Проверка записей в базе данных • Форум: Регулярные выражения

Ответов: 3
Просмотров: 244
Таблица примерно и будет всё время такой же.

Спасибо за ответы.
Mister Отправлено: 18 Апреля, 2008 - 14:42:41 • Тема: Возможно это глупый вопрос , но как сохранить swf так , чтобы когда я бросаю его в dreamviewer , у него не было фона . Я уже поставил в windows - transparent , но не помогает . • Форум: HTML, Дизайн & CSS

Ответов: 1
Просмотров: 1880
Это я так понимаю, в swf файле фон прозрачный сделать надо?
Mister Отправлено: 18 Апреля, 2008 - 14:41:15 • Тема: Проверка записей в базе данных • Форум: Регулярные выражения

Ответов: 3
Просмотров: 244
Подскажите, нормально ли будет если я какждую запись в базе данных буду выводить и при этом проверять каждый раз через регулярное выражение? Т.е. для построения таблицы на странице, я буду в каждой записи искать год, не будет ли при этом большой нагрузки на сервер и на сколько замедлиться скорость выполнения скрипта. Количество записей в базе приблизительно 3000 строк.
Mister Отправлено: 18 Апреля, 2008 - 14:34:06 • Тема: Выбор текста между тэгами • Форум: Регулярные выражения

Ответов: 2
Просмотров: 256
А символ | в условии с одной и с другой стороны разве не надо?
Mister Отправлено: 09 Апреля, 2008 - 08:37:47 • Тема: Сравнение дат • Форум: Программирование на PHP

Ответов: 5
Просмотров: 662
Спасибо, всё работает.
Mister Отправлено: 08 Апреля, 2008 - 20:13:00 • Тема: Сравнение дат • Форум: Программирование на PHP

Ответов: 5
Просмотров: 662
Нашёл я функции для сравнения дат, но что - то не работает.

Запрос такой:
select * from meropr order by meropr_date desc where meropr_date=TO_DAYS(NOW())<TO_DAYS(date_col);
Ошибка :
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in y:\home\localhost\www\zakaz\index.php on line 15

Понимаю запрос неверен, подскажите пожалуйста, как его сделать правильно?
Mister Отправлено: 06 Апреля, 2008 - 20:05:19 • Тема: Не могу запустить PHP • Форум: Программирование на PHP

Ответов: 2
Просмотров: 235
А как происходит запуск? Опишите порядок действий.

Страниц (19): « 1 2 [3] 4 5 6 7 8 9 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB