Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как сделать каталог на страницу?
 
 автор: _LG_   (30.12.2004 в 19:56)   письмо автору
26.5 Кб
 
 

Помогите пожалуйста сделать каталог на страницу. И подскажите как лучше это сделать?
Я хотел бы чтобы данные грузились из базы, и отображались на странице.
Прикрепляю прайс по которому хочу сделать вывод данных на страницу.

   
 
 автор: elenaki   (30.12.2004 в 22:04)   письмо автору
 
   для: _LG_   (30.12.2004 в 19:56)
 

# MySQL-Front Dump 2.2
#
# Host: localhost   Database: ela
#--------------------------------------------------------
# Server version 3.23.36


#
# Table structure for table 'cat_categor'
#

CREATE TABLE 'cat_categor' (
  'id' int(6) unsigned NOT NULL auto_increment,
  'cat_name' varchar(100) NOT NULL default '',
  PRIMARY KEY  ('id')
) TYPE=MyISAM;



#
# Dumping data for table 'cat_categor'
#
INSERT INTO cat_categor VALUES("1","PORTOTECNICA");
INSERT INTO cat_categor VALUES("2","KRANZLE");
INSERT INTO cat_categor VALUES("3","KARCHER");


#
# Table structure for table 'catalog'
#

CREATE TABLE 'catalog' (
  'id' int(6) unsigned NOT NULL auto_increment,
  'articul' varchar(12) NOT NULL default '',
  'name' varchar(75) NOT NULL default '',
  'cat_id' int(6) unsigned NOT NULL default '0',
  'press' varchar(10) NOT NULL default '',
  'power' int(4) NOT NULL default '0',
  'watt' varchar(20) NOT NULL default '',
  'water' varchar(20) NOT NULL default '',
  'temper' varchar(20) NOT NULL default '',
  'weight' int(4) unsigned NOT NULL default '0',
  'gabar' varchar(20) NOT NULL default '',
  'price' decimal(6,2) NOT NULL default '0.00',
  PRIMARY KEY  ('id')
) TYPE=MyISAM;



#
# Dumping data for table 'catalog'
#
INSERT INTO catalog VALUES("1","IDAF 82518","H 101(???.)","1","100","230","1,5","6","40","9","15?7?11","100.00");
INSERT INTO catalog VALUES("2","IDAF 49675","ONE-AF 1005M (???.)","1","","230","1,3","6","40","9","15?7?12","100.00");
INSERT INTO catalog VALUES("3","IDAF 49676","ONE-AF 1505M Plus (???.)","1","120","230","1,8","6","40","11","37x19x29","117.00");


это таблицы. извините за вопросительные знаки. у меня база русский не понимает. поэтому оставила только несколько строк...

<? include "config.inc";
$thisfile "catalog.php";

print 
"<table align=center width=100% cellspacing=2 cellpadding=2 border=0><tr>
    <td align=left width=40%  title=\"Select category\"><b>Select category<br><select onchange=\"top.location.href = this.options[this.selectedIndex].value;\">"
;
         
$query3 "SELECT * FROM cat_categor ORDER BY cat_name";
          
$result3 mysql_query($query3) or die (mysql_error()); 
         
$number3 mysql_num_rows($result3);
         
$j 0;
         WHILE (
$j $number3)
         { 
         
$name mysql_result($result3,$j,"cat_name");
         
$id mysql_result($result3,$j,"id");
         echo 
"<option VALUE=\"$thisfile?cat_id=$id&cat_name=$name\"";
         if (
$name == $cat_name) echo "Selected ";
         echo 
" >$name</option>";
         
$j++;
         }
PRINT 
"     </select></b></td></tr></table>";

if (!isSet(
$cat_id)) exit;
else {
$cond " where cat_id = '$cat_id' ";
$urlcond "&cat_id=$cat_id&cat_name=$cat_name";}

$lines_page_us 10//kol-vo strok na str
$query "SELECT * FROM catalog $cond";
$result mysql_query($query);
$all_lines_us mysql_num_rows($result);

//echo $query; exit;
//proveryaem ustanovlen li nomer str
 
if (!isset($page_us) or empty($page_us) or $page_us<=0$page_us=1;
 else 
$page_us=(int)$page_us
 
$page_us_query $page_us-1
//s kakoy pozicii schitivat' zapisi
 
$lpos_us $page_us_query $lines_page_us;
//zapros
 
$query "SELECT * FROM catalog $cond LIMIT $lpos_us,$lines_page_us";
 
 
//echo $query; exit;
 
$result = @mysql_query($query) or die("$query <b>failed!</b><br>".mysql_error());
//vivod shapki 
PRINT  "<table align=center width=100% height=100% cellspacing=2 cellpadding=2 border=0>
         <tr><td align=left><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"2\">"
;

//vivod linkov v vide 1 | 2 | 3"
$count_pages_us ceil($all_lines_us $lines_page_us);
echo 
"<table><tr><td colspan=7 align=left class=small2>";
if (
$count_pages_us>1) {
echo 
"<font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"2\">&#211;&#229;&#235;&#223;&#228;&#229;&#242;: ";
 for (
$i=1$i<=$count_pages_us$i++) {
   if(
$page_us==$i and $i!=1) {echo " | $i";}  
   elseif (
$page_us==$i and $i==1) {echo "1</font>";}
   elseif(
$i==and $page_us!=$i) {echo "<a href=\"$PHP_SELF?page_us=$i$urlcond\" class=small2>$i</a>";}
   elseif(
$i!=and $page_us!=$i) {echo " | <a href=\"$PHP_SELF?page_us=$i$urlcond\" class=small2>$i</a>";}
 }
}
echo 
"</td></tr></table>";
WHILE (
$row MYSQL_FETCH_ROW($result))
$number mysql_numrows($result);
?>

<h2>Category: <? echo $cat_name;?>.</h2>

<table cellpadding=3 border=0 width=100%><TR bgcolor=#000066> 
         <td align=center style="color: ffffff;"><b>N</b></td>
         <td align=center style="color: ffffff;"><b>Articul</b></td>
         <td align=center style="color: ffffff;"><b>Name</b></td>
         <td align=center style="color: ffffff;"><b>press</b></td>
         <td align=center style="color: ffffff;"><b>power</b></td>
         <td align=center style="color: ffffff;"><b>watt</b>&nbsp;</td>
         <td align=center style="color: ffffff;"><b>water</b></td>
         <td align=center style="color: ffffff;"><b>temper</b></td>
         <td align=center style="color: ffffff;"><b>weight</b></td>
         <td align=center style="color: ffffff;"><b>gabar</b>&nbsp;</td>
         <td align=center style="color: ffffff;"><b>price</b></td>
         </tr>

<? $i 0;
WHILE (
$i $number):
$j $i + ($page_us -1)*$lines_page_us;
$id mysql_result($result,$i,"id");
$articul mysql_result($result,$i,"articul");
$name mysql_result($result,$i,"name");
$press mysql_result($result,$i,"press");
$power mysql_result($result,$i,"power");
$watt mysql_result($result,$i,"watt");
$water mysql_result($result,$i,"water");
$temper mysql_result($result,$i,"temper");
$weight mysql_result($result,$i,"weight");
$gabar mysql_result($result,$i,"gabar");
$price mysql_result($result,$i,"price");
            
    if (
$i%== 0) {?>
<tr bgcolor="#dff5ff">
  <td  align=left><? echo $j;?></td>
  <td  align=center><? echo $articul;?></td>
  <td align=left><? echo $name;?></td>
  <td align=center><? echo $press;?></td>
  <td align=center><? echo $power;?></td>
  <td align=center><? echo $watt;?></td>
  <td align=center><? echo $water;?></td>
  <td align=center><? echo $temper;?></td>
  <td align=center><? echo $weight;?></td>
  <td align=center><? echo $gabar;?></td>
  <td align=right><?  printf("%.2f",$price);?></td>
  
      <?  } else { ?>
  <tr bgcolor=#ffffff>
  <td  align=left><? echo $j;?></td>
  <td  align=center><? echo $articul;?></td>
  <td align=left><? echo $name;?></td>
  <td align=center><? echo $press;?></td>
  <td align=center><? echo $power;?></td>
  <td align=center><? echo $watt;?></td>
  <td align=center><? echo $water;?></td>
  <td align=center><? echo $temper;?></td>
  <td align=center><? echo $weight;?></td>
  <td align=center><? echo $gabar;?></td>
  <td align=right><?  printf("%.2f",$price);?></td>
<?    }
$i++;
ENDWHILE;
print 
"</td></tr></table>";


?>


это скрипт. вроде, работает. на сервер закачивать лень. если что непонятно - спрашивайте.

   
 
 автор: _LG_   (31.12.2004 в 00:28)   письмо автору
 
   для: elenaki   (30.12.2004 в 22:04)
 

To elenaki:
Спасибо солнышко за ответ.

   
 
 автор: _LG_   (31.12.2004 в 01:27)   письмо автору
 
   для: elenaki   (30.12.2004 в 22:04)
 

Проверил скрипт, он ошибки содержит, прадва где я догнать не могу. Я все таблицы создал и скрипт при запуске ругался на первую запись инклуд, короче вот код получившийся


<?php include "config.inc";
$thisfile "catalog.php";
$dbhost "localhost";
$dbname "prise";
$dbuser "root";
$dbpassword "666";
$dbcnx = @mysql_connect($dbhost,$dbuser,$dbpasswd);

echo     
"<table align=center width=100% cellspacing=2 cellpadding=2 border=0><tr>
         <td align=left width=40%  title=\"Select category\"><b>Select category<br><select onchange=\"top.location.href = this.options[this.selectedIndex].value;\">"
;
         
$query3 "SELECT * FROM cat_categor ORDER BY cat_name";
         
$result3 mysql_query($query3) or die (mysql_error());
         
$number3 mysql_num_rows($result3);
         
$j 0;
         WHILE (
$j $number3)
 {
         
$name mysql_result($result3,$j,"cat_name");
         
$id mysql_result($result3,$j,"id");
         echo 
"<option VALUE=\"$thisfile?cat_id=$id&cat_name=$name\"";
         if (
$name == $cat_name) echo "Selected ";
         echo 
" >$name</option>";
         
$j++;
 }
echo     
"</select></b></td></tr></table>";

    if (!isSet(
$cat_id)) exit;
        else
        {
         
$cond " where cat_id = '$cat_id' ";
         
$urlcond "&cat_id=$cat_id&cat_name=$cat_name";
        }

$lines_page_us 10//kol-vo strok na str
$query "SELECT * FROM catalog $cond";
$result mysql_query($query);
$all_lines_us mysql_num_rows($result);

//echo $query; exit;
//proveryaem ustanovlen li nomer str
    
if (!isset($page_us) or empty($page_us) or $page_us<=0$page_us=1;
        else 
$page_us=(int)$page_us;
$page_us_query $page_us-1;
//s kakoy pozicii schitivat' zapisi
$lpos_us $page_us_query $lines_page_us;
//zapros
$query "SELECT * FROM catalog $cond LIMIT $lpos_us,$lines_page_us";

//echo $query; exit;
$result = @mysql_query($query) or die("$query <b>failed!</b><br>".mysql_error());
//vivod shapki
PRINT  "<table align=center width=100% height=100% cellspacing=2 cellpadding=2 border=0>
         <tr><td align=left><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"2\">"
;

//vivod linkov v vide 1 | 2 | 3"
$count_pages_us ceil($all_lines_us $lines_page_us);
echo 
"<table><tr><td colspan=7 align=left class=small2>";
     if (
$count_pages_us>1)
      {
        echo 
"<font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"2\">&#211;&#229;&#235;&#223;&#228;&#229;&#242;: ";
        for (
$i=1$i<=$count_pages_us$i++)
       {
         if(
$page_us==$i and $i!=1) {echo " | $i";
       }
        elseif (
$page_us==$i and $i==1) {echo "1</font>";
      }
     elseif(
$i==and $page_us!=$i) {echo "<a href=\"$PHP_SELF?page_us=$i$urlcond\" class=small2>$i</a>";}
     elseif(
$i!=and $page_us!=$i) {echo " | <a href=\"$PHP_SELF?page_us=$i$urlcond\" class=small2>$i</a>";}
      }
      }
echo 
"</td></tr></table>";
WHILE (
$row MYSQL_FETCH_ROW($result))
$number mysql_numrows($result);
?> Category:
<? echo $cat_name;?>
.
<table cellpadding=3 border=0 width=100%><TR bgcolor=#000066>
         <td align=center style="color: ffffff;"><b>N</b></td>
         <td align=center style="color: ffffff;"><b>Articul</b></td>
         <td align=center style="color: ffffff;"><b>Name</b></td>
         <td align=center style="color: ffffff;"><b>press</b></td>
         <td align=center style="color: ffffff;"><b>power</b></td>
         <td align=center style="color: ffffff;"><b>watt</b>&nbsp;</td>
         <td align=center style="color: ffffff;"><b>water</b></td>
         <td align=center style="color: ffffff;"><b>temper</b></td>
         <td align=center style="color: ffffff;"><b>weight</b></td>
         <td align=center style="color: ffffff;"><b>gabar</b>&nbsp;</td>
         <td align=center style="color: ffffff;"><b>price</b></td>
         </tr></table>

<? $i 0;
WHILE (
$i $number):
$j $i + ($page_us -1)*$lines_page_us;
$id mysql_result($result,$i,"id");
$articul mysql_result($result,$i,"articul");
$name mysql_result($result,$i,"name");
$press mysql_result($result,$i,"press");
$power mysql_result($result,$i,"power");
$watt mysql_result($result,$i,"watt");
$water mysql_result($result,$i,"water");
$temper mysql_result($result,$i,"temper");
$weight mysql_result($result,$i,"weight");
$gabar mysql_result($result,$i,"gabar");
$price mysql_result($result,$i,"price");

    if (
$i%== 0) {?>
<tr bgcolor="#dff5ff">
  <td  align=left><? echo $j;?></td>
  <td  align=center><? echo $articul;?></td>
  <td align=left><? echo $name;?></td>
  <td align=center><? echo $press;?></td>
  <td align=center><? echo $power;?></td>
  <td align=center><? echo $watt;?></td>
  <td align=center><? echo $water;?></td>
  <td align=center><? echo $temper;?></td>
  <td align=center><? echo $weight;?></td>
  <td align=center><? echo $gabar;?></td>
  <td align=right><?  printf("%.2f",$price);?></td>

      <?  } else { ?>
  <tr bgcolor=#ffffff>
  <td  align=left><? echo $j;?></td>
  <td  align=center><? echo $articul;?></td>
  <td align=left><? echo $name;?></td>
  <td align=center><? echo $press;?></td>
  <td align=center><? echo $power;?></td>
  <td align=center><? echo $watt;?></td>
  <td align=center><? echo $water;?></td>
  <td align=center><? echo $temper;?></td>
  <td align=center><? echo $weight;?></td>
  <td align=center><? echo $gabar;?></td>
  <td align=right><?  printf("%.2f",$price);?></td>
<?    }
$i++;
ENDWHILE;
print 
"</td></tr></table>";
?>

   
 
 автор: elenaki   (31.12.2004 в 10:37)   письмо автору
 
   для: _LG_   (31.12.2004 в 01:27)
 

я забыла приложить файл конфигурации - там, где происходит подключение и выбор базы... :(

   
 
 автор: _LG_   (31.12.2004 в 16:50)   письмо автору
 
   для: elenaki   (31.12.2004 в 10:37)
 

А как мне этот файл получить? :))))
С новым годом тебя Леночка!!!

   
 
 автор: elenaki   (31.12.2004 в 21:00)   письмо автору
 
   для: _LG_   (31.12.2004 в 16:50)
 

