Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Шаблон формы + База данных в TXT = Страница сайта

 PHP.SU

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


 Страниц (2): [1] 2 »   

> Без описания
toturvator
Отправлено: 09 Июня, 2007 - 15:42:57
Post Id


Гость


Покинул форум
Сообщений всего: 87
Дата рег-ции: Июнь 2007  


Помог: 0 раз(а)




Уважаемые!
Есть шаблон формы - таблица с разделами.
Есть текстовый файл определенной структуры - строки

Как вывести на страницу шаблон формы с переносом в шаблон информации из текстового файла?

P.S. В PHP я ноль. Можно готовый пример? Если нужно понять визуально что хочу, то загляните в любой (почти) из разделов моего сайта и вы увидите блоки - формы, которые я хочу автоматизировать. СПАСИБО!


-----
заработок на своем сайте
данные из 1С на ваш сайт
 
 Top
evgenijj
Отправлено: 09 Июня, 2007 - 16:18:10
Post Id



Участник


Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006  
Откуда: Москва


Помог: 10 раз(а)




http://php.su/functions/?str-replace
Шаблон template.html
PHP:
скопировать код в буфер обмена
  1.  
  2. <table>
  3. <tr>
  4.   <td>{field1}</td>
  5.   <td>{field2}</td>
  6. </tr>
  7. </table>
  8.  

Данные data.txt
PHP:
скопировать код в буфер обмена
  1.  
  2. Слон|большой, белый
  3.  

PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. $tpl = file_get_contents( "template.html" );
  4. $data = file_get_contents( "data.txt" );
  5. list ($field1, $field1) = explode("|", $data);
  6. $html = str_replace("{field1}", $field1, $tpl);
  7. $html = str_replace("{field2}", $field2, $tpl);
  8. echo $html;
  9. ?>
  10.  
 
 Top
toturvator
Отправлено: 09 Июня, 2007 - 16:29:47
Post Id


Гость


Покинул форум
Сообщений всего: 87
Дата рег-ции: Июнь 2007  


Помог: 0 раз(а)




Спасибо! Постараюсь переварить и попробовать. Улыбка


-----
заработок на своем сайте
данные из 1С на ваш сайт
 
 Top
toturvator
Отправлено: 10 Июня, 2007 - 12:36:07
Post Id


Гость


Покинул форум
Сообщений всего: 87
Дата рег-ции: Июнь 2007  


Помог: 0 раз(а)




Не получается Недовольство, огорчение

Вот здесь проверка http://navigator[dot]iplot[dot]ru/proverka[dot]html


-----
заработок на своем сайте
данные из 1С на ваш сайт
 
 Top
Стас
Отправлено: 10 Июня, 2007 - 13:11:58
Post Id


Частый гость


Покинул форум
Сообщений всего: 147
Дата рег-ции: Май 2007  


Помог: 0 раз(а)

[+]


Код не интерпретирован вообще!!
 
 Top
evgenijj
Отправлено: 10 Июня, 2007 - 13:14:24
Post Id



Участник


Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006  
Откуда: Москва


Помог: 10 раз(а)




toturvator пишет:
Не получается Недовольство, огорчение
Вот здесь проверка http://navigator.iplot.ru/proverka.html

Чтобы в html-файлах выполнялись директивы PHP надо создать файл .htaccess (с точкой в начале) и добавить в него строку:
AddHandler x-httpd-php .html .htm
 
 Top
kamikadze
Отправлено: 10 Июня, 2007 - 14:55:02
Post Id



Склонен к самоубийству


Покинул форум
Сообщений всего: 391
Дата рег-ции: Янв. 2007  


Помог: 0 раз(а)




Дак ведь оне просто ХТМЛ код сделал и всё!
 
 Top
toturvator
Отправлено: 10 Июня, 2007 - 19:40:57
Post Id


Гость


Покинул форум
Сообщений всего: 87
Дата рег-ции: Июнь 2007  


Помог: 0 раз(а)




[quote=kamikadze][/quote]

простите не понял вашего замечания Улыбка\n\n(Добавление)
Стас пишет:
Код не интерпретирован вообще!!


Простите и вас не понял Улыбка\n\n(Добавление)
Переименовал в http://navigator[dot]iplot[dot]ru/proverka.php

Выдается сообщение об ошибке

Warning: fgets(): supplied argument is not a valid stream resource in /home/navigator/www/proverka.php on line 13

