PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (81): В начало « ... 73 74 75 76 77 78 79 [80] 81 »
Найдено сообщений: 1209
evgenijj
Отправлено: 19 Ноября, 2006 - 00:44:44 • Тема: Редакторы PHP • Форум: Программное обеспечение
Ответов: 421 Просмотров: 257469
Раньше пользовался PHP Expert Editor. Хороший редактор - но только для PHP. Главное - для жителей СНГ бесплатен. Два-три месяца назад поставил себе NotePad++. Подсвечивает синтаксис около 30 языков программирования. И что не менее важно - CSS, SQL, HTML, XML. Легкая настройка подсветки синтаксиса. Описывать все возможности - долго получится. Лучше скачать и попробовать самому. Программа бесплатная.
evgenijj
Отправлено: 13 Ноября, 2006 - 09:37:24 • Тема: PHP & MySQL • Форум: Программирование на PHP
Ответов: 19 Просмотров: 2493
Maksir пишет: Нет.. структуру БД понять не могу...
А это что, не база?! Ладно, вот еще вариант:
PHP:
скопировать код в буфер обмена
Таблица CATEGORIES:
1 ; 0 ; Извещатели охранные; 1
2 ; 0 ; Извещатели пожарные; 2
3 ; 0 ; Приборы приемно- контрольные; 3
6 ; 1 ; Извещатели охранные магнитоконтактные; 1
7 ; 1 ; Извещатели охранные электроконтактные; 2
8 ; 1 ; Извещатели охранные ударноконтактные; 3
9 ; 2 ; Извещатели пожарные тепловые; 1
10 ; 2 ; Извещатели пожарные дымовые; 2
11 ; 2 ; Извещатели пожарные комбинированные; 3
17 ; 3 ; Приборы приемно- контрольные охранные; 1
18 ; 3 ; Приборы приемно- контрольные пожарные; 2
19 ; 3 ; Приборы приемно- контрольные охранно- пожарные; 3
Таблица PRODUCTS:
1 ; 6 ; Извещатель охранный магнитоконтактный ИО 102- 2 ; Технические характеристики ИО 102- 2 ; 1
2 ; 6 ; Извещатель охранный магнитоконтактный ИО 102- 4 ; Технические характеристики ИО 102- 4 ; 2
3 ; 6 ; Извещатель охранный магнитоконтактный ИО 102- 14 ; Технические характеристики ИО 102- 14 ; 3
4 ; 7 ; Извещатель охранный электроконтактный ИО 201- 1 ; Технические характеристики ИО 201- 1 ; 1
5 ; 7 ; Извещатель охранный электроконтактный ВПК 2112 ; Технические характеристики ВПК 2112 ; 2
6 ; 8 ; Извещатель охранный ударноконтактный "Окно-4" ; Технические характеристики "Окно-4" ; 1
7 ; 8 ; Извещатель охранный ударноконтактный "Окно-5" ; Технические характеристики "Окно-5" ; 2
8 ; 8 ; Извещатель охранный ударноконтактный "Окно-6" ; Технические характеристики "Окно-6" ; 3
9 ; 9 ; Извещатель пожарный тепловой ИП 114- 01 ; Технические характеристики ИП 114- 01 ; 1
10 ; 9 ; Извещатель пожарный тепловой ИП 101- 1A; Технические характеристики ИП 101- 1A; 2
11 ; 9 ; Извещатель пожарный тепловой ИП 101- 30 ; Технические характеристики ИП 101- 30 ; 3
12 ; 10 ; Извещатель пожарный дымовой ИП 212- 3СМ; Технические характеристики ИП 212- 3СМ; 1
13 ; 10 ; Извещатель пожарный дымовой ИП 212- 18СИ; Технические характеристики ИП 212- 18СИ; 2
14 ; 11 ; Извещатель пожарный комбинированный ИП 212/ 101- 78- А1 ; Технические характеристики ИП 212/ 101- 78- А1 ; 1
15 ; 11 ; Извещатель пожарный комбинированный ИП 212/ 101- 18 А3R1; Технические характеристики ИП 212/ 101- 18 А3R1; 2
и т. д.
Запрос на выборку корневых категорий:
SELECT id_ctg, title FROM categories WHERE id_parent= 0 ORDER BY sortorder;
Получим записи
id_ctg= 1 title= "Извещатели охранные"
id_ctg= 2 title= "Извещатели пожарные"
id_ctg= 3 title= "Приборы приемно-контрольные"
Запрос на выборку подкатегорий категории id_ctg= 1 title= "Извещатели охранные" :
SELECT id_ctg, title FROM categories WHERE id_parent= 1 ORDER BY sortorder;
Получим записи
id_ctg= 6 title= "Извещатели охранные магнитоконтактные"
id_ctg= 7 title= "Извещатели охранные электроконтактные"
id_ctg= 8 title= "Извещатели охранные ударноконтактные"
Запрос на выборку товарных позиций категории id_ctg= 6 title= "Извещатели охранные магнитоконтактные" :
SELECT id_prd, title FROM products WHERE id_ctg= 6 ORDER BY sortorder;
Получим записи
id_prd= 1 title= "Извещатель охранный магнитоконтактный ИО 102-2"
id_prd= 2 title= "Извещатель охранный магнитоконтактный ИО 102-4"
id_prd= 3 title= "Извещатель охранный магнитоконтактный ИО 102-14"
evgenijj
Отправлено: 12 Ноября, 2006 - 22:02:56 • Тема: PHP & MySQL • Форум: Программирование на PHP
Ответов: 19 Просмотров: 2493
Так понятнее?
1;0;Категория_1;1
2;0;Категория_2;2
3;0;Категория_3;3
4;1;Категория_11;1
5;1;Категория_12;2
6;2;Категория_21;1
7;2;Категория_22;2
1;4;Товар_1;Описание_товара_1;1
2;4;Товар_2;Описание_товара_2;2
3;5;Товар_3;Описание_товара_3;1
4;5;Товар_4;Описание_товара_4;2
5;6;Товар_5;Описание_товара_5;1
6;3;Товар_6;Описание_товара_6;1
7;3;Товар_7;Описание_товара_7;2
Разделитель - ";"
evgenijj
Отправлено: 12 Ноября, 2006 - 21:36:21 • Тема: PHP & MySQL • Форум: Программирование на PHP
Ответов: 19 Просмотров: 2493
Цитата:
Бился сегодня целый день. Хотел поставить условие таким образом, что бы было сравнение с последним id категории. Но, в цикле, естественно - не получается... На выходе от одной переменной получаются сразу все значения. И как это разделить, что бы в цикл передать для условия только последний id (замыкающего) этот id равен категории.
Честно - ничего не понял. Я примерно представляю, что тебе нужно - но у тебя на сайте и так все работает. Я бы сделал примерно так (код в работе не проверял - сам тестируй):
PHP:
скопировать код в буфер обмена
<?PHP
// +----------------+
// |root_category 1 |
// +----------------+
// | +---------------+
// +-----------------|subcategory 11 |
// | +---------------+
// | | +---------+
// | +----------------|product 1|
// | | +---------+
// | | +---------+
// | +----------------|product 2|
// | +---------+
// | +---------------+
// +-----------------|subcategory 12 |
// | +---------------+
// | | +---------+
// | +----------------|product 3|
// | +---------+
// | +---------------+
// +-----------------|subcategory 13 |
// +---------------+
// | +---------+
// +----------------|product 4|
// | +---------+
// | +---------+
// +----------------|product 5|
// +---------+
// Картинки:
// |
// +- continue.gif
// |
//
// |
// | vertical.gif
// |
//
// |
// +- end.gif
// Корневые категории - для верхнего меню
$query = "SELECT id_ctg, title FROM categories WHERE id_parent=0 ORDER BY sortorder" ;
{
$root [ ] = $ctg ;
echo "<a href='" . $_SERVER [ "PHP_SELF" ] . "?id_ctg=" $ctg [ "id_ctg" ] . "'>" . $ctg [ "title" ] . "</a> |" ;
}
if ( ! isset ( $_GET [ "id_ctg" ] ) ) $_GET [ "id_ctg" ] = $root [ 0 ] [ "id_ctg" ] ;
// Получаем подкатегории текущей корневой категории
$query = "SELECT id_ctg, title FROM categories WHERE id_parent=" . $_GET [ "id_ctg" ] . " ORDER BY sortorder" ;
$row_ctg = 1 ;
if ( $cnt_ctg )
{
echo "<table>" ;
{
if ( $cnt_ctg == $row_ctg )
{
echo "<tr><td>end.gif</td>
<td><a href='" . $_SERVER [ "PHP_SELF" ] . "?id_ctg=" $ctg [ "id_ctg" ] . "'>" . $ctg [ "title" ] . "</a></td>
<td></td></tr>" ;
$tmp = 1 ;
}
else
{
echo "<tr><td>continue.gif</td>
<td><a href='" . $_SERVER [ "PHP_SELF" ] . "?id_ctg=" $ctg [ "id_ctg" ] . "'>" . $ctg [ "title" ] . "</a></td>
<td></td></tr>" ;
$tmp = 0 ;
}
$q = "SELECT id_prd, title FROM products WHERE id_ctg=" . $ctg [ "id_ctg" ] . " ORDER BY sortorder" ;
$row_prd = 1 ;
if ( $cnt_prd )
{
{
if ( $cnt_prd == $row_prd )
{
if ( $tmp )
{
echo "<tr><td></td>
<td>end.gif</td>
<td><a href='" . $_SERVER [ "PHP_SELF" ] . "?id_prd=" . $prd [ "id_prd" ] . "'>" . $prd [ "title" ] . "</a>
</td></tr>" ;
}
else
{
echo "<tr><td>vertical.gif</td>
<td>end.gif</td><td><a href='" . $_SERVER [ "PHP_SELF" ] . "?id_prd=" . $prd [ "id_prd" ] . "'>" . $prd [ "title" ] . "</a>
</td></tr>" ;
}
}
else
{
if ( $tmp )
{
echo "<tr><td></td><td>continue.gif</td>
<td><a href='" . $_SERVER [ "PHP_SELF" ] . "?id_prd=" . $prd [ "id_prd" ] . "'>" . $prd [ "title" ] . "</a>
</td></tr>" ;
}
else
{
echo "<tr><td>vertical.gif</td><td>continue.gif</td>
<td><a href='" . $_SERVER [ "PHP_SELF" ] . "?id_prd=" . $prd [ "id_prd" ] . "'>" . $prd [ "title" ] . "</a>
</td></tr>" ;
}
}
$row_prd = $row_prd + 1 ;
}
}
$row_ctg = $row_ctg + 1 ;
}
echo "</table>" ;
}
?>
evgenijj
Отправлено: 12 Ноября, 2006 - 17:44:50 • Тема: PHP & MySQL • Форум: Программирование на PHP
Ответов: 19 Просмотров: 2493
Как мало человеку для счастья нужно . Осталось сделать еще один шаг - признать тот факт, что структура БД не оптимальна. Постараюсь объяснить. Итак, есть каталог продукции некоторой фирмы. Для хранения информации о товарах и категориях используем две таблицы: CATEGORIES и PRODUCTS. Категория может содержать вложенные категории и/или товары. Проводя аналогию с файловой системой, директория может содержать вложенные директории и/или файлы. Некоторые из этих директорий могут лежать в корне логического диска ( напимер, D: ). Но это не делает их какими-то "особенными", чтобы хранить информацию о них в отдельной таблице БД. Каждый элемент таблиц CATEGORIES и PRODUCTS содержит ссылку на родительский элемент - id_parent.
Таблица CATEGORIES:
id_ctg - уникальный идентификатор категории
id_parent - ссылка на родительский элемент
title - название категории
sortorder - порядок сортировки
Таблица PRODUCTS:
id_prd - уникальный идентификатор товарной позиции
id_ctg - ссылка на родительский элемент
title - наименование товарной позиции
description - описание товара
sortorder - порядок сортировки
1;0;Категория 1;1
2;0;Категория 2;2
3;0;Категория 3;3
4;1;Категория 11;1
5;1;Категория 12;2
6;2;Категория 21;1
7;2;Категория 22;2
1;4;Товар 1;Описание товара 1;1
2;4;Товар 2;Описание товара 2;2
3;5;Товар 3;Описание товара 3;1
4;5;Товар 4;Описание товара 4;2
5;6;Товар 5;Описание товара 5;1
6;3;Товар 6;Описание товара 6;1
7;3;Товар 7;Описание товара 7;2
PHP:
скопировать код в буфер обмена
Категория 1
Категория 11
Товар 1
Товар 2
Категория 12
Товар 3
Товар 4
Категория 2
Категория 21
Товар 5
Категория 22
Пустая категория
Категория 3
Товар 6
Товар 7
Чтобы получить из БД корневые категории (в твоей терминологии - каталоги) делаем запрос:
И не надо никакой третьей таблицы - а то она как пятое колесо в телеге: не несет никакой функциональной нагрузки, но создает дополнительные трудности при кодировании.
evgenijj
Отправлено: 10 Ноября, 2006 - 14:25:52 • Тема: PHP & MySQL • Форум: Программирование на PHP
Ответов: 19 Просмотров: 2493
Во-первых, неправильно спроектирована структура БД. Здесь искусственно накладывается ограничение на уровень вложенности. Трехуровневый каталог - три таблицы. А если понадобится создать еще один уровень - создашь еще одну таблицу SUPERCATALOG? А еще один - MEGACATALOG? В твоем примере нет принципиальной разницы между каталогом и категорией. Каталог - это категория, для которой parentID=0 ( или NULL - это уж кому как больше нравится ).
Теперь, что касается картинки. Положим, мы выбираем из БД категории, для которых parentID=5:
PHP:
скопировать код в буфер обмена
<?
$query = "SELECT id_ctg, title FROM categories WHERE parentID=5 ORDER BY sortorder" ;
if ( $cnt )
{
$row = 1 ;
echo "<table>" ;
{
if ( $row == $cnt )
echo "<tr><td><img src='end.gif' alt=''></td><td>" . $ctg [ "title" ] . "</td></tr>" ;
else
echo "<tr><td><img src='continue.gif' alt=''></td><td>" . $ctg [ "title" ] . "</td></tr>" ;
$row = $row + 1 ;
}
echo "</table>" ;
}
else
{
echo "Пустая категория" ;
}
?>
evgenijj
Отправлено: 26 Октября, 2006 - 13:39:20 • Тема: помогите разобраться с категориями • Форум: Программирование на PHP
Ответов: 2 Просмотров: 509
PHP:
скопировать код в буфер обмена
<?
// Получаем дерево категорий
$categories = get_ctgs_tree( 0, 0 ) ;
echo "<h3>Дерево каталога</h3>" ;
foreach ( $categories as $ctg )
{
echo "<div style='margin-left:" . ( $ctg [ 2 ] * 15 ) . "px'>
<img src='/images/admin/point_menu.gif' alt=''>
<a href='" . $_SERVER [ "PHP_SELF" ] . "?id_ctg=" . $ctg [ 0 ] . "'>" . $ctg [ 1 ] . "</a></div>" ;
}
// Функция возвращает дерево категорий в виде массива
function get_ctgs_tree( $parent , $level )
{
$q = db_query( "SELECT id_ctg, title
FROM " . TABLE_CATEGORIES. " WHERE id_parent=" . $parent . " ORDER BY title" )
$ctg = array ( ) ; // категории while ( $row = db_fetch_row( $q ) )
{
// Уровень вложенности категории
$row [ 2] = $level ;
$ctg [ ] = $row ;
// получаем подкатегории для текущей категории
$children = get_ctgs_tree( $row [ 0] , $level + 1) ;
// добавляем детей текущей категории в конец массива $ctg[]
for ( $j = 0 ; $j < count( $children ) ; $j ++ )
{
$ctg [ ] = $children [ $j ] ;
}
}
return $ctg ;
}
?>
evgenijj
Отправлено: 18 Октября, 2006 - 15:19:49 • Тема: Гляньте кому не лень ? • Форум: Прочее
Ответов: 11 Просмотров: 187
Попробуй открыть сайт в браузере FireFox - левое меню на половину экрана. Над версткой придется поработать. И к чему этот нестандартный тег MARQUEE (бегущая строка), да к тому же нерабочий.
evgenijj
Отправлено: 17 Октября, 2006 - 13:25:03 • Тема: Нужно правильно файл сохранить. • Форум: Программирование на PHP
Ответов: 2 Просмотров: 560
Ты установил директорию, в которой нет файла index.html -- это имя хранится в переменной $path. Далее в этой директории ты создаешь новый файл
После зачем-то проверяешь, а вдуг FreeBSD не создала этот файл. Положим, что так -- у тебя нет прав на запись в эту директорию. Ты намеренно вводишь пользователя в заблуждение, извещая его о том, что файл существует:
И далее, назависимо от результатов проверки пишешь в этот вновь созданный файл.
Вызывает также некоторое сомнение условие:
CODE (
text ):
скопировать код в буфер обмена
if(!file_exists($file_1) or !file_exists($file_2))
{
$path = "../_base/".$_GET['ad']."/";
}
else
{
$path = "../_base/".$_GET['ad']."/_data/";
}
Если в директории
лежит файл index.html или файл index.htm то новый файл с именем $nfile будет опять записан в директорию
вполне возможно, перезаписав уже существующий. Новый файл будет записан в директорию
только если в директории
лежат оба файла: и index.htm и index.html.
evgenijj
Отправлено: 17 Октября, 2006 - 11:54:25 • Тема: вставка с проверкой в несколько таблиц • Форум: SQL и Архитектура БД
Ответов: 3 Просмотров: 104
PHP:
скопировать код в буфер обмена
<?PHP
$query = "SELECT id FROM country WHERE country_name='" . $_POST [ "country" ] . "'" ;
{
}
else
{
// Предполагается, что первичный ключ id снабжен механизмом AUTO_INCREMENT
$query = "INSERT INTO country (country_name) VALUES ('" . $_POST [ "country" ] . "')" ;
}
$query = "SELECT id FROM director WHERE director_name='" . $_POST [ "director" ] . "'" ;
{
}
else
{
// Предполагается, что первичный ключ id снабжен механизмом AUTO_INCREMENT
$query = "INSERT INTO director (director_name) VALUES ('" . $_POST [ "director" ] . "')" ;
}
$query = "SELECT id FROM format WHERE format_name='" . $_POST [ "format" ] . "'" ;
{
}
else
{
// Предполагается, что первичный ключ id снабжен механизмом AUTO_INCREMENT
$query = "INSERT INTO format (format_name) VALUES ('" . $_POST [ "format" ] . "')" ;
}
$query = "INSERT INTO movies
(russian,
original,
lenght,
director_id,
country_id,
yearrr,
number,
format_id)
VALUES
('русское название',
'английское',
222,
" . $id_director . ",
" . $id_country . ",
22,
2,
" . $id_format . ")" ;
?>
evgenijj
Отправлено: 09 Октября, 2006 - 10:58:39 • Тема: Поисковая система • Форум: Программирование на PHP
Ответов: 11 Просмотров: 793
Тут пришлось писать систему поиска по каталогу продукции - может кому и пригодится.
PHP:
скопировать код в буфер обмена
<?PHP
require "./cfg/general.inc.php" ;
require "./cfg/connect.inc.php" ;
require "./functions/mysql.php" ;
// Соединяемся с базой данных
db_connect
( DB_HOST
, DB_USER
, DB_PASS
) or
die ( db_error
( ) ) ; db_select_db
( DB_NAME
) or
die ( db_error
( ) ) ;
// Количество записей результатов поиска на странице
define ( "SEARCH_RESULT_ON_PAGE" , 5
) ;
echo get_html_search( ) ;
function get_search_form( )
{
$html = "<form name='search' action='" . $_SERVER [ "PHP_SELF" ] . "' method='GET'>[slash]n" ;
$html = $html . "Поиск:<input value='Введите слово' name='query' onfocus=[slash]" query. value= '' [ slash] " size='20' maxlength='64'/>[slash]n" ;
$html = $html . "<input type='submit' value='Искать'/>[slash]n" ;
$html = $html . "</form>[slash]n" ;
return $html ;
}
function get_html_search( )
{
if ( ! isset ( $_GET [ "query" ] ) or
empty ( $_GET [ "query" ] ) ) {
$html = "<h3>Поиск</h3>[slash]n" . get_search_form( ) ;
}
else
{
// Обрезаем строку до длины, указанной в атрибуте maxlength
$search = substr ( $_GET [ "query" ] , 0
, 64
) ; // Убираем пробелы в начале и конце строки поиска
$search = trim ( $search ) ; // Убираем все "ненормальные" символы
$good = preg_replace ( "/[^\\ w\\ x7F-\\ xFF\\ s]/" , " " , $search ) ; // Сжимаем двойные пробелы
// Получаем корни искомых слов
$stemmer = new Lingua_Stem_Ru( ) ;
foreach ( $tmp as $wrd )
{
// Если слово очень короткое - не используем его в поиске
if ( strlen ( $wrd ) < 3
) continue ; $words [ ] = $stemmer -> stem_word ( $wrd ) ;
}
// Склеиваем массив $words обратно в строку
$search_str = implode ( "* " , $words ) ; $search_str = $search_str . "*" ;
// Составляем запрос к БД, чтобы узнать количество записей в результатах поиска -
// это нужно для построения постраничной навигации
$search_query = "SELECT COUNT(*)
FROM " . PRODUCTS_TABLE. "
WHERE MATCH (name, description) AGAINST ('" . $search_str . "' IN BOOLEAN MODE)>0" ;
$res = db_query( $search_query ) ;
$total = db_result( $res , 0, 0 ) ;
// Проверяем передан ли номер текущей страницы - постраничная навигация
if ( isset ( $_GET [ 'page' ] ) ) $page = $_GET [ 'page' ] ;
else
$page = 1 ;
// Начальная позиция
$start = ( $page - 1) * SEARCH_RESULT_ON_PAGE;
if ( $total > 0 )
{
$html = "<h3>Результаты поиска:</h3>[slash]n" ;
$html = $html . "<p>Вы искали: " . $good . "</p>[slash]n" ;
$search_query = "SELECT productID, name, description,
MATCH (name, description) AGAINST
('" . $search_str . "' IN BOOLEAN MODE) AS relev
FROM " . PRODUCTS_TABLE. "
HAVING relev>0 ORDER BY relev DESC LIMIT " . $start . ", " . SEARCH_RESULT_ON_PAGE;
$res = db_query( $search_query ) ;
// Это для подсвечивания искомых слов
$highlight = implode ( "[^-,[:space:]]*|" , $words ) . "[^-,[:space:]]*" ;
$html = $html . "<table width='100%' c ellspacing='4' cellpadding='2'>[slash]n" ;
$html = $html . "<tr bgcolor='#EEEEEE'><th width='5%'>ID</th><th>Наименование</th><th >Описание</th></tr>[slash]n" ;
while ( $result = db_fetch_array( $res ) )
{
$html = $html . "<tr bgcolor='#F5F5F5' valign='top'>[slash]n" ;
$html = $html . "<td>" . $result [ "productID" ] . "</td>[slash]n" ;
// Подсвечиваем искомые слова
$result [ "name" ] = eregi_replace ( $highlight , "<font color='#cc0000'>[slash][slash]0</font>" , $result [ "name" ] ) ; $html = $html . "<td>" . $result [ "name" ] . "</td>[slash]n" ;
// Подсвечиваем искомые слова
$result [ "description" ] = eregi_replace ( $highlight , "<font color='#cc0000'>[slash][slash]0</font>" , $result [ "description" ] ) ; $html = $html . "<td>" . $result [ "description" ] . "</td>[slash]n" ;
$html = $html . "</tr>[slash]n" ;
}
$html = $html . "</table>[slash]n" ;
// Число страниц с результатами поиска
$cnt_pages = ceil ( $total / SEARCH_RESULT_ON_PAGE
) ;
// Постраничная навигация
if ( $cnt_pages > 1 )
{
$html = $html . "<div style='margin-left:4px'>" ;
for ( $i = 1 ; $i <= $cnt_pages ; $i ++ )
{
if ( $i != $cnt_pages )
{
if ( $page == $i )
{
$html = $html . "[" . ( ( $i - 1 ) * SEARCH_RESULT_ON_PAGE + 1 ) . "-" . $i * SEARCH_RESULT_ON_PAGE. "] " ;
}
else
{
$html = $html . "<a href='" . $_SERVER [ "PHP_SELF" ] . "?page=" . $i . "&query=" . $good . "'>[" . ( ( $i - 1 ) * SEARCH_RESULT_ON_PAGE + 1 ) . "-" . $i * SEARCH_RESULT_ON_PAGE. "]</a> " ;
}
}
else
{
if ( $page == $i )
{
$html = $html . "[" . ( ( $i - 1 ) * SEARCH_RESULT_ON_PAGE + 1 ) . "-" . $total . "] " ;
}
else
{
$html = $html . "<a href='" . $_SERVER [ "PHP_SELF" ] . "?page=" . $i . "&query=" . $good . "'>[" . ( ( $i - 1 ) * SEARCH_RESULT_ON_PAGE + 1 ) . "-" . $total . "]</a> " ;
}
}
}
$html = $html . "</div>[slash]n" ;
}
}
else
{
$html = "<h3>Результаты поиска:</h3>[slash]n<p>Ничего не найдено.</p>[slash]n" ;
}
}
return $html ;
}
?>
А класс для извлечения корней русских слов можно взять на сайте Дмитрия Котерова:
http://forum[dot]dklab[dot]ru/php/advise[dot][dot][dot]RussianWord[dot]html
evgenijj
Отправлено: 06 Октября, 2006 - 11:40:37 • Тема: Запись массива в файл • Форум: Программирование на PHP
Ответов: 11 Просмотров: 12411
ARTY пишет: Можно так. Имееем массив $array:
Вместо
` впиши обратный слэш (в тексте на форуме обрезается).
Если нужно, блокировку файла сделать не забудь
У автора второй элемент массива содержит символ перевода строки
Цитата: Первые две строки записались в 1 строке файла, третья во второй.
Поэтому лучше их удалить, чтобы не было пустой строки:
evgenijj
Отправлено: 04 Октября, 2006 - 08:36:18 • Тема: запрос UPDATE • Форум: SQL и Архитектура БД
Ответов: 7 Просмотров: 176
Цитата:
не... я уже давно разобрался, ошибка была в другом. Дело в том, что почему-то нельзя делать ключевое поле с именем "index". Переименовываю в "id" и всё замечательно работает.
INDEX - ключевое слово, и его в качестве имен полей использовать нельзя. Еще один пример:
MySQL будет выдавать ошибку. В качестве имени поля использовано ключевое слово ORDER.
Страниц (81): В начало « ... 73 74 75 76 77 78 79 [80] 81 »
Powered by ExBB FM 1.0 RC1. InvisionExBB