да он уже у тебя есть! :)

$dbhost = "localhost"; 
$dbname = "prise"; 
$dbuser = "root"; 
$dbpassword = "666"; 
$dbcnx = @mysql_connect($dbhost,$dbuser,$dbpasswd); 


просто я по привычке вынесла эти данные в отдельный файл (когда пишешь многофайловые приложения, легче делать инклуд одного файла, чем каждый раз заново писать эти строки и при изменении данных легче - изменил только config и все работает как раньше)

всех с Новым годом! здесь им и не пахнет :( дождь с утра проливной...

   
 
 автор: _LG_   (31.12.2004 в 21:12)   письмо автору
 
   для: elenaki   (31.12.2004 в 21:00)
 

Да а что со скриптом делать то? Помимо инклуд там ещё косяки где-то

   
 
 автор: elenaki   (01.01.2005 в 16:38)   письмо автору
 
   для: _LG_   (31.12.2004 в 21:12)
 

пример работы скрипта

   
 
 автор: _LG_   (02.01.2005 в 02:38)   письмо автору
 
   для: elenaki   (01.01.2005 в 16:38)
 

Лена, у меня всё же каталог заработал на локале. УРА!!! Я сидел от нефиг делать правил пхп код, чтобы он красиво выглядел, а вот где-то через часа два решил всё же добить его, запускаю а он работает!!! Ништяк просто всё. Спасибо что потратила время и помогла мне!!!

   
 
 автор: oppo   (17.02.2005 в 22:46)   письмо автору
 
   для: _LG_   (02.01.2005 в 02:38)
 

Привет,первым делом зашел на сайт к elenaki ,по привычке ,чтоб что нить свиснуть. :)
Свиснул пока steps.swf - сайтик полезный, есть примеры.
Скрипт ,КОТ. тут ,посмотрю ибо мне тоже нужен каталог товара (не магазин) -связался с cms Limbo (мл. брат Mambo ) там пока с добавочными модулями проблема.
Надо что прикрутить.Если можно буду писать сюда-как бы по теме.
p/s Очень приятно ,что дама и так "шарит" в php.
Вопрос к LG_ -как ты загоняешь xls в базу?Или вручную пишешь.

   
 
 автор: cheops   (17.02.2005 в 23:10)   письмо автору
 
   для: oppo   (17.02.2005 в 22:46)
 

Обычно xls сохраняют в cvs-формат - он текстовый и имеет простую структуру - из него уже перегоняют данные в базу данных.

http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=19

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования