PHP.SU

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

Страниц (81): В начало « ... 52 53 54 55 [56] 57 58 59 60 ... » В конец

> Найдено сообщений: 1209
evgenijj Отправлено: 11 Июня, 2007 - 11:30:58 • Тема: Шаблон формы + База данных в TXT = Страница сайта • Форум: FreeLance

Ответов: 26
Просмотров: 15772
toturvator пишет:
А можно узнать все же как этот скрипт вынести в отдельный файл. Если вдруг захочу поменять то только отредактирую тот файл и все. Улыбка

require или include
evgenijj Отправлено: 11 Июня, 2007 - 11:22:39 • Тема: Шаблон формы + База данных в TXT = Страница сайта • Форум: FreeLance

Ответов: 26
Просмотров: 15772
Цитата:

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

Обычно такого рода информацию хранят именно в CSV формате. А придуманный тобой формат только тебе удобен. Потому что Excel-файл можно сохранить в CSV-формате. Т.е. какой-то человек, далекий от web-технологий готовит материал для чайта в привычном MS Excel (тот же прайс-лист), а тебе, чтобы загрузить этот прайс в базу данных сайта, достаточно сохранит его как CSV и потом прочитать с помощью (специальной для этого написанной) функции fgetcsv().
evgenijj Отправлено: 11 Июня, 2007 - 11:13:38 • Тема: Шаблон формы + База данных в TXT = Страница сайта • Форум: FreeLance

Ответов: 26
Просмотров: 15772
Данные - файл 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.  

evgenijj Отправлено: 10 Июня, 2007 - 20:33:35 • Тема: Шаблон формы + База данных в TXT = Страница сайта • Форум: FreeLance

Ответов: 26
Просмотров: 15772
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() (например, неверно указан путь) или у тебя недостаточно прав для работы с этим файлом и т.п.

В общем, мой тебе совет -- или бросай это дело или подробно описывай, что тебе надо сделать (причем очень подробно - никто из тебя информацию клещами вытягивать не будет) -- может быть кто-нибудь из местных напишет тебе полностью готовый к работе скрипт.
evgenijj Отправлено: 10 Июня, 2007 - 13:14:24 • Тема: Шаблон формы + База данных в TXT = Страница сайта • Форум: FreeLance

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

Чтобы в html-файлах выполнялись директивы PHP надо создать файл .htaccess (с точкой в начале) и добавить в него строку:
AddHandler x-httpd-php .html .htm
evgenijj Отправлено: 10 Июня, 2007 - 09:41:55 • Тема: Что быстрее? • Форум: SQL и Архитектура БД

Ответов: 8
Просмотров: 139
Стас пишет:
Не понял Работает... но до меня не доходит - как?

Цитата:

array mysql_fetch_array ( resource result [, int result_type] )

Каждый новый вызов функции возвращает строку результата запроса к БД в виде массива. Если строк больше нет -- функция возвращает FALSE.

Второй опциональный аргумент result_type в функции mysql_fetch_array() -- константа и может принимать следующие значения: MYSQL_ASSOC, MYSQL_NUM и MYSQL_BOTH. Значением по умолчанию является: MYSQL_BOTH.

