PHP.SU

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

Страниц (14): В начало « ... 3 4 5 6 [7] 8 9 10 11 ... » В конец

> Найдено сообщений: 199
Itan Отправлено: 22 Октября, 2011 - 12:34:46 • Тема: Как лучше спроектировать таблицу в MySQL? • Форум: SQL и Архитектура БД

Ответов: 11
Просмотров: 87
А чем это лучше? На скорость сильно влияет?
Itan Отправлено: 22 Октября, 2011 - 10:19:25 • Тема: Как лучше спроектировать таблицу в MySQL? • Форум: SQL и Архитектура БД

Ответов: 11
Просмотров: 87
Здравствуйте! Подскажите, пожалуйста, как лучше спроектировать таблицу.

Суть в чем: в таблице необходимо указать id пользователя и его groupid.

У меня есть 2 варианта:

1. В первой колонке указываем groupid, а во второй перечисляем id юзеров.
CODE (htmlphp):
скопировать код в буфер обмена
  1. ++++++++++++++++++++++
  2. +          +         +
  3. + groupid  +  id     +
  4. +          +         +
  5. ++++++++++++++++++++++
  6. + 1        + 1, 2, 10+
  7. ++++++++++++++++++++++
  8. + 2        + 14, 3, 7+
  9. ++++++++++++++++++++++
  10. + 3        + 8, 4    +
  11. ++++++++++++++++++++++


2. Для каждого юзера создаем одну строку:
CODE (htmlphp):
скопировать код в буфер обмена
  1. ++++++++++++++++++++++
  2. +          +         +
  3. + groupid  +  id     +
  4. +          +         +
  5. ++++++++++++++++++++++
  6. + 1        + 1       +
  7. ++++++++++++++++++++++
  8. + 1        + 7       +
  9. ++++++++++++++++++++++
  10. + 3        + 8       +
  11. ++++++++++++++++++++++
  12. + 2        + 98      +
  13. ++++++++++++++++++++++
  14. + 2        + 15      +
  15. ++++++++++++++++++++++
  16. + 2        + 4       +
  17. ++++++++++++++++++++++


Какой вариант лучше, если будет около 10 groupid и около 2000 id?
В скрипте такая конструкция запроса: "Взять groupid где id=int". Т.е. нужно узнать группу, в которой состоит юзер.
(Добавление)
Мне кажется, что лучше первый вариант, потому что 20000 строк, наверное, будет тратить больше времени на поиск. Может, я ошибаюсь? Посоветуйте.
Itan Отправлено: 20 Октября, 2011 - 11:14:27 • Тема: Аналог get • Форум: Вопросы новичков

Ответов: 12
Просмотров: 394
Ну а как post передать? т.е как сделать ссылки, которые передают post? с get понятно - просто указать href="index.php?page=2" а post как?
Itan Отправлено: 20 Октября, 2011 - 10:45:52 • Тема: Аналог get • Форум: Вопросы новичков

Ответов: 12
Просмотров: 394
Здравствуйте!
Подскажите, пожалуйста, решение проблемы.

На сайте есть постраничная навигация. Т.е. выводится, скажем, 10 записей из базы, под ними список страниц. Нажимаю на вторую, переходит на /index.php?page=2

А можно как-то средствами php сделать без get?
Например, записывать в куки на минуту (но тоже не вариант).
Или записывать в сессию номер страницы, и проверять: если реферал - не предыдущая страница, то показывать первую страницу. Если реферал - предыдущая страница, то показываем страницу, номер которой записан в сессии. (но как-то сложновато все это выглядит).

Может, есть более простой способ? Не хочу, некрасиво выглядит гет в адресной строке.
Itan Отправлено: 19 Октября, 2011 - 19:12:48 • Тема: Ошибка 403 • Форум: Вопросы новичков

Ответов: 16
Просмотров: 621
Ну миме-тип подделать можно. Расширение тоже. Вдруг мне зальют туда php скрипт под видом картинки. В настройках сервера, конечно, нет такого, чтобы картинки выполнять как скрипты, но на всякий случай.
Itan Отправлено: 19 Октября, 2011 - 19:05:11 • Тема: Ошибка 403 • Форум: Вопросы новичков

Ответов: 16
Просмотров: 621
Да не в этом дело Улыбка Не, ну я серьезно спросил. Или 644 ща попробую, если заработает. Мне бы еще как-то прописать в .htaccess, чтобы запретить выполнение скриптов в папке /avatars/. Не знаете как?
Itan Отправлено: 19 Октября, 2011 - 18:55:35 • Тема: Ошибка 403 • Форум: Вопросы новичков

Ответов: 16
Просмотров: 621
Дак на картинку зачем 755. 666 разве мало?
Itan Отправлено: 19 Октября, 2011 - 18:29:56 • Тема: Ошибка 403 • Форум: Вопросы новичков

Ответов: 16
Просмотров: 621
PHP:
скопировать код в буфер обмена
  1. $uploadfile = $_SERVER['DOCUMENT_ROOT'].'avatars/'.$user_id.$image_type;
  2. move_uploaded_file($_FILES['avatar']['tmp_name'], $uploadfile);
  3. chmod($uploadfile,0666);


Работает. Спасибо!
Itan Отправлено: 19 Октября, 2011 - 17:57:22 • Тема: Ошибка 403 • Форум: Вопросы новичков

Ответов: 16
Просмотров: 621
Там такая штука: есть html-форма загрузки файла. Скрипт-обработчик проверяет миме-тип и расширение у файла (картинки). Затем через move_upload_file сохраняет загруженный файл в папку /avatars/. Все ниче, только при попытке открыть его возникает ошибка 403. У папки с аватарами права 0755. А если загружаю через ФАР-менеджер в эту папку, то через браузер открывается норм.

Пробовал поставить строчки отображения ошибок ini_set('display_errors',1); error_reporting(E_ALL);

Никаких ерроров. Странно. Пробую поставить права 0777 - все равно 403... А от саппорта хостинга я такого не ожидал. Вообще подстава. Это хостинг hc.ru.

А как поменять права на загруженные картинки? Скорее всего, в этом проблема.
Itan Отправлено: 19 Октября, 2011 - 17:28:20 • Тема: Ошибка 403 • Форум: Вопросы новичков

Ответов: 16
Просмотров: 621
Здравствуйте!

Помогите, пожалуйста, решить проблему. Хостер отказался помогать Недовольство, огорчение

Есть скрипт в папке /profile/, он загружает картинку-аватар в папку /avatars/. Картинка загружается, перемещается в указанную папку. Но при попытке открыть её в браузере, например, site.ru/avatars/1.jpg - пишет "Ошибка 403 - недостаточно прав". А на папку avatars стоят права 0755. Причем, если я загружаю файл через FTP клиент, то в браузере открывается файл нормально, а если через скрипт (через форму загрузки файлов, которая находится в папке /profile/) - 403 ошибка. Помогите, пожалуйста. Спасибо!
Itan Отправлено: 09 Октября, 2011 - 16:38:25 • Тема: htmlspecialchars и mysql_escape_string • Форум: Вопросы новичков

Ответов: 14
Просмотров: 633
White пишет:
unset($_GET,$_POST,$_REQUEST,$_COOKIE,$_SESSION);


Дак это, если я пропишу такое в обработчике формы, то он удалит все данные, которые ввел юзер в форму??? Или как это юзать?
Itan Отправлено: 09 Октября, 2011 - 16:31:43 • Тема: безопасность $_GET $_POST • Форум: Вопросы новичков

Ответов: 16
Просмотров: 687
КЫР пишет:
с постом достаточно проверять откуда пришел запрос

А если я зайду на страницу с формой и впишу туда JavaScript на переадресацию на мой сайт. А скрипт-обработчик пропустит, если так рассуждать.
Itan Отправлено: 08 Октября, 2011 - 19:01:10 • Тема: htmlspecialchars и mysql_escape_string • Форум: Вопросы новичков

Ответов: 14
Просмотров: 633
Значит,. для защиты одновременно и от инъекции и от тегов поможет htmlspecialchars? Получается, можно не использовать mysql_escape_string?
(Добавление)
snikers987 пишет:
а ты уверен что ты сам вообще что то понимаешь? удаление из строки тегов с помощью htmlspecialchars() o_O


лол... htmlspecialchars -- Преобразует специальные символы в HTML сущности
Itan Отправлено: 08 Октября, 2011 - 18:43:49 • Тема: htmlspecialchars и mysql_escape_string • Форум: Вопросы новичков

Ответов: 14
Просмотров: 633
snikers987 ты если не понимаешь, о чем речь, так не надо засорять тут тему. Почитай для начала описание этих двух функций. И их прописал не только для защиты от инъекций, но и от html-кода, в частности от встраивания js-скриптов. Чтобы они не записывались в бд.
Itan Отправлено: 08 Октября, 2011 - 18:00:42 • Тема: htmlspecialchars и mysql_escape_string • Форум: Вопросы новичков

Ответов: 14
Просмотров: 633
Здравствуйте!

Я хочу в обработчике формы сделать защиту от SQL-инъекций.
И в обработчике пишу так:


Пробую ввести в строку форму такое:
<html> select * from isse_comments where id= 'admin'

На выводе получается так:
&lt;html&gt; select * from isse_comments where id= \\\'admin\\\'

Теперь я поставил просто

Ввожу в строку формы <html> select * from isse_comments where id= 'admin'

И на выходе получается:
&lt;html&gt; select * from isse_comments where id= \'admin\'

Вопрос: почему в первом случае много слешей, и стоит ли использовать функцию mysql_escape_string совместно с htmlspecialchars? И вообще стоит ли её использовать, если она делает столько слешей? (ведь для экранизации в БД нужен хотя бы один?)

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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB