Форум программистов, компьютерный форум, киберфорум
Node.js
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.78/18: Рейтинг темы: голосов - 18, средняя оценка - 4.78
5 / 5 / 0
Регистрация: 11.09.2021
Сообщений: 578

Запустить проект. Начало

27.07.2022, 19:28. Показов 3935. Ответов 23

Студворк — интернет-сервис помощи студентам
Хочу разобраться с Node.js.
Использую проект.
Состав проекта смотри картинки.

Основная цель: просто посмотреть как это работает.

Какую IDE использовать?
Как его запустить?

Владею начальными навыками C#(ASP.NET(MVC)).

Использую:
- Windows 10x64;

У меня установлено:
- VSCode;
- Visual Studio 2022 Community(Установлено NodeJS);
- Node.js (c:\Program Files\nodejs\node.exe);
- OpenServer;


1_NodeJS_start.bat
Bash
1
node app.js
app.js
JavaScript
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
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
const express = require("express");
const bodyParser = require("body-parser");
const flash = require("connect-flash");
const expressSession = require("express-session");
const MySQLStore = require("express-mysql-session")(expressSession);
const connection = require("./db/connection");
const helpers = require("./helpers");
const config = require("./config.json");
const moment = require("moment");
const passport = require("passport");
const LocalStrategy = require("passport-local").Strategy;
const crypto = require("crypto");
const cookieParser = require("cookie-parser");
 
moment.locale("ru");
 
const app = express();
 
let listener = require("http").Server(app);
 
passport.serializeUser(function (user, done) {
  done(null, user.id);
});
 
passport.deserializeUser(function (id, done) {
  connection.query("select * from users where id = " + id, (err, rows) => {
    done(err, rows[0]);
  });
});
 
passport.use(
  "local-signup",
  new LocalStrategy(
    {
      usernameField: "email",
      passwordField: "password",
      passReqToCallback: true,
    },
    (req, email, password, done) => {
      connection.query(
        "select * from users where email = ?",
        [email],
        (err, rows) => {
          if (err) {
            return done(err);
          }
          if (rows.length) {
            return done(
              null,
              false,
              req.flash("signupMessage", "That email is already taken.")
            );
          } else {
            // create the user
 
            crypto.pbkdf2(
              password,
              email,
              25000,
              512,
              "sha256",
              (err, hash) => {
                let newUserMysql = new Object();
                newUserMysql.email = email;
                newUserMysql.password = hash.toString("hex");
 
                connection.query(
                  "INSERT INTO users (email, password) values (?, ?)",
                  [newUserMysql.email, newUserMysql.password],
                  (err, rows) => {
                    newUserMysql.id = rows.insertId;
                    return done(null, newUserMysql);
                  }
                );
              }
            );
          }
        }
      );
    }
  )
);
 
passport.use(
  "local-login",
  new LocalStrategy(
    {
      usernameField: "email",
      passwordField: "password",
      passReqToCallback: true,
    },
    (req, email, password, done) => {
      connection.query(
        "SELECT * FROM `users` WHERE `email` = ?",
        [email],
        (err, rows) => {
          if (err) {
            return done(err);
          }
          if (!rows.length) {
            return done(
              null,
              false,
              req.flash("loginMessage", "No user found.")
            );
          }
 
          crypto.pbkdf2(password, email, 25000, 512, "sha256", (err, hash) => {
            password = hash.toString("hex");
            if (!(rows[0].password == password)) {
              return done(
                null,
                false,
                req.flash("loginMessage", "Oops! Wrong password.")
              );
            }
          });
 
          return done(null, rows[0]);
        }
      );
    }
  )
);
 
const routes = require("./routes.js")(express.Router(), passport);
 
app
  .use(
    express.static("static", {
      maxage: "4h",
    })
  )
  .use(cookieParser())
  /*.use(i18n.init)*/
  .set("view engine", "ejs")
  .use(bodyParser.json())
  .use(
    bodyParser.urlencoded({
      extended: true,
    })
  )
  .use(
    expressSession({
      secret: config.express.secret,
      store: new MySQLStore({}, connection),
      resave: false,
      saveUninitialized: false,
    })
  )
  .use(passport.initialize())
  .use(flash())
  .use(passport.session())
  .use(async (req, res, next) => {
    res.locals.error = null;
    res.locals.helpers = helpers;
    res.locals.user = null;
    res.locals.moment = moment;
    res.locals.url = req.url;
    next();
  })
  .use(routes)
  .use((req, res, next) => {
    let err = new Error("Здесь ничего нет");
    err.status = 404;
    next(err);
  })
  .use((err, req, res, next) => {
    if (err.status != 404) {
      err.message = "Неизвестная ошибка";
    }
 
    return res.status(err.status || 500).render("error", {
      message: err.message,
      error: req.app.get("env") === "development" ? err : null,
      status: err.status || 500,
    });
  });
 
let server = listener.listen(config.express.port || 3000, () => {
  const host =
    server.address().address == "::" ? "localhost" : server.address().address;
  const port = server.address().port;
  console.log("Start at http://%s:%s", host, port);
});

config.js
JavaScript
1
2
3
4
5
6
7
8
9
var config = {  
  express: {
  secret: 'cfgdgN1D798646fg5dFypV3HsB4g7m9',
  port: 3000,
  domain: 'http://localhost:3000',
  path: 'C:/server',
  }
}
module.exports = config;

config.json
JSON
1
2
3
4
5
6
7
8
9
10
11
12
{
  "mysql": {
    "host": "localhost",
    "user": "root",
    "password": "",
    "db": "polimedia5"
  },
  "express": {
    "secret": "dgdf98dfg7d98tc6dSJEv4986VVF",
    "port": 3000
  }
}


package.json
JSON
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
{
  "name": "Denny",
  "version": "1.0.0",
  "description": "Histuseum",
  "main": "app.js",
  
  "scripts": {
    "start": "NODE_ENV=development nodemon app.js"
  },
  "author": "Artsiom Liavitski Ethereal Dream IMPERIVM",
  "license": "ISC",
  "dependencies": {
    "body-parser": "^1.18.2",
    "connect-flash": "^0.1.1",
    "cookie-parser": "^1.4.3",
    "ejs": "^2.5.9",
    "express": "^4.16.3",
    "express-mysql-session": "^1.3.0",
    "express-session": "^1.15.6",
    "format-number": "^3.0.0",
    "fs-promise": "^2.0.3",
    "i18n": "^0.8.3",
    "moment": "^2.22.1",
    "multer": "^1.3.1",
    "mysql": "^2.15.0",
    "mysql2": "^1.5.3",
    "passport": "^0.4.0",
    "passport-local": "^1.0.0",
    "randomstring": "^1.1.5",
    "slash": "^3.0.0",
    "socket.io": "^2.3.0",
    "striptags": "^3.1.1"
  }
}
routes.js
JavaScript
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
const multer = require('multer');
const rand = require('randomstring');
 
const filesStorage = multer.diskStorage({
  destination: (req, file, next) => {
    next(null, 'static/uploads/files');
  },
  filename: (req, file, next) => {
    const ext = file.originalname.split('.').pop();
    next(null, rand.generate({
      length: 32,
      charset: 'alphabetic'
    }) + '.' + ext);
  }
});
const filesUpload = new multer({
  storage: filesStorage
});
 
 
const site = {
  main: require('./controllers/main')
};
 
const cms = {
  articles: require('./controllers/cms/articles'),
  files: require('./controllers/cms/files'),
  lang: require('./controllers/cms/lang'),
  slideshow: require('./controllers/cms/slideshow')
};
 
module.exports = (app, passport) => {
 
  app
    .get('/', site.main.lang)
    .get('/video', site.main.video)
    .get('/slideshow', site.main.slideshow)
    .get('/:lang', site.main.index)
    .get('/:lang/articles', site.main.index)
    .get('/:lang/articles/:id', site.main.article)
    .get('/:lang/panomuseum', site.main.panomuseum)
    .get('/:lang/panomuseum/2', site.main.panomuseum2)
    .get('/:lang/panotheatre', site.main.panotheatre);
 
  app
 
    .get('/cms/lang', cms.lang.index)
    .post('/cms/lang', filesUpload.any(), cms.lang.save)
 
    .get('/cms/:lang/articles', cms.articles.index)
    .post('/cms/articles/saveOrder', cms.articles.saveOrder)
 
    .get('/cms/:lang/articles/add', cms.articles.add)
    .post('/cms/:lang/articles/add', filesUpload.any(), cms.articles.postAdd)
 
    .get('/cms/:lang/articles/:id/edit', cms.articles.edit)
    .post('/cms/:lang/articles/:id/edit', filesUpload.any(), cms.articles.postEdit)
    .get('/cms/:lang/articles/:id/delete', cms.articles.delete)
 
    .get('/cms/:lang/articles/:id', cms.articles.subArticle)
    .get('/cms/:lang/articles/add/:id', cms.articles.add)
 
    .post('/cms/files/delete', cms.files.delete)
    .post('/cms/files/saveFile', filesUpload.single('file'), cms.files.saveFile)
    .post('/cms/files/saveThumb', filesUpload.single('thumb'), cms.files.saveThumb)
 
    .get('/cms/slideshow', cms.slideshow.index)
    .post('/cms/slideshow/save', filesUpload.any(), cms.slideshow.save);
 
  return app;
};
Миниатюры
Запустить проект. Начало   Запустить проект. Начало   Запустить проект. Начало  

Запустить проект. Начало  
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
27.07.2022, 19:28
Ответы с готовыми решениями:

Не запустить проект с GitHub
Доброго времени суток! Работаю на Windows 10 x64. Мои действия по порядку: 1) нашел web-приложение, решил его немного доработать под...

Запустить проект локально
Ребят, помогите запустить проект локально на компьютере. Нужны пошаговые инструкции, пожалуйста! Очень нужно! Спасибо заранее! ...

Как запустить проект в VS Code?
Всем привет как запустить проект JS что еще ему нехватает для сборки ?

23
Эксперт JS
 Аватар для DrType
6553 / 3624 / 1075
Регистрация: 07.09.2019
Сообщений: 5,877
Записей в блоге: 1
27.07.2022, 19:45
Учитывая что у вас есть VSCode, вы можете открыть новый терминал (опция в верхнем меню), в нём ввести команды npm init, npm i и node app.js. Смотреть, есть ли сообщения об ошибках.
1
5 / 5 / 0
Регистрация: 11.09.2021
Сообщений: 578
27.07.2022, 20:03  [ТС]
Цитата Сообщение от DrType Посмотреть сообщение
Учитывая что у вас есть VSCode, вы можете открыть новый терминал (опция в верхнем меню), в нём ввести команды npm init, npm i и node app.js. Смотреть, есть ли сообщения об ошибках.
Ввёл npm init.
Дальше вопросы задаёт.


PS E:\Test\Pro01> npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.

See `npm help init` for definitive documentation on these fields
and exactly what they do.

Use `npm install <pkg>` afterwards to install a package and
save it as a dependency in the package.json file.

Press ^C at any time to quit.
package name: (denny) npm i
Sorry, name can only contain URL-friendly characters.
package name: (denny)
Миниатюры
Запустить проект. Начало   Запустить проект. Начало  
0
Эксперт JS
 Аватар для DrType
6553 / 3624 / 1075
Регистрация: 07.09.2019
Сообщений: 5,877
Записей в блоге: 1
27.07.2022, 20:14
Так, я пожалуй погорячился — у вас же уже есть файл package.json, значит npm init нет необходимости запускать. Лучше начать сразу с npm install.

Добавлено через 59 секунд
Нажмите Ctr + C и вводите npm install.
1
126 / 94 / 34
Регистрация: 24.06.2022
Сообщений: 253
27.07.2022, 20:22
Цитата Сообщение от dev3214 Посмотреть сообщение
Как его запустить?
dev3214, у вас батник же есть
1_NodeJS_start.bat

Кликните по нему два раза , проект запустится.

Добавлено через 1 минуту
запустится если нода установлена и настроена.
2
5 / 5 / 0
Регистрация: 11.09.2021
Сообщений: 578
27.07.2022, 20:23  [ТС]
Цитата Сообщение от DrType Посмотреть сообщение
Нажмите Ctr + C и вводите npm install.
Выполнил:
- ввёл команду npm install
- результат: никаких реакций;
- создал новый терминал;
- ввёл команду npm install;
- результат:

npm WARN old lockfile
npm WARN old lockfile The package-lock.json file was created with an old version of npm,
npm WARN old lockfile so supplemental metadata must be fetched from the registry.
npm WARN old lockfile
npm WARN old lockfile This is a one-time fix-up, please be patient...
npm WARN old lockfile
npm WARN deprecated multer@1.4.2: Multer 1.x is affected by CVE-2022-24434. This is fixed in v1.4.4-lts.1 which drops support for versions of Node.js before 6. Please upgrade to at least Node.js 6 and versioore 6. Please upgrade to at least Node.js 6 and version 1.4.4-lts.1 of Multer. If you need support for older versions of Node.js, we are open to acceptinse line, whilst maintaining compatibility with Node.jsg patches that would fix the CVE on the main 1.x release line, whilst maintaining compatibility with Node.js 0.10.
npm WARN deprecated mkdirp@0.5.1: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)
to use Promises in 1.x.) ventually provide a polyfill for Intl.MessageFormat, o
npm WARN deprecated messageformat@2.3.0: Package renamed as '@messageformat/core', see messageformat.github.io for more details. 'messageformat@4' will eventually provide a polyfill for Intl.MessageFormat, once it's been defined by Unicode & ECMA.

added 22 packages, removed 47 packages, changed 49 packages, and audited 190 packages in 1m

19 vulnerabilities (5 moderate, 9 high, 5 critical)

To address issues that do not require attention, run:
npm audit fix

To address all issues possible (including breaking changes), run:
npm audit fix --force

Some issues need review, and may require choosing
a different dependency.

Run `npm audit` for details.
PS E:\Test\Pro01>
Миниатюры
Запустить проект. Начало  
0
5 / 5 / 0
Регистрация: 11.09.2021
Сообщений: 578
27.07.2022, 20:25  [ТС]
Цитата Сообщение от js_advent Посмотреть сообщение
dev3214, у вас батник же есть
1_NodeJS_start.bat
Кликните по нему два раза , проект запустится.
Добавлено через 1 минуту
запустится если нода установлена и настроена.
1_NodeJS_start.bat кликнуть в файлом проводнике Виндовс?

Цитата Сообщение от js_advent Посмотреть сообщение
запустится если нода установлена и настроена.
Напомню в вопросе писал: - Node.js (c:\Program Files\nodejs\node.exe);
Скачал с сайта, установил.
Не настраивал.
0
126 / 94 / 34
Регистрация: 24.06.2022
Сообщений: 253
27.07.2022, 20:26
вввввввввввввввв
Цитата Сообщение от dev3214 Посмотреть сообщение
кликнуть в файлом проводнике Виндовс
да
1
5 / 5 / 0
Регистрация: 11.09.2021
Сообщений: 578
27.07.2022, 20:33  [ТС]
Цитата Сообщение от js_advent Посмотреть сообщение
Сообщение от dev3214
кликнуть в файлом проводнике Виндовс
да
Выполнил:
- в файлом проводнике кликнул 1_NodeJS_start.bat
- результат: появилась консоль и быстро пропала
- в браузере перешёл по http://localhost:3000
- результат: Не удается получить доступ к сайту;


Вопрос:
1. Просто выполнить:
- в файлом проводнике кликнул 1_NodeJS_start.bat

или ?
- в файлом проводнике кликнул Node.js (c:\Program Files\nodejs\node.exe);
- в файлом проводнике кликнул 1_NodeJS_start.bat
0
126 / 94 / 34
Регистрация: 24.06.2022
Сообщений: 253
27.07.2022, 20:37
Цитата Сообщение от dev3214 Посмотреть сообщение
в файлом проводнике кликнул 1_NodeJS_start.bat
да , так

Добавлено через 1 минуту
тогда открыть командную строку , перейти в папку

где app.js находиться

Bash
1
cd Folder
и выполнить команду

JavaScript
1
node app.js
и
смотреть ошибки
0
5 / 5 / 0
Регистрация: 11.09.2021
Сообщений: 578
27.07.2022, 20:40  [ТС]
Цитата Сообщение от js_advent Посмотреть сообщение
тогда открыть командную строку , перейти в папку
Чью коммандную строку (винды или Ноды)?

Выполнить:
- в файлом проводнике кликнуть Node.js (c:\Program Files\nodejs\node.exe);
- результат: открылась консоль;
- ввести: cd e:\Test\Pro01\;
- ввести node app.js;

Так?
0
126 / 94 / 34
Регистрация: 24.06.2022
Сообщений: 253
27.07.2022, 20:41
Цитата Сообщение от dev3214 Посмотреть сообщение
в файлом проводнике кликнуть Node.js (c:\Program Files\nodejs\node.exe);
это не нужно

Добавлено через 20 секунд
результат: консоль открылась консоль;
- ввести: cd e:\Test\Pro01\
- ввести node app.js
1
5 / 5 / 0
Регистрация: 11.09.2021
Сообщений: 578
27.07.2022, 20:44  [ТС]
Цитата Сообщение от dev3214 Посмотреть сообщение
Чью коммандную строку (винды или Ноды)?
чтобы получить
Цитата Сообщение от js_advent Посмотреть сообщение
результат: консоль открылась консоль;
а?

В папке c:\ProgramData\Microsoft\Windows\Start Menu\Programs\Node.js\
Uninstall Node.js.lnk
Node.js.lnk
Install Additional Tools for Node.js.lnk
Node.js command prompt.lnk

Эту запускать: Node.js command prompt
0
126 / 94 / 34
Регистрация: 24.06.2022
Сообщений: 253
27.07.2022, 20:46
в консоли перейти в папку где app.js

и выполнить команду

node app.js

Добавлено через 40 секунд
туда где Node.js ходить не надо

Не по теме:


всё, ушел извините

0
5 / 5 / 0
Регистрация: 11.09.2021
Сообщений: 578
27.07.2022, 20:46  [ТС]
Цитата Сообщение от js_advent Посмотреть сообщение
в консоли перейти в папку где app.js
Какую консоль?
Как её запустить?
0
126 / 94 / 34
Регистрация: 24.06.2022
Сообщений: 253
27.07.2022, 20:48
dev3214, cmd Windows
1
Эксперт JS
 Аватар для DrType
6553 / 3624 / 1075
Регистрация: 07.09.2019
Сообщений: 5,877
Записей в блоге: 1
27.07.2022, 20:51
...Другой вариант, менее энергозатратный: ввести node app.js в терминале VSCode )
1
5 / 5 / 0
Регистрация: 11.09.2021
Сообщений: 578
27.07.2022, 20:59  [ТС]
Цитата Сообщение от js_advent Посмотреть сообщение
dev3214, cmd Windows
Выполнил:
- кнопка Пуск -> команда cmd;
- результат: открылась консоль;
- ввести: cd e:\Test\Pro01\
- ввести node app.js
- результат:
e:\Test\Pro01>node app.js
Start at [url]http://localhost:3000[/url]
node:events:491
throw er; // Unhandled 'error' event
^

Error: connect ECONNREFUSED ::1:3306
at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1247:16)
Emitted 'error' event on Connection instance at:
at Connection._notifyError (e:\Test\Pro01\node_modules\mysql2\lib\connection.js:212:12)
at Connection._handleFatalError (e:\Test\Pro01\node_modules\mysql2\lib\connection.js:151:10)
at Connection._handleNetworkError (e:\Test\Pro01\node_modules\mysql2\lib\connection.js:160:10)
at Socket.emit (node:events:513:28)
at emitErrorNT (node:internal/streams/destroy:151:8)
at emitErrorCloseNT (node:internal/streams/destroy:116:3)
at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
errno: -4078,
code: 'ECONNREFUSED',
syscall: 'connect',
address: '::1',
port: 3306,
fatal: true
}

Node.js v18.7.0

e:\Test\Pro01>


Для баловства:
- в браузере перешёл по http://localhost:3000
- результат: Не удается получить доступ к сайту;

На всякий случай уточню, что не делал это:
- в файлом проводнике кликнуть Node.js (c:\Program Files\nodejs\node.exe);
Миниатюры
Запустить проект. Начало  
0
Эксперт JS
 Аватар для DrType
6553 / 3624 / 1075
Регистрация: 07.09.2019
Сообщений: 5,877
Записей в блоге: 1
27.07.2022, 21:05
Это, скорее всего, потому, что возникла проблема с подключением к базе MySQL. Для начала надо убедиться, что у вас на ПК запущена служба MySQL.
1
5 / 5 / 0
Регистрация: 11.09.2021
Сообщений: 578
27.07.2022, 21:19  [ТС]
Цитата Сообщение от DrType Посмотреть сообщение
Это, скорее всего, потому, что возникла проблема с подключением к базе MySQL. Для начала надо убедиться, что у вас на ПК запущена служба MySQL.
Папка проекта содержит:
- файл polimedia5.sql содержит код SQL код
- wampserver3.2.6_x64.exe (625Мб).


Я установил "wampserver3.2.6_x64".

Планирую:
- на MySql сервера wampserver установить БД из файла polimedia5.sql;
- повторить инструкции из предыдущих постов;

Вопросы:
1. Я на правильном пути?
2. На ваш взгляд в папке проекта файл wampserver3.2.6_x64 чисто для того чтобы использовать MySql или wampserver3.2.6_x64 как-то используется Node.js?
3. На ваш взгляд, если я буду использовать OpenServer, это создаст проблемы или это не принципиально?


polimedia5.sql
SQL
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
-- phpMyAdmin SQL Dump
-- version 4.8.5
-- https://www.phpmyadmin.net/
--
-- Хост: 127.0.0.1:3306
-- Время создания: Янв 22 2022 г., 16:37
-- Версия сервера: 5.7.26
-- Версия PHP: 7.2.18
 
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET AUTOCOMMIT = 0;
START TRANSACTION;
SET time_zone = "+00:00";
 
 
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;
 
--
-- База данных: `polimedia5`
--
 
-- --------------------------------------------------------
 
--
-- Структура таблицы `articles`
--
 
DROP TABLE IF EXISTS `articles`;
CREATE TABLE IF NOT EXISTS `articles` (
  `id` INT(11) NOT NULL AUTO_INCREMENT,
  `title` VARCHAR(255) NOT NULL,
  `content` text,
  `background` text,
  `owner` INT(11) DEFAULT NULL,
  `pos` INT(11) DEFAULT '0',
  `lang` INT(11) DEFAULT '0',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=275 DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;
 
 
 
--
-- Структура таблицы `langs`
--
 
DROP TABLE IF EXISTS `langs`;
CREATE TABLE IF NOT EXISTS `langs` (
  `id` INT(11) NOT NULL AUTO_INCREMENT,
  `title` VARCHAR(255) DEFAULT NULL,
  `cover` VARCHAR(255) DEFAULT NULL,
  `galleryStr` VARCHAR(255) DEFAULT NULL,
  `backStr` VARCHAR(255) DEFAULT NULL,
  `value` INT(11) DEFAULT '0',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
 
-- --------------------------------------------------------
 
--
-- Структура таблицы `sessions`
--
 
DROP TABLE IF EXISTS `sessions`;
CREATE TABLE IF NOT EXISTS `sessions` (
  `session_id` VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
  `expires` INT(11) UNSIGNED NOT NULL,
  `data` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin,
  PRIMARY KEY (`session_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
 
-- --------------------------------------------------------
 
--
-- Структура таблицы `settings`
--
 
DROP TABLE IF EXISTS `settings`;
CREATE TABLE IF NOT EXISTS `settings` (
  `id` VARCHAR(45) NOT NULL,
  `value` INT(11) DEFAULT '0',
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
 
--
-- Дамп данных таблицы `settings`
--
 
INSERT INTO `settings` (`id`, `value`) VALUES
('timer', 5),
('caption', 0);
 
-- --------------------------------------------------------
 
--
-- Структура таблицы `users`
--
 
DROP TABLE IF EXISTS `users`;
CREATE TABLE IF NOT EXISTS `users` (
  `id` INT(11) NOT NULL AUTO_INCREMENT,
  `email` VARCHAR(255) NOT NULL,
  `password` text NOT NULL,
  PRIMARY KEY (`id`,`email`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;
COMMIT;
 
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
Изображения
 
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
27.07.2022, 21:19
Помогаю со студенческими работами здесь

Как запустить проект?
Скачала я тестовый проект с github. Открыла этот проект в WebStorm, сделала npm install для package.json. прописываю в терменале npm...

Как запустить чужой проект?
Добрый день ... хотел скачать и запустить чужой проект, чтобы рассмотреть его функции... но столкнулся с рядом проблем ... что он не...

Почему не удаётся запустить проект?
Помогите мне пожалуйста. Пытаюсь запустить проект, разобраться с реактом. Читаю в файле package.json &quot;build&quot;:...

Как запустить проект .wasm
Всем добрый день! :) Возможно, я ошиблась разделом, ибо новичок в вэбе, прошу простить и перенаправить куда нужно. :) Такой...

Запустить проект
Подскажите пожалуйста как мне открыть .NET проект (фолдер и запустить в браузере). Скачал вижуал студио, когда я выбираю открыть проект, не...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&amp;d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru