|
|
|
Блог web-мастера
PHP, MySQL, JavaScript, AJAX, HTML и CSS
|
|
|
В этой заметке мы рассмотрим установку FreeBSD на новую машину (в том смысле, что не содержащую другую операционную систему) с дистрибутивного DVD. Устаноновка и постинсталляционное конфигурирование FreeBSD осуществляются программмой sysinstall. В функции sysinstall входят подготовка дисковых разделов, установка базовых компонентов системы и дополнительных пакетов, управление пользователями, установка языковой поддержки и множество дополнительных настроек.
Программа sysinstall запускается [...]
|
Наверное каждому приходилось сталкиваться с временными ссылками при скачивании фильмов, музыки, программ и т.п. Зачем это делается? Да чтобы другие сайты не размещали ссылки на файлы, которые расположены на нашем сайте. Давайте посмотрим, как написать скрипт, который будет генерить временные ссылки.
В качестве хранения информации о файлах и временных ссылках, будем использовать БД. Таблица files хранит [...]
|
В синтаксисе SQL значение NULL занимает особое место - оно соответствует понятию “ничего”. Значение NULL не равно пустой строке или нулю, и эта особенность часто порождает ошибки. Рассмотрим несколько примеров:
SELECT NULL=FALSE;
SELECT NULL='';
SELECT NULL=0;
SELECT NULL=NULL;
Результатом всех запросов будет NULL. Это может выглядеть странно, но значение NULL не является значением в полном смысле слова: по определению оно [...]
|
Допустим, у нас есть сайт, предоставляющий файлы для скачивания. Но для зарегистрированных пользователей нет никаких ограничений, а для остальных, чтобы не перегружать сервер, хотелось бы ввести некоторые ограничения. Причина для ограничения скорости скачивания может быть и иной: пользователь, оплативший скачивание без ограничений - получает файл на максимальной скорости, а тот, кто пожадничал - будет скачивать [...]
|
Бывает, что файлы данных MySQL разрушаются и требуют восстановления. Проще всего проверить целостность таблицы путем выполнения команды
CHECK TABLE messages;
Это выражение проверит наличие ошибок в таблице messages. Если выходные данные выглядят подобно приведенным ниже, значит, таблица в порядке, и действия по ее восстановлению выполнять не нужно.
В некоторых случаях в столбце Msg_text появляются сообщения об ошибках. В [...]
|
Предположим, вы пытаетесь отправить HTTP-заголовок или cookie с помощью функции header(), session_start() или setcookie(), но PHP выдает сообщение “headers already sent” (”заголовки уже отправлены”). Эта ошибка возникает, если вы отправили содержимое браузеру до вызова функции header(), session_start() или setcookie(). PHP посылает заголовки автоматически, как только скрипт начинает выдавать браузеру информацию. Перепишите свой код так, чтобы [...]
|
Допустим, нам надо получить страницу, которая требует, чтобы с запросом был послан файл cookie. Для этого воспользуемся расширением CURL:
<?php
$c = curl_init('http://www.example.com/needs-cookie.php');
curl_setopt($c, CURLOPT_COOKIE, 'user=evgenijj; activity=yes');
curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
$page = curl_exec($c);
curl_close($c);
?>
Информация из cookie-файлов отправляется на сервер в заголовке Cookie. В рассмотреннном примере с помощью опции CURLOPT_COOKIE мы отправляем на сервер два элемента cookie: один с именем user и [...]
|
Необходимо заметить, что документ сначала создается в буфере и лишь потом, при вызове метода Output(), выводится в браузер. Поэтому общая схема работы с документом следующая: создаем в буфере документ методом Open(), затем добавляем в этот документ страничку методом AddPage(), формируем содержимое документа различными методами типа Cell(), Write(), Image() и, наконец, выводим его из буфера в [...]
|
А теперь попробуем создать PDF-файл, используя класс FPDF. Для начала создадим файл makepdf.php, который будет осуществлять вывод PDF документа прямо в браузер. В одной папке с этим файлом поместим файл класса fpdf.php и папку font с вложенными в нее файлами кириллических шрифтов.
<?php
define('FPDF_FONTPATH', 'font/');
require 'fpdf.php';
// Создадаем экземпляр класса
$pdf = new FPDF();
$pdf->Open();
//Подключаем кириллические шрифты
$pdf-> AddFont('ArialMT','','arial.php');
$pdf-> AddFont('Arial-BoldMT','','arialbd.php');
$pdf-> AddFont('Arial-ItalicMT','','ariali.php');
$pdf-> [...]
|
Класс FPDF является чистым PHP кодом и легко подключается к скриптам командой include() или require(). Скачать класс и ознакомиться с документацией (в том числе на русском языке) можно на сайте www.fpdf.org.
Основная проблема при использовании класса — файлы кириллических шрифтов. Одним из основных форматов шрифтов является TTF (True Type Font). Но для правильной работы FPDF необходим [...]
|
|
|