PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (3): « 1 2 [3]
Найдено сообщений: 39
lowmax
Отправлено: 05 Августа, 2012 - 19:38:11 • Тема: Шаблонизатор, что что шустрее • Форум: Объектно-ориентированное программирование
Ответов: 11 Просмотров: 3052
Есть два вида шалона
Шаблон 1 файл index.htm
Шаблон 1 (Отобразить ) CODE (
html ):
скопировать код в буфер обмена
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns= "http://www.w3.org/1999/xhtml" >
<head >
<meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" / >
<?php
$theme-> printout('
<meta name = "keywords" content = "[keywords]" / >
<meta name = "description" content = "[description]" / >
<title > [full_title]</ title >
<link rel = "stylesheet" type = "text/css" href = "[full_url][url]/css/main.css" / >
<script type = "text/javascript" src = "[full_url]/scripts/scriptjava.js" ></ script >
<script type = "text/javascript" src = "[full_url][url]/js/main.js" ></ script >
');
?>
</ head >
<body >
<div id = "main" >
<div id = "top" >
<!-- оформление -->
<div id = "search" >
<!-- поиск -->
<?php
$theme-> printout('
<form action = "[full_url]/" method = "get" enctype = "application/x-www-form-urlencoded" >
<input class = "searchtxt" name = "q" type = "text" value = "" / ><input type = "submit" value = "Поиск" / >
</ form >
');
?>
</ div >
<!-- заголовок -->
<div id = "title" >
<?php
$theme-> printout('
<h1 ><a href = "[full_url]/" > [title]</ a ></ h1 >
<h2 > [description]</ h2 >
');
?>
</ div >
</ div >
<div id = "topline" >
<!-- верхняя линия -->
</ div >
<div id = "sorting" >
<!-- сортировка -->
<ul >
<?php
$theme-> sorturl('
<li[ style_id] ><a href = "[id]" title = "Сортировать по порядку" > По порядку</ a ></ li >
<li[ style_rating] ><a href = "[rating]" title = "Сортировать по рейтингу" > По рейтингу</ a ></ li >
<li[ style_datetime] ><a href = "[datetime]" title = "Сортировать по дате" > По дате</ a ></ li >
<li[ style_views] ><a href = "[views]" title = "Сортировать по просмотрам" > По просмотрам</ a ></ li >
<li[ style_countcomment] ><a href = "[countcomment]" title = "Сортировать по комментариям" > По комментариям</ a ></ li >
','style="background:#cccccc;"');
?>
</ ul ><br style = "clear:both;" / >
</ div >
<div id = "content" >
<div id = "categories" >
<!-- категории -->
<h2 > Категории</ h2 >
<?php
$theme-> categories('
<div class = "categorins" ><a href = "[category_url]" title = "Просмотреть все записи в рубрике [category]" > [category]</ a > [insert]</ div >
');
?>
</ div >
<!-- контент -->
<?php
$theme-> poster('
<div class = "postblock" >
<h3 ><a href = "[post_url]" rel = "bookmark" > [title]</ a ></ h3 >
<div class = "postinfo" > [datetime] Категория: <a href = "[category_url]" title = "Просмотреть все записи в рубрике [category]" rel = "category tag" > [category]</ a ></ div >
<div class = "postrating" ><div class = "ratingup" onclick = "rating_up(\'[full_url]/\',[id]);" ></ div ><span id = "rating_[id]" > [rating]</ span ><div class = "ratingdown" onclick = "rating_down(\'[full_url]/\',[id]);" ></ div ></ div >
<div class = "post" >
[text]
</ div >
<div class = "postlinks" >
<div class = "postviews" > Просмотров: [views]</ div ><div class = "postcomments" ><a href = "[post_url]" > Комментариев: [count_comment]</ a ></ div ><br style = "clear:both;" / >
<div class = "posttags" ><a href = "[tags_url]" > [tags]</ a ></ div ><div class = "postmark" > мне нравится</ div >
</ div >
</ div >
');
?>
</ div >
<div id = "navigation" >
<!-- навигация -->
<div >
<?php
$theme-> navigation('
<a href = "[previous_url]" > Назад -[previous_link]-</ a > <span > [current_link]</ span > <a href = "[page_url]" > [other_link]</ a > <a href = "[next_url]" > Вперед -[next_link]-</ a >
');
?>
</ div >
</ div >
<div id = "bottom" >
<!-- низ -->
<?php
$theme-> printout('
<div > Все права защищены © 2012 <a href = "[seoengi]" > [title]</ a > время генерации [loadtimer]</ div >
');
?>
</ div >
</ div >
</ body >
</ html >
Аналогичный шаблон но в другом представлении
Шаблон 2 файл index.htm
Шаблон 2 (Отобразить ) CODE (
html ):
скопировать код в буфер обмена
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns= "http://www.w3.org/1999/xhtml" >
<head >
<meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" / >
<!--[printout]-->
<meta name = "keywords" content = "[keywords]" / >
<meta name = "description" content = "[description]" / >
<title > [full_title]</ title >
<link rel = "stylesheet" type = "text/css" href = "[full_url][url]/css/main.css" / >
<script type = "text/javascript" src = "[full_url]/scripts/scriptjava.js" ></ script >
<script type = "text/javascript" src = "[full_url][url]/js/main.js" ></ script >
<!--[/printout]-->
</ head >
<body >
<div id = "main" >
<div id = "top" >
<!-- оформление -->
<div id = "search" >
<!-- поиск -->
<!--[printout]-->
<form action = "[full_url]/" method = "get" enctype = "application/x-www-form-urlencoded" >
<input class = "searchtxt" name = "q" type = "text" value = "" / ><input type = "submit" value = "Поиск" / >
</ form >
<!--[/printout]-->
</ div >
<!-- заголовок -->
<div id = "title" >
<!--[printout]-->
<h1 ><a href = "[full_url]/" > [title]</ a ></ h1 >
<h2 > [description]</ h2 >
<!--[/printout]-->
</ div >
</ div >
<div id = "topline" >
<!-- верхняя линия -->
</ div >
<div id = "sorting" >
<!-- сортировка -->
<ul >
<!--[sorturl='style="background:#cccccc;"']-->
<li[ style_id] ><a href = "[id]" title = "Сортировать по порядку" > По порядку</ a ></ li >
<li[ style_rating] ><a href = "[rating]" title = "Сортировать по рейтингу" > По рейтингу</ a ></ li >
<li[ style_datetime] ><a href = "[datetime]" title = "Сортировать по дате" > По дате</ a ></ li >
<li[ style_views] ><a href = "[views]" title = "Сортировать по просмотрам" > По просмотрам</ a ></ li >
<li[ style_countcomment] ><a href = "[countcomment]" title = "Сортировать по комментариям" > По комментариям</ a ></ li >
<!--[/sortur]-->
</ ul ><br style = "clear:both;" / >
</ div >
<div id = "content" >
<div id = "categories" >
<!-- категории -->
<h2 > Категории</ h2 >
<!--[categories]-->
<div class = "categorins" ><a href = "[category_url]" title = "Просмотреть все записи в рубрике [category]" > [category]</ a > [insert]</ div >
<!--[/categories]-->
</ div >
<!-- контент -->
<!--[poster]-->
<div class = "postblock" >
<h3 ><a href = "[post_url]" rel = "bookmark" > [title]</ a ></ h3 >
<div class = "postinfo" > [datetime] Категория: <a href = "[category_url]" title = "Просмотреть все записи в рубрике [category]" rel = "category tag" > [category]</ a ></ div >
<div class = "postrating" ><div class = "ratingup" onclick = "rating_up(\'[full_url]/\',[id]);" ></ div ><span id = "rating_[id]" > [rating]</ span ><div class = "ratingdown" onclick = "rating_down(\'[full_url]/\',[id]);" ></ div ></ div >
<div class = "post" >
[text]
</ div >
<div class = "postlinks" >
<div class = "postviews" > Просмотров: [views]</ div ><div class = "postcomments" ><a href = "[post_url]" > Комментариев: [count_comment]</ a ></ div ><br style = "clear:both;" / >
<div class = "posttags" ><a href = "[tags_url]" > [tags]</ a ></ div ><div class = "postmark" > мне нравится</ div >
</ div >
</ div >
<!--[/poster]-->
</ div >
<div id = "navigation" >
<!-- навигация -->
<div >
<!--[navigation]-->
<a href = "[previous_url]" > Назад -[previous_link]-</ a > <span > [current_link]</ span > <a href = "[page_url]" > [other_link]</ a > <a href = "[next_url]" > Вперед -[next_link]-</ a >
<!--[/navigation]-->
</ div >
</ div >
<div id = "bottom" >
<!-- низ -->
<!--[printout]-->
<div > Все права защищены © 2012 <a href = "[seoengi]" > [title]</ a > время генерации [loadtimer]</ div >
<!--[/printout]-->
</ div >
</ div >
</ body >
</ html >
Соответственно для первого шаблона вполне логично использовать include
А вот для второго шаблона прийдется отказаться от простово инклюдинга и использовать fopen + парсер
Много ли я потеряю в скорости если буду использовать fopen + парсинг и нет ли других вариантов кроме fopen?
Что посоветуете?
lowmax
Отправлено: 05 Августа, 2012 - 19:08:52 • Тема: ООП КОНСТРУКЦИИ и ПРИЕМЫ программирования на PHP • Форум: Объектно-ориентированное программирование
Ответов: 5 Просмотров: 1976
Кто освоился в ООП, скидывайте наглядные примеры интересных конструкций
(совершенно не важно откуда вы ее взяли, главное пихайте сюда самое интересное)
первая конструкция:
PHP:
скопировать код в буфер обмена
class pre {
private static $ins ;
private function __conctruct( ) { } //сделали конструктор приватным, запретив тем самым создавать экземпляр обьекта
static function getins( ) {
self :: $ins = new pre( ) ; //создаем экземпляр обьекта
}
return self :: $ins ;
}
function setname( $k , $n ) {
$this -> name [ $k ] = $v ;
}
function getname( $k ) {
return $this -> name [ $k ] ;
}
}
$name_dump = pre:: getins ( ) ;
$name_dump -> setname ( 'name' , 'Васек' ) ;
unset ( $name_dump ) ; //удаляем ссылку
$name_dump_x = pre:: getins ( ) ;
echo $name_dump_x -> getname ( 'name' ) ; //выведет Васек
lowmax
Отправлено: 19 Июля, 2012 - 01:27:53 • Тема: mail() Для чего отправлять заголовок с письмом MIME-Version: 1.0 • Форум: Работа с сетью
Ответов: 2 Просмотров: 2199
Нужно ли отправлять заголовок MIME-Version: 1.0 ?
и зачем он нужен?
как грамотней?
нужно просто отправлять html письмо без всяких там прикрепленных файлов
PHP:
скопировать код в буфер обмена
/* получатели */
$to = "Mary <mary@example.com>" . ", " ; //обратите внимание на запятую
$to .= "Kelly <kelly@example.com>" ;
/* тема/subject */
$subject = "Birthday Reminders for August" ;
/* сообщение */
$message = '
<html>
<head>
<title>Birthday Reminders for August</title>
</head>
<body>
<p>Here are the birthdays upcoming in August!</p>
<table>
<tr>
<th>Person</th><th>Day</th><th>Month</th><th>Year</th>
</tr>
<tr>
<td>Joe</td><td>3rd</td><td>August</td><td>1970</td>
</tr>
<tr>
<td>Sally</td><td>17th</td><td>August</td><td>1973</td>
</tr>
</table>
</body>
</html>
' ;
/* Для отправки HTML-почты вы можете установить шапку Content-type. */
$headers = "MIME-Version: 1.0\r \n " ;
$headers .= "Content-type: text/html; charset=iso-8859-1\r \n " ;
/* дополнительные шапки */
$headers .= "From: Birthday Reminder <birthday@example.com>\r \n " ;
$headers .= "Cc: birthdayarchive@example.com\r \n " ;
$headers .= "Bcc: birthdaycheck@example.com\r \n " ;
/* и теперь отправим из */
mail ( $to , $subject , $message , $headers ) ;
lowmax
Отправлено: 13 Апреля, 2012 - 01:59:50 • Тема: Помогите составить ПРАВИЛЬНЫЙ класс MySQL • Форум: Объектно-ориентированное программирование
Ответов: 14 Просмотров: 3160
Спрашивал
Что собираюсь писать типа проект
Что лучше использовать mysqli или по старинке?
На современных хостингах поддерживается mysqli или нет? у меня на хостинге стоит php 5.0
ну и т.д.
В итоге никто ничего путного не ответил
потому как тролли
Делаю бесплатный проект (может со временем сделаю примочки платными) для всех желающих типа вордпресса (на самом деле идея не подходит для сравнения), но таким образом чтобы любой html сайт можно было оживить
т.е. любой школьник знающий html мог взять движок и парой простых добавлений в html превратить свой html сайт в полноценный блог (для начала блог)
Идея интересна тем что просто не придется тратить время на написание php кода.
И главное сайт будет оптимизирован (seo) под поисковики.
Но так как с ооп работаю впервые в php (раньше писал все функциями ну и стандартные обьекты юзал) приходится задавать вопросы и учу ооп исходя из трудностей с которыми сталкиваюсь и которые сам себе придумываю
кстати mysqli я смотрел, действительно очень простая вещь, вот только не понял - почему про нее не говорят на сайтах по php и книгах?
Ну а если вы затронули вопрос Postgres то вот встречный вопрос
У меня все базы огромные, таблички более 1000 000 строк (а то и несколько), естественно я не всегда доволен работой MySQL
Postgres будет быстрее работать?
Или то что вы предлагаете очередные понты для школьников у которых база максимум 1000 строк?
Цитата: Ну дак напишите свой язык, зачем вы пользуетесь чужим php? Драйвер mysql устарел и не безопасен, на замену пришёл mysqli, а у него уже есть обьектный интерфейс.
вы думаете я не смогу написать и ваш вопрос заставит меня задуматься?)
это все не актуально с 90-х
сейчас время делать редакторы - шлеп-шлеп и сайт готов без программирования
Страниц (3): « 1 2 [3]
Powered by ExBB FM 1.0 RC1. InvisionExBB