Используя MYSQL_BOTH, вы получите массив, состоящий как из ассоциативных индексов, так и из численных. MYSQL_ASSOC вернёт только ассоциативные соответствия (аналогично функции mysql_fetch_assoc() и MYSQL_NUM только численные (аналогично функции mysql_fetch_row()).

Пример использования (цикл while выполняется, пока условие истино; если все записи результата запроса закончились - функция mysql_fetch_array возвращает FALSE и мы выходим из цикла)
PHP:
скопировать код в буфер обмена
  1.  
  2. $query = "SELECT id, name, email FROM `users` ORDER BY name";
  3. $res = mysql_query( $query );
  4. echo "<table border='1'>";
  5. echo "<tr><th>ID</th><th>Имя</th><th>E-mail</th></tr>";
  6. while ( $user = mysql_fetch_array($res) )
  7. {  
  8.   echo "<tr>";
  9.   echo "<td>" . $user["id"] . "</td><td>" . $user["name"] . "</td><td>" . $user["email"] . "</td>";
  10.   echo "</tr>";  
  11. }
  12. echo "</table>";
  13.  

Или так
PHP:
скопировать код в буфер обмена
  1.  
  2. $query = "SELECT id, name, email FROM `users` ORDER BY name";
  3. $res = mysql_query( $query );
  4. echo "<table border='1'>";
  5. echo "<tr><th>ID</th><th>Имя</th><th>E-mail</th></tr>";
  6. while ( $user = mysql_fetch_array($res) )
  7. {  
  8.   echo "<tr>";
  9.   echo "<td>" . $user[0] . "</td><td>" . $user[1] . "</td><td>" . $user[2] . "</td>";
  10.   echo "</tr>";  
  11. }
  12. echo "</table>";
  13.  

evgenijj Отправлено: 10 Июня, 2007 - 00:05:48 • Тема: Что быстрее? • Форум: SQL и Архитектура БД

Ответов: 8
Просмотров: 139
Функция mysql_fetch_array (mysql_fetch_row) работает быстрее mysql_result. В данном случае оба варианта неудачные. Первый - потому что использует mysql_result. Второй - потому что без необходимости использует запрос
$dataquery = mysql_query("SELECT * FROM `table` LIMIT $i,1");
PHP:
скопировать код в буфер обмена
  1.  
  2. $query = mysql_query("SELECT * FROM `table`");
  3. while ( $data = mysql_fetch_array($query) ) {
  4.   echo $data[0]." - ".$data[1];
  5. }
  6.  

Если таблица содержит 10000 записей, то ты 10000 раз делаешь запрос к БД, без всякой необходимости нагружая сервер БД.

Но вообще -- второй вариант не имеет смысла -- в цикле выполняется запрос
SELECT * FROM `mytable` LIMIT $i, 1;
Поскольку запрос не содержит ORDER BY будут возвращаться СЛУЧАЙНЫЕ записи.

И еще -- не слишком удачная идея использовать внутри цикла функцию mysql_num_rows(). Было бы логичнее один раз вычислить количество строк результата, а не вычислять его 10000 раз.

Подводя итог -- ты сделал все, чтобы без всякой необходимости по максимуму нагрузить интерпретатор PHP и сервер БД.
evgenijj Отправлено: 09 Июня, 2007 - 16:18:10 • Тема: Шаблон формы + База данных в TXT = Страница сайта • Форум: FreeLance

Ответов: 26
Просмотров: 15772
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.  
evgenijj Отправлено: 09 Июня, 2007 - 14:00:02 • Тема: Установка RSS-лент на сайт • Форум: HTML, Дизайн & CSS

Ответов: 11
Просмотров: 13378
Mister пишет:
Подскажите, как подключить rss-ленту на сайт и где её можно взять?

PHP:
скопировать код в буфер обмена
  1.  
  2.  <?PHP
  3.  /**********************************************************
  4.   * Parse XML data into an array structure                 *
  5.   * Usage: array parse_rss ( string data )                 *
  6.   **********************************************************/
  7.  function parse_rss($reg_exp, $xml_data) {
  8.      preg_match_all($reg_exp, $xml_data, $temp);
  9.      return array(
  10.          'count'=>count($temp[0]),
  11.          'title'=>$temp[1],
  12.          'link'=>$temp[2],
  13.          'desc'=>$temp[3]
  14.      );
  15.  }
  16.  
  17.  /**********************************************************
  18.   * Parse Array data into an HTML structure                *
  19.   * Usage: string parse_rss ( array data )                 *
  20.   **********************************************************/
  21.  function output_rss($pattern, $rss_data) {
  22.      for($i=0; $i<$rss_data['count']; $i++) {
  23.          $temp .= sprintf($pattern,
  24.              $rss_data['link'][$i],
  25.              $rss_data['title'][$i],
  26.              $rss_data['desc'][$i]
  27.          );
  28.      }
  29.      return $temp;
  30.  }
  31.  
  32.  /**********************************************************
  33.   * Settings                                               *
  34.   **********************************************************/
  35.  $url = 'http://www.secnews.ru/russian/rss.php';
  36.  
  37.  $reg_exp  = '#<item>.*?<title>(.*?)</title>.*?';
  38.  $reg_exp .='<link>(.*?)</link>.*?<description>';
  39.  $reg_exp .='(.*?)</description>.*?</item>#si';
  40.  
  41.  $pattern = '<a href="%s">%s</a>< br>%s<hr>';
  42.  
  43.  /**********************************************************
  44.   * Main script                                            *
  45.   **********************************************************/
  46.  if ( $xml_data = file_get_contents($url) ) {
  47.      $rss_data = parse_rss($reg_exp, $xml_data);
  48.      echo output_rss($pattern, $rss_data);
  49.  }
  50.  /**********************************************************
  51.   * The END                                                *
  52.   **********************************************************/
  53.  ?>
  54.  

Для извлечения информации из RSS-ленты можно также использовать функции DOM XML и Simple XML
* расширение DOM XML для PHP4 http://www.php.su/functions/?cat=domxml
* встроенные функции DOM XML для PHP5 http://www.php.su/functions/?cat=dom
* Simple XML для PHP5 http://www.php.su/functions/?cat=simplexml
evgenijj Отправлено: 09 Июня, 2007 - 07:51:58 • Тема: Как проверить включена ли поддержка MySQL5.0 в пхп 5 • Форум: SQL и Архитектура БД

Ответов: 10
Просмотров: 164
Dadhunter пишет:
Включил строку extension=php_mysql.dll, но поддержка так и не работает

Если PHP подключен как модуль, надо скопировать библиотеку libmysql.dll из каталога с установленным PHP в системный каталог C:/Windows/System32. Я надеюсь, ты не забыл перезапустить Apache?
evgenijj Отправлено: 08 Июня, 2007 - 21:40:56 • Тема: Вовращение ссылки на JavaScript • Форум: JavaScript & VBScript

Ответов: 6
Просмотров: 3554
Я тебе говорил - мало информации. Вот еще вариант - вставляем на страницу картинки
PHP:
скопировать код в буфер обмена
  1.  
  2. <html>
  3. <head>
  4.   <title>TEST</title>
  5.   < script type="text/javascript">
  6.   function addImg(img)
  7.   {
  8.     document.getElementById("myDiv").innerHTML = '<img src="' + img + '" alt="" />';
  9.   }
  10.  </script>
  11. </head>
  12. <body>
  13. <div id="myDiv"></div>
  14. <input id="imgName" type="text" value="" />
  15. <button onClick="addImg(document.getElementById('imgName').value);">addImage</button>
  16. </body>
  17. </body>
  18. </html>
  19.  
evgenijj Отправлено: 08 Июня, 2007 - 19:04:12 • Тема: Вовращение ссылки на JavaScript • Форум: JavaScript & VBScript

Ответов: 6
Просмотров: 3554
Долго будешь ждать ответа. Лично я ничего не понял. Кого позвать, куда пойти...
evgenijj Отправлено: 08 Июня, 2007 - 15:24:39 • Тема: Графика или цвет? • Форум: HTML, Дизайн & CSS

Ответов: 20
Просмотров: 10304
Ничего не понял. Что такое "кодировка цветов"? RGB-значения?
http://mars[dot]kiev[dot]ua/tech/2004/04[dot][dot][dot]web_pali_78[dot]html
Или что-то еще? Если вопрос о том, как грамотно подобрать цветовую гамму оформления сайта - то это точно не ко мне. Дизайнер из меня никудышний. Да и вообще ты форумом ошибся. У нас здесь большей частью все-таки программисты.
evgenijj Отправлено: 08 Июня, 2007 - 14:46:38 • Тема: Гостевая на РНР. Баг или недостаток кода?! • Форум: Программирование на PHP

Ответов: 12
Просмотров: 852
После отправки данных методом POST пользователь может нажать кнопку "Назад" или "Обновить" (при этом ему будет выведено предупреждение "Страница содержит устаревшие данные формы...") и отправить данные формы на сервер еще раз - соответственно запись в гостевой опять-таки будет продублирована. Чтобы этого избежать - перенаправляем пользователя на ту же страницу после того, как добавили запись в гостевую книгу (аналогично тому, как мы делали для метода GET)
fwrite( ... );
Header("Location: http://".$_SERVER["SERVER_NAME"].$_SERVER["SCRIPT_NAME"]);

http://makoviychuk[dot]ru/2007/01/24[dot][dot][dot]olneniya-formyi/
evgenijj Отправлено: 08 Июня, 2007 - 12:50:26 • Тема: Гостевая на РНР. Баг или недостаток кода?! • Форум: Программирование на PHP

Ответов: 12
Просмотров: 852
kozakmamai пишет:
Плиз...хелп...с GET понятно, через него буду пересылать данные оставленные пользователем, а вот авторизацию хочу передавать POSTом, может черкнешь пару слов про возможные проблемы Улыбка

http://webdesign[dot]site3k[dot]net/conj[dot][dot][dot]end/d/forms[dot]html

Блин, есть же еще "энтузиасты" которые сайты на фреймах делают. Сам же по этой ссылке зайти не могу.
http://webdesign[dot]site3k[dot]net/div/[dot][dot][dot]end/d/forms[dot]html

Страниц (81): В начало « ... 52 53 54 55 [56] 57 58 59 60 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB