Все технические форумы на одном сайте Удобный поиск информации с популярных форумов в одном месте
Вопрос: Как правильно сделать вывод страницы "технические работы"?

Подскажите, пожалуйста, как правильно сделать вывод страницы "технические работы"?

У меня есть пару идей на этот счет:
1. Т.к. у меня почти все данные хранятся в БД (mysql), то можно сделать одну таблицу, в которой будет один из столбцов выделен под параметр вывода страницы "технические работы" (к примеру при значении 1 перекидывать с любой другой страницы сайта с помощью refresh на страницу "технические работы", а при значении 0 - нет). Но меня смущает тот вариант, когда БД по каким-либо причинам может быть недоступна. И вот из-за этих смущений у меня появилась вторая идея.
2. Принцип такой-же как и в первом варианте, только вместо БД использовать хранение значений в файле.
Ответ: Решил пойти пока путем для меня более понятным - с помощью заглушки в .htaccess. Но тут тоже столкнулся с проблемой при составлении страницы-заглушки. При включении заглушки с помощью .htaccess и переброса на страницу-заглушку к данной странице не могу подключить картинки и css. Я понимаю, что доступ становится ограничен из-за включения заглушки в .htaccess. Как тогда быть в данной ситуации?
Вот код заглушки в .htaccess.
Код:
# Модуль включения технических работ на сайте с помощью файла.
<IfModule mod_rewrite.c>
RewriteEngine On
ErrorDocument 503 
/technical_work.php
#RewriteCond %{REQUEST_URI} !/technical_work\.php
RewriteCond %{REMOTE_ADDR} !^127\.0\.0\.1
RewriteRule 
^ /technical_work.php [R=503,L]
</
IfModule>
Вопрос: Как сделать переключение страниц?

Здравствуйте, как сделать переключение страниц при выводе базы: 1 2 3 4 5 … 10 11
Вот мой код вывода данных из базы:
PHP
1
2
3
4
5
6
7
8
...
    $query1 = mysql_query("SELECT * FROM pages ORDER BY id DESC");
    $bd = mysql_fetch_array($query1);
    do {
        printf("%s", $bd['title']);
    }
    While($bd = mysql_fetch_array($query1));
...
Ответ: Azdeman, ничего не показывает
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
$num = 3;
$table = "pages";
 
function Num_rowss($table,$b=null){
    global $link;
        $query = $link->query("SELECT `id` FROM `$table`");
        $num_rows = $query->num_rows;
            return $num_rows >0 ? $num_rows : false;
}
 
function select_table_infos($polya,$table,$num,$num_stop=3){
    global $link;
        $query = $link->query("SELECT ".implode(",",$polya)." FROM `$table` LIMIT $num,$num_stop");
            while($row=$query->fetch_array()){
                echo $row['title']."<br/>";
            }
}
 
$num_rows = Num_rowss($table); 
 
if(!isset($_GET["page"])){
    $select1 = select_table_infos(array('title'),$table,$num=0);
    $s1 = 2; 
        for($i=3;$i<$num_rows;$i+=3){
            echo "<a href='/videos.php?page={$i}'> <input type='submit' value={$s1}></a>";
                $s1++;
        }
}
if(isset($_GET['page'])){
    $page = $_GET['page'];
    $select2 = select_table_infos(array('title'),$table,$page);
    $s2 = 2; 
        echo "<a href='/videos.php'> <input type='submit' value='1></a>";
        for($i=3;$i<$num_rows;$i+=3){
            echo "<a href='/videos.php?page={$i}'> <input type='submit' value={$s2}></a>";
                $s2++;
        }
}
Почему не работает?

Добавлено через 35 минут
и это не работает: gency.ru/pagination
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
if ($result=mysqli_query($link,'SELECT FLOOR((COUNT(*)+'.($pp-1).')/'.$pp.') FROM `pages`'))
{
  list($pc)=mysqli_fetch_row($result);
  mysqli_free_result($result);
 
  // здесь можно разместить ротатор номеров страниц, например, 0 и 1
function pagelink($p)
{
  return $p>1?'?p='.$p:'';
}
 
if ($pn==0) $pn++;
elseif ($pn==1) $pn--;
//----------------------//
 
  if ($pn==0||$pn>$pc) notfound();
  elseif ($result=mysqli_query($link,'SELECT * FROM `pages` LIMIT '.(($pn-1)*$pp).','.$pp))
  {
    $range=6;
    $first=$pn-1-($pn-2)%$range;
    $last=$pc>$first+$range?$first+$range:$pc;
  }
  else notavail();
}
else notavail();
?>
<nav>
  <ul class="pagination">
<?php for ($i=$first;$i<=$last;$i++): ?>
    <li<?= $i==$pn?' class="active"':'' ?>><a href="/<?= pagelink($i) ?>"><?= $i ?></a></li>
<?php endfor; if ($pc>$last): ?>
    <li><a href="/<?= pagelink($i) ?>">Далее</a></li>
<?php endif; ?>
  </ul>
</nav>
Вопрос: Сделать список страниц в UserForm в две или больше колонки

Помогите сделать список страниц в UserForm в две или больше колонки. Спасибо...
Ответ: не получилось у меня.
Вопрос: Сделать произвольную страницу активной

Нужно сделать произвольную страницу активной но без перехода к ней.

Нужен аналог
Selection.GoTo What:=wdGoToPage, Which:=wdGoToAbsolute, Name:=i
но без перехода к ней.
Ответ:
Visual Basic
1
Selection.Start = ActiveDocument.GoTo(wdGoToPage, wdGoToAbsolute, i).Start
Вопрос: Как сделать топ посещяймых страниц

Нужно создать страницу там где будет показано топ посещаемых страниц,вот есть видео чат,мне нужно что бы в том топе показывалось,на том видео чате которым больше всего просмотров,тот стоял выше чем другие,и как это сделать что бы оно показывало что в той трансляции показывает.
Ответ:
Ты сначала видеочат прикрути, чтобы он заработал.

Топ посещаемых страниц делается предельно просто. Когда кто-то заходит на страницу, делаешь в базе данных отметку что страница посещена 1 раз. Если заходят еще раз, то меняешь один на 2. Когда надо получить топ, делаешь что-то типа -
select page from page_visits order by visit desc limit 10
Вопрос: [LARAVEL 5.1] Как сделать одну страницу для добавления\редактирования работы?

Привет всем! Подскажите пожалуйста. Пишу админку. Я хочу селать одну страницу для добавления\редактирования работы. Как реализовать? Просто это по сути будет одна и та же страница, только на странице редактирования в поля будет уже выводиться данные из базы, а на странице добавления те же поля, только пустые. Так вот. Как это сделать лучше? Поделитесь своими идеями, буду признателен!

Например у меня будет оббщая страница /new-work для добавления. А для редактирования нужно будет делать переход по ссылке дописав id, типа /new-work-355. Так вот, нужно как то сделать проверку чтоле, если URL = второму варианту, то выводить данные из БД, если же по первому, то ничего не выводить.
Ответ:
Сообщение от bb_oo
а как мне сделать форму для edit и create?
Посмотрите документацию.


Вопрос: Не обновляется страница

Данные добавляются в БД и выводятся на странице, но после добавления данных в БД они появляются только после обновления страницы вручную, как сделать обновление страницы?

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
session_start(); 
// если были отправлены данные
if(isset($_POST['add_advice'])){
    // Сравниваем введенную капчу с тем, что храниться в сессии
    if($_SESSION['capcha'] == $_POST['acapcha']){
        $to="zacoranat@mail.ru";
        $fio = $_POST['afio'];
        $tel = $_POST['atel'];
        $email = $_POST['amail'];
        if ($email == "")
        {
            $email = "zacoranat@mail.ru";
        }
        $sub="Консультация";
        $sub = convert_cyr_string ($sub,w,k);
        $sub = '=?koi8-r?B?'.base64_encode($sub).'?=';
        $message=$fio."\n".$tel."\n".$_POST['amessage'];
        $msg = convert_cyr_string ($message,w,k);
        $headers = 'MIME-Version: 1.0' . "\r\n";
        $headers .= 'Content-type: text/plain; charset=koi8-r' . "\r\n";
        $headers .= 'From:' .$email. "\r\n";
        if(mail($to,$sub,$msg,$headers))
        {    
        }
        else
        {
            echo "<p class='title'><font color='red'>По техническим причинам, письмо не было отпавленно!</font></p>";
        }
        
        $mes=$_POST['amessage'];
        
        db_connect();
        
        mysql_query("INSERT INTO `advice` (`name`, `mail`, `query`) VALUES ('$fio', '$email', '$mes')");
        mysql_close();
        
        header("Location: advice.php");
}else {
    print '<script language="javascript">alert("Введит верный результат!")</script>'; 
}
// Удаляем значение капчи из сессии 
unset($_SESSION['capcha']);  
}
делал при помощи js location.reloade(), но в таком случае отрабатывает код после else!
Ответ:
Сообщение от Henior
как сделать обновление страницы?
Javascript
1
2
3
<script language="JavaScript"> 
  window.location.href = "сюда название страницы"
</script>
это чтобы не отрабатывал вторую часть кода
Вопрос: Страница обновляется после отправки формы - php

На странице html добавлена форма обратной связи на php кодом
HTML5
1
2
3
<?php
include ("index.php");
?>
При нажатии на отправить, сообщение об успешной отправке открывается на новой странице index.php.
Как сделать чтобы страница оставалась, а обновлялся только блок формы.

Поиском несколько тем нешел, но что то безрезультатно. Понял лишь,что нужно как-то через ajax
Ответ:
Сообщение от maxer2013
На странице html добавлена форма обратной связи на php кодом
Как на странице html может быть добавлена форма с php кодом? HTML "не выполняет" PHP (как криво сказал )
Ну не важно. Смысл вопроса понятен.

По быстрому, вижу 2 способа решения - простой и сложный.
Простой - создайте на вашей html странице iframe. А в него загружайте страницу с формой.
Теперь любое действие в iframe не перезагрузит открытую страницу, а перезагрузит iframe. Примитивное подобие ajax. Но будет работать, для новичка самое то.

Сложный.
Как сказали выше - ajax. Тут просто не описать, да вы сразу и не поймете.
Вообщем в код вашей страницы, вставляется джаваскрипт и блок (пусть div). Скрипт "управляет" блоком - следит за ним, отлавливает действия. Как только этот скрипт поймает действие (нажатие на кнопку), он передаст информацию php скрипту.
php скрипт что то сделает (отправит письмо) и отправит обратно джаваскрипту результат - например сообщение что письмо отправлено. А джаваскрипт отобразит это сообщение в блоке (div). Может вообще скроет блок или сделает с блоком что хочет.

На этой технологии ajax работают почти все современные онлайн чаты - вконтакте, одноклассники.
Вопрос: Страница пользователя

Здравсвуйте! Пишу сайт "Онлайн Диск" для защиты диплома.

Я хочу, чтобы при открытии сайта, система проверяла авторизован пользователь или нет.
Если авторизован, то открывается "Личное облако" пользователя, иначе главная страница.
Это я реализовал через if-else. Если авторизован, то я сделал простой редирект.

Проблема в том, как мне сделать, чтобы страница "Личное облако" не была доступа неавторизованным пользователям по прямой ссылке?

P.S. Первый опыт с Asp.Net Mvc5, да и такие серьезные сайты я не создавал никогда.
P.P.S. В интернете нашел хорошие видеоуроки, которые подробно все описывают, но смотреть от и до нет времени, а найти именно по данной теме не сумел.

Заранее спасибо Вам!
Ответ: aleksskay4, yurickas, спасибо большое. Да, действительно все оказалось так легко.

Добавлено через 21 минуту
У меня такой вопрос, знатоки...
Я уже говорил, что пишу сайт - онлайн диск для диплома, и у меня возникли пару вопросов, на которые не могу найти внятный ответ. Изложу по порядку:

1. Хочу, чтобы после регистрации, система создавала папку для личного хранилища пользователя. Например, пользователь Ivan имеет id - 1551. Система создает папку ~/Content/Drive/id1551.

2. Что нужно сделать, чтобы отобразить файлы, папки с личного хранилища пользователя? Чтобы, войдя на свою страницу отображались все объекты пользователя, с папками и подпапками, полностью короче.

Кликните здесь для просмотра всего текста

Буду очень рад почитать книги небольшого объема на данную тематику.

P.S. Есть сайт с изучение mvc4,5, по 5 видеоуроки. Все внятно, четко, но, чтобы понять то, что мне необходимо узнать в ближайшее время, очень долго, потому что все уроки частично взаимосвязаны. А до защиты осталось мало времени.

P.P.S. Если тут есть те, кто готов помочь за определенную плату или же безвозмездно, то дайте знать, пожалуйста. Нужно всего лишь терпеть мои вопросики тематике MVC, давать на них ответы или же материал, который поможет. Думаю, мы найдем общий язык.
Вопрос: Spring security, кастомная страница авторизации

Всем привет. Как можно сделать свою страницу авторизации, а то стандартная уж очень убогая.
Ответ: /j_spring_security_check это не адрес страницы авторизации. это адрес куда передаются логин и пароль.
создайте контроллер с адресом /login.do который вызывает jsp страницы авторизации. на страницу поместите форму что дал выше.