Шо делать? Ниндзя


-----
заработок на своем сайте
данные из 1С на ваш сайт
 
 Top
evgenijj
Отправлено: 10 Июня, 2007 - 20:33:35
Post Id



Участник


Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006  
Откуда: Москва


Помог: 10 раз(а)




toturvator пишет:

Переименовал в http://navigator[dot]iplot[dot]ru/proverka.php

Выдается сообщение об ошибке

Warning: fgets(): supplied argument is not a valid stream resource in /home/navigator/www/proverka.php on line 13

Шо делать? Ниндзя

Warning: fgets(): supplied argument is not a valid stream resource
Переданный аргумент не является корректным указателем на открытый файл

Это значит, что функции fopen() не удалось открыть файл на чтение/запись. Причины могут быть самые разные - не найден файл, указанный в параметрах функции fopen() (например, неверно указан путь) или у тебя недостаточно прав для работы с этим файлом и т.п.

В общем, мой тебе совет -- или бросай это дело или подробно описывай, что тебе надо сделать (причем очень подробно - никто из тебя информацию клещами вытягивать не будет) -- может быть кто-нибудь из местных напишет тебе полностью готовый к работе скрипт.
 
 Top
-SCHATTEN-
Отправлено: 10 Июня, 2007 - 21:59:35
Post Id



Пользователь


Покинул форум
Сообщений всего: 615
Дата рег-ции: Июль 2006  
Откуда: Оттуда !


Помог: 0 раз(а)




Ещё есть вариант, начать учить РНР. Может там и разберешься...
Скорее всего ты неправильно прописал путь к файлу.
 
 Top
toturvator
Отправлено: 11 Июня, 2007 - 09:07:09
Post Id


Гость


Покинул форум
Сообщений всего: 87
Дата рег-ции: Июнь 2007  


Помог: 0 раз(а)




Если вы зайдете на страничку http://navigator[dot]iplot[dot]ru/work-06.php то увидите блоки таблиц с описанием "спонсоров" - не суть важно. Каждый блок состоит из частей: Заголовок, Описание, Рейтинг, Регистрация, FAQ.

Я хочу автоматизировать пополнение, редактирование этих данных.

Т.е. имеется шаблон блока - таблица с поименными переменными в соответствующих частях таблицы. Имеется текстовый файл с разделителями - сложнее не нужно.

Примерная структура:

### - метка новой таблицы
Наименование - строка с гиперссылкой
Описание - строка
Рейтинг - число
Регистрация - строка с гиперссылкой
FAQ - строка с гиперссылкой
### - метка новой таблицы
...

Читается этот файл. Выводится первая табличка, в переменные таблички заносятся данные, все это отображается на экране; выводится следующая табличка, в переменные таблицы заносятся данные ... и т.д.

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


-----
заработок на своем сайте
данные из 1С на ваш сайт
 
 Top
kamikadze
Отправлено: 11 Июня, 2007 - 11:05:32
Post Id



Склонен к самоубийству


Покинул форум
Сообщений всего: 391
Дата рег-ции: Янв. 2007  


Помог: 0 раз(а)




Просто Скажи что нужно и что есть!
З.Ы. Для каджой таблици можно использовать отдельный файл, а так у меня есть более менее набросочек
PHP:
скопировать код в буфер обмена
  1.  
  2. $file = file ("news.txt");
  3. $size = sizeof($file);
  4.  
  5. for ($i=0;$i<$size;$i++){
  6.  
  7. list($заголовок,$новость)= split ('[|]', trim($file[$i]) )
  8.  
  9. echo "<div id=zagol>$заголовок</div>" ;
  10. echo "<div id=novost>$новость</div>" ;
  11.  
  12. }
  13.  


Это набросок дающий возможность сделать то что вы хотите!
 
 Top
evgenijj
Отправлено: 11 Июня, 2007 - 11:13:38
Post Id



Участник


Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006  
Откуда: Москва


Помог: 10 раз(а)




Данные - файл data.csv
PHP:
скопировать код в буфер обмена
  1.  
  2. <a href="http://somewhere1.com/index.php">No-Minimum</a>|Страна происхождения: США<br/>Платежные системы: E-Gold, Moneybookers, PayPal<br/>Условия регистрации: Бесплатно|5|<a href="http://somewhere1.com/reg.php">Регистрация</a>|<a href="http://somewhere1.com/faq.php">FAQ</a>
  3. <a href="http://somewhere2.com/">RusPaidMails</a>|Страна происхождения: Россия<br/>Платежные системы: WebMoney, E-Gold<br/>Условия регистрации: Бесплатно|4|<a href="http://somewhere2.com/reg.php">Регистрация</a>|<a href="http://somewhere2.com/faq.php">FAQ</a>
  4.  

Шаблон - файл template.html
PHP:
скопировать код в буфер обмена
  1.  
  2. <tr>
  3.   <td colspan="3">{title}</td>
  4. </tr>
  5. <tr>
  6.   <td colspan="3">{description}</td>
  7. </tr>
  8. <tr>
  9.   <td>{rating}</td>
  10.   <td>{registration}</td>
  11.   <td>{faq}</td>
  12. </tr>
  13.  

PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. $template = file_get_contents("template.html");
  4. $f = fopen( "data.csv", "r" ) or die( "Ошибка!" );
  5. echo "<table border='1'>\\n";
  6. $html = "";
  7. for ( $i = 0; $data = fgetcsv( $f, 2048, "|" ); $i++ )
  8. {
  9.         $num = count( $data );
  10.         if ( $num == 1 and $data[0] === "" ) continue;
  11.         $row = $template;
  12.         $row = str_replace("{title}", $data[0], $row);
  13.         $row = str_replace("{description}", $data[1], $row);
  14.         $row = str_replace("{rating}", $data[2], $row);
  15.         $row = str_replace("{registration}", $data[3], $row);
  16.         $row = str_replace("{faq}", $data[4], $row);
  17.         $html = $html . $row;
  18. }
  19. fclose( $f );
  20. echo $html;
  21. echo "</table>\\n";
  22. ?>
  23.  

 
 Top
toturvator
Отправлено: 11 Июня, 2007 - 11:18:30
Post Id


Гость


Покинул форум
Сообщений всего: 87
Дата рег-ции: Июнь 2007  


Помог: 0 раз(а)




У меня немного по другому и сложнее сама структура информации. :) Как мне кажется.
А сейчас можно вопрос по теме?
Как вынести скрипт в отдельный файл? Что бы вызывать его (в том файле) со своих страниц, а не редактировать его в каждой?

P.S. хм погодите я не успеваю :)

Я сделал вот так:

<?php
$fp = fopen('work-04.dat','r');


while (!feof($fp))

{

// Метка-разделитель
$str=fgets($fp);

// Заголовок
$str=fgets($fp);
echo '<table width="520" border="0" cellspacing="0" cellpadding="0" class="blok"><tr><th colspan="3">',$str,'</th></tr>';

// Описание
$str1=fgets($fp);
$str2=fgets($fp);
$str3=fgets($fp);
$str4=fgets($fp);
$str5=fgets($fp);
$str6=fgets($fp);
$str7=fgets($fp);
echo '<tr><td colspan="3">',$str1,'<BR>',$str2,'<BR>',$str3,'<BR>',$str4,'<BR>',$str5,'<BR>',$str6,'<BR>',$str7,'</td></tr>';

// Рейтинг
$str=fgets($fp);

echo '<tr><th width="170"><div align="center">';

for ($x=1; $x++<$str+1;) echo '&#149;';

echo '</div></th>';

// Регистрация
$str=fgets($fp);
echo '<th width="180"><div align="center">',$str,'</div></th>';

// FAQ
$str=fgets($fp);
echo '<th width="170"><div align="center">',$str,'</div></th></tr></table>';

}
fclose($fp);
?>


-----
заработок на своем сайте
данные из 1С на ваш сайт
 
 Top
evgenijj
Отправлено: 11 Июня, 2007 - 11:22:39
Post Id



Участник


Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006  
Откуда: Москва


Помог: 10 раз(а)




Цитата:

У меня немного по другому и сложнее сама структура информации. Как мне кажется.

Обычно такого рода информацию хранят именно в CSV формате. А придуманный тобой формат только тебе удобен. Потому что Excel-файл можно сохранить в CSV-формате. Т.е. какой-то человек, далекий от web-технологий готовит материал для чайта в привычном MS Excel (тот же прайс-лист), а тебе, чтобы загрузить этот прайс в базу данных сайта, достаточно сохранит его как CSV и потом прочитать с помощью (специальной для этого написанной) функции fgetcsv().
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« FreeLance »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB