Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
 Аватар для LMM
56 / 56 / 2
Регистрация: 17.02.2011
Сообщений: 234
Записей в блоге: 10
.NET 4.x

Стили сайта

20.05.2013, 18:07. Показов 1217. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер всем!

Помогите пожалуйста с таким вопросом. Создал сайт и наФотошопил 2-3 дизайна, запилил таблицу стилей (для всех скинов) и хотел что бы пользователь мог переключаться между стилями. Соответственно есть на сайте Site.Master и есть 3 таблицы стилей, когда ручками меняю в Site.Master название таблицы стиля, все встает норм, а вот как это сделать программно и так что бы сайт запомнил выбор пользователя и не скидывал дизайн на стандартный?

За ранее благодарен за помощь!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.05.2013, 18:07
Ответы с готовыми решениями:

CSS стили сайта
Доброго времени суток! Пишу сайт первый раз в жизни на WordPress и до этого никогда не имел дела с сайтами. Я новичок, так что прошу не...

Не отображаются стили сайта
Добрый день всем Интересует такой вопрос после установки на vbox (сеть настроена через бридж) Пробовал и на centos и на winserv 2008 ...

Сбиваются стили оформления сайта
При использовании данного кода сбиваются стьили оформления сайта, именно информации которая заносится в данный массив, как это можно...

10
 Аватар для Qgreg
49 / 49 / 4
Регистрация: 14.06.2011
Сообщений: 92
20.05.2013, 19:49
Цитата Сообщение от LMM Посмотреть сообщение
Добрый вечер всем!

Помогите пожалуйста с таким вопросом. Создал сайт и наФотошопил 2-3 дизайна, запилил таблицу стилей (для всех скинов) и хотел что бы пользователь мог переключаться между стилями. Соответственно есть на сайте Site.Master и есть 3 таблицы стилей, когда ручками меняю в Site.Master название таблицы стиля, все встает норм, а вот как это сделать программно и так что бы сайт запомнил выбор пользователя и не скидывал дизайн на стандартный?

За ранее благодарен за помощь!
Если пользователь авторизуется, создавать файл или запись в бд о текущем стиле.
Или если он анон, то вести запись в куках.

Как-то так.
0
 Аватар для Gelo123321
22 / 22 / 8
Регистрация: 05.01.2012
Сообщений: 282
20.05.2013, 20:11
Думаю здесь надо PHP уже использовать, а не только vb.net.
0
 Аватар для LMM
56 / 56 / 2
Регистрация: 17.02.2011
Сообщений: 234
Записей в блоге: 10
20.05.2013, 23:04  [ТС]
Цитата Сообщение от Qgreg Посмотреть сообщение
Или если он анон, то вести запись в куках.
Вот можно и такой вариант, главное дайте хоть чуток кода откуда начать и куда копать, а то не понятно, как обратиться к строке где прописан путь к таблице стилей и как потом в куках все это сохранить(((
0
 Аватар для Qgreg
49 / 49 / 4
Регистрация: 14.06.2011
Сообщений: 92
21.05.2013, 00:05
Цитата Сообщение от LMM Посмотреть сообщение
Вот можно и такой вариант, главное дайте хоть чуток кода откуда начать и куда копать, а то не понятно, как обратиться к строке где прописан путь к таблице стилей и как потом в куках все это сохранить(((
На чем написан сайт и как он взаимодействует с программой. Возможно придется писать некий шлюз между программой и сайтом.

Добавлено через 50 минут
Цитата Сообщение от LMM Посмотреть сообщение
Вот можно и такой вариант, главное дайте хоть чуток кода откуда начать и куда копать, а то не понятно, как обратиться к строке где прописан путь к таблице стилей и как потом в куках все это сохранить(((
[VBNET]
Реализация авторизации на wordpress на vb.net

Данный код покажет как реализовать win приложение которое позволить производить авторизацию в панель управления сайтом на вордпрес. Для начала я изучил заголовки, которые отправляются на сервер сайта и изучил что он мне отвечает. В данном вопросе мне помог плагин для Firefox LiveHttpHeaders. Самое сложное что здесь было, это правильно сформировать куки. Мы отправляем запрос на сервер, он нам возвращает ответ и присваивает нам Куки, которые мы должны ему отправить при следующем запросе, но проблема оказалась в том, что сервер нам куки выдает в "мусором"("path/;" и т.д, а принимать хочет только чистые параметры, поэтому я прежде из куки взял только необходимые параметры и только их отравлял за счет чего у меня получилась авторизация. Да и чуть не забыл, при последнем запросе, сервер вновь дает нам куки, из этого куки нам нужен только 1 параметр, мы его берем и добавляем к нашему чистому куки. И вот этот куки и нужно будет использовать в дальнейшем при следующих запросах.

VB.NET
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
Dim myLogin As String = txtLogin.Text
        Dim myPass As String = txtPass.Text
        Dim myUrl As String = "http://soft.dunlom.ru"'здесь ваш сайт на WP
  
        Dim myHttpWebRequest As HttpWebRequest
        Dim myHttpWebResponse As HttpWebResponse
  
        Dim sCookies As String = "wordpress_test_cookie=WP+Cookie+check"
  
        myHttpWebRequest = HttpWebRequest.Create(myUrl & "/wp-login.php")
        myHttpWebRequest.Method = "POST"
        myHttpWebRequest.Referer = myUrl & "/wp-admin"
        myHttpWebRequest.UserAgent = "Mozilla/5.0 (Windows NT 6.1; rv:15.0) Gecko/20100101 Firefox/15.0.1"
        myHttpWebRequest.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
        myHttpWebRequest.Headers.Add("Accept-Language", "ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3")
        myHttpWebRequest.ContentType = "application/x-www-form-urlencoded"
        If Not String.IsNullOrEmpty(sCookies) Then
            myHttpWebRequest.Headers.Add(HttpRequestHeader.Cookie, sCookies)
        End If
        myHttpWebRequest.AllowAutoRedirect = False
        Dim sQueryString As String = "log=" & myLogin & "&pwd=" & myPass
        Dim ByteArr As Byte() = Encoding.GetEncoding(1251).GetBytes(sQueryString)
        myHttpWebRequest.ContentLength = ByteArr.Length()
        myHttpWebRequest.GetRequestStream().Write(ByteArr, 0, ByteArr.Length)
        myHttpWebResponse = myHttpWebRequest.GetResponse()
        Dim myStreamReader As New StreamReader(myHttpWebResponse.GetResponseStream, Encoding.GetEncoding(65001))
        sCookies = ""
        If Not String.IsNullOrEmpty(myHttpWebResponse.Headers("Set-Cookie")) Then
            sCookies = myHttpWebResponse.Headers("Set-Cookie")
        End If
  
        Dim wtc As String = "" 'wordpress_test_cookie
        Dim wp As String = "" 'wordpress_
        Dim wli As String = "" 'wordpress_logged_in
  
        For i = 1 To sCookies.Length
            If Mid$(sCookies, i, 22) = "wordpress_test_cookie=" Then
                For j = i + 22 To sCookies.Length
                    If Mid$(sCookies, j, 1) = ";" Or j = sCookies.Length Or Mid$(sCookies, j, 1) = "," Then
                        wtc = Mid$(sCookies, i, j - i) '& ";"
                        Exit For
                    End If
                Next j
            End If
            If Mid$(sCookies, i, 10) = "wordpress_" And Mid$(sCookies, i, 11) <> "wordpress_l" Then
                For j = i + 10 To sCookies.Length
                    If Mid$(sCookies, j, 1) = ";" Or j = sCookies.Length Or Mid$(sCookies, j, 1) = "," Then
                        wp = Mid$(sCookies, i, j - i) & "; "
                        Exit For
                    End If
                Next j
            End If
            If Mid$(sCookies, i, 19) = "wordpress_logged_in" Then
                For j = i + 19 To sCookies.Length
                    If Mid$(sCookies, j, 1) = ";" Or j = sCookies.Length Or Mid$(sCookies, j, 1) = "," Then
                        wli = Mid$(sCookies, i, j - i) & "; "
                        Exit For
                    End If
                Next j
            End If
        Next i
  
        sCookies = wp & wli & wtc
  
  
        Dim wps As String = "" 'wp-settings-time-1
        myHttpWebRequest = HttpWebRequest.Create(myUrl & "/wp-admin/")
        myHttpWebRequest.Method = "GET"
        myHttpWebRequest.Referer = myUrl & "/wp-login.php"
        myHttpWebRequest.UserAgent = "Mozilla/5.0 (Windows NT 6.1; rv:15.0) Gecko/20100101 Firefox/15.0.1"
        myHttpWebRequest.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
        myHttpWebRequest.Headers.Add("Accept-Language", "ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3")
        If Not String.IsNullOrEmpty(sCookies) Then
            myHttpWebRequest.Headers.Add(HttpRequestHeader.Cookie, sCookies)
        End If
        myHttpWebRequest.AllowAutoRedirect = False
        myHttpWebResponse = myHttpWebRequest.GetResponse()
        If Not String.IsNullOrEmpty(myHttpWebResponse.Headers("Set-Cookie")) Then
            wps = myHttpWebResponse.Headers("Set-Cookie")
        End If
        Dim myStreamReader1 As New StreamReader(myHttpWebResponse.GetResponseStream, Encoding.GetEncoding(65001))
  
        For i = 1 To wps.Length
            If Mid$(wps, i, 19) = "wp-settings-time-1=" Then
                For j = i + 19 To wps.Length
                    If Mid$(wps, j, 1) = ";" Or Mid$(wps, j, 1) = ";" Or j = wps.Length Then
                        wps = Mid$(wps, i, j - i)
                        Exit For
                    End If
                Next j
            End If
        Next
  
        sCookies = sCookies & "; " & wps
        myHttpWebRequest = HttpWebRequest.Create(myUrl & "/wp-admin/edit.php")
        myHttpWebRequest.Method = "GET"
        myHttpWebRequest.Referer = myUrl & "/wp-admin.php"
        myHttpWebRequest.UserAgent = "Mozilla/5.0 (Windows NT 6.1; rv:15.0) Gecko/20100101 Firefox/15.0.1"
        myHttpWebRequest.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
        myHttpWebRequest.Headers.Add("Accept-Language", "ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3")
        If Not String.IsNullOrEmpty(sCookies) Then
            myHttpWebRequest.Headers.Add(HttpRequestHeader.Cookie, sCookies)
        End If
        myHttpWebRequest.AllowAutoRedirect = False
        myHttpWebResponse = myHttpWebRequest.GetResponse()
        If Not String.IsNullOrEmpty(myHttpWebResponse.Headers("Set-Cookie")) Then
            wps = myHttpWebResponse.Headers("Set-Cookie")
        End If
        myStreamReader1 = New StreamReader(myHttpWebResponse.GetResponseStream, Encoding.GetEncoding(65001))
  
        Dim txt As String = myHttpWebResponse.StatusCode & vbCrLf
        txt += myHttpWebResponse.Headers.ToString & vbCrLf & vbCrLf & vbCrLf & vbCrLf
        txt += myStreamReader1.ReadToEnd
  
  
        TextBox1.Text += txt
Код не сложный, думаю вы разберетесь, а если нет, то жду ваши вопросы. Последний запрос заходит на авторизованную страницу "записи". Дальше уже я писать ничего не стал. Тут уже ваша фантазия, можно реализовать добавление записей, страниц и т.д через приложение не заходя на сам сайт.

P.S данную статью решил написать после того как на форуме увидел данный вопрос. Решил что данный код будет полезен не только для тех кто хочет реализовать авторизацию на wordpress, но и для авторизации на другие сайты.

Исходник

9.10.2012
Статья

VB.NET
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
44
45
46
47
48
49
50
<%@ Page Language=VB Debug=true %>
<script runat=server>
Sub SubmitBtnWrite_Click(Sender As Object, E As EventArgs)
        Response.Cookies("TestCookie1").Expires = "5/1/2010"
        Response.Cookies("TestCookie1").Value = _
            "The cookie stuff."
        Response.Cookies("TestCookie2").Expires = "5/1/2010"
        Response.Cookies("TestCookie2").Value = _
            "More cookie stuff."
End Sub
Sub SubmitBtnRead_Click(Sender As Object, E As EventArgs)
    Dim I as integer
    For I = 0 to Request.Cookies.Count - 1
        lblMessage1.Text = lblMessage1.Text  _
            & Request.Cookies.Item(I).Name & ": " _
            & Request.Cookies.Item(I).Value & "<BR>"
    Next
End Sub
</SCRIPT>
<HTML>
<HEAD>
<TITLE>Cookies Sample Page</TITLE>
</HEAD>
<BODY >
<form runat="server">
<Font Face="Tahoma">
<asp:Label
    id="lblMessage1"
    runat="Server"
    Font-Bold="True"
/>
<BR><BR>
<asp:button 
    id="butOK1"
    runat="server"
    text="Write Cookies to Browser"
    Type="Submit"
    OnClick="SubmitBtnWrite_Click" 
/>
<asp:button 
    id="butOK2"
    runat="server"
    text="Read Cookies from Browser"
    Type="Submit"
    OnClick="SubmitBtnRead_Click"
/>
</Font>
</Form>
</BODY>
</HTML>
Основы создания Web сайтов на С# в Visual Studio 2005/2008
1
 Аватар для LMM
56 / 56 / 2
Регистрация: 17.02.2011
Сообщений: 234
Записей в блоге: 10
21.05.2013, 18:05  [ТС]
Qgreg, В любом случае спасибо за Ваш труд, бесспорно полезное чтиво и я отправлю его в блог. Но все же мой вопрос остался без ответа. Мне нужно что бы можно было менять таблицу стилей для сайта, скажем список таблиц стилей запихнуть в DropList и дать пользователю выбор, хочет "красный стиль", хочет "синий" и т.д. Как уж сохранить под каким пользователем какой стиль я соображу (правда хз, как записать если пользователь не авторизирован).

З.Ы. К слову, авторизацию на сайте уже сделал через куки + шифрование, все логины и пароли храняться в моей БД.

Язык VB, ASP.net.

Мб я конечно упустил и где-то в коде запрятана таки строка смены стиля?!
0
 Аватар для LMM
56 / 56 / 2
Регистрация: 17.02.2011
Сообщений: 234
Записей в блоге: 10
23.05.2013, 22:30  [ТС]
Неужели никак нельзя менять таблицу стилей на сайте обращаясь через код VB к тегу где храниться строчка пути к таблице стилей?(((
0
 Аватар для LMM
56 / 56 / 2
Регистрация: 17.02.2011
Сообщений: 234
Записей в блоге: 10
26.05.2013, 21:42  [ТС]
UP!

Неужели никак нельзя динамически менять стили и сохранять это состояние сайта?
0
 Аватар для XIST
1962 / 1072 / 148
Регистрация: 01.10.2009
Сообщений: 3,620
Записей в блоге: 1
27.05.2013, 13:09
Цитата Сообщение от LMM Посмотреть сообщение
UP!

Неужели никак нельзя динамически менять стили и сохранять это состояние сайта?
на лету грабли, создаешь несколько main.aspx с отдельным css к ним, на кнопку кидаешь переписывание на стороне сервера откуда-нибудь main.aspx с перегрузкой страницы

второй вариант, делаешь много CSS, в обработчиках кнопок открываешь main.aspx, парсишь, находишь <link rel="stylesheet" href="css/content.css" type="text/css" /> и изменяешь на нужный
1
 Аватар для LMM
56 / 56 / 2
Регистрация: 17.02.2011
Сообщений: 234
Записей в блоге: 10
27.05.2013, 20:16  [ТС]
Цитата Сообщение от DM_AND Посмотреть сообщение
второй вариант, делаешь много CSS, в обработчиках кнопок открываешь main.aspx, парсишь, находишь <link rel="stylesheet" href="css/content.css" type="text/css" /> и изменяешь на нужный
Во-во это то что нужно и можно потом сохранить cookies файл на стороне клиента с долгим сроком жизни (если конечно он не будет их чистить^_^)

Как отпарсить и найти строку со stylesheet? Я коненчо ща погуглю этот вопрос, но мало ли есть уже какое-то хорошее решение на VB, мне бы только немного кода и разъяснений, а там чего наварится))
0
 Аватар для LMM
56 / 56 / 2
Регистрация: 17.02.2011
Сообщений: 234
Записей в блоге: 10
03.06.2013, 23:10  [ТС]
UP!

Как же отыскать тег по id (или еще какому способу) на странице и перезаписать его? Гугл не спасает, пишут только про выражения, что бы массово менять теги на всей странице, что мне совсем не подходит(((
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
03.06.2013, 23:10
Помогаю со студенческими работами здесь

Пользовательские стили для сайта
Подскажите логику мышления - допустим я хочу сделать в админке сайта что бы пользователь мог менять сам фон ($fon). Я соеденяюсь с базой...

Вытянуть все стили объекта из сайта
Всем привет. Мне нужно вытянуть стили объекта (на фото), который находится на этом сайте: http://www.z-stil.ru/ Пробовал через правую...

Бекап сайта opencart на денвере - слетели стили
В общем. Бекап сайта перенесла на локальный диск ( денвер)... Сам сайт от opencart. И полностью слетели стили и в админке, и на самом...

Слетели стили сайта при переносе на хостинг
Здравствуйте! Слетели стили сайта при переносе на хостинг. Не могу понять в чем причина. Пути к css файлам вроде прописаны правильно, но...

Новость с символьным кодом не подгружает стили сайта
Новость с символьным кодом не подгружает стили сайта, отображается только новость. В настройках инфоблока URL страницы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru