PHP.SU

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

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

> Найдено сообщений: 58
Andrey Отправлено: 11 Июля, 2007 - 22:28:43 • Тема: Реализация каталога товара • Форум: Программирование на PHP

Ответов: 10
Просмотров: 1553
Нет, это всё понятно. Непонятно вот что:
Допустим, из твоего примера каталог товара сначала выглядит так:

Извещатели охранные
Извещатели пожарные
Приборы приемно-контрольные

Каким образом сделать, чтобы при нажатии на "Извещатели охранные"
каталог выглядел так:

Извещатели охранные
--- Извещатели охранные магнитоконтактные
--- Извещатели охранные электроконтактные
--- Извещатели охранные ударноконтактные
Извещатели пожарные
Приборы приемно-контрольные

То есть как я понимаю,

class.eshop.php

PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. class EshopDB {
  4.         private $conn;
  5.                      
  6.    function __construct() {
  7.         include('config.inc.php');     
  8.      $this->conn=new mysqli($DB_HOST,$DB_LOGIN, $DB_PASSW, $DB_DATABASE);
  9.      $this->conn->query ("set character_set_client='cp1251'");
  10.      $this->conn->query ("set character_set_results='cp1251'");
  11.      $this->conn->query ("set collation_connection='cp1251_general_ci'");
  12.                     }
  13.                                                                  
  14.     function get_categories() {
  15.  
  16.     $sql="SELECT id_ctg, title FROM categories WHERE id_parent=0 ORDER BY sortorder";
  17.     $res=$this->conn->query($sql);
  18.     if (!$res)
  19.        return false;
  20.        $num_cats=$res->num_rows;
  21.        if ($num_cats==0)
  22.        return false;
  23.        $res=$this->db_result_to_array($res);
  24.        return $res;
  25.         }
  26.                                
  27.      function db_result_to_array($res) {
  28.                
  29.       $res_array=array();
  30.       for ($count=0; $row= $res->fetch_assoc(); $count++)
  31.       $res_array[$count] = $row;
  32.        return $res_array;
  33.         }
  34.  
  35.       function do_html_URL($url, $name){
  36.    ?>
  37.   <a href="<?PHP echo $url; ?>"><?PHP echo $name; ?></a><?PHP
  38. }
  39.        
  40.       function display_categories($cat_array) {        
  41.                
  42.        if(!is_array($cat_array)) {
  43.          echo 'В настоящий момент нет доступных категорий<br>';
  44.        return;}
  45.        foreach ($cat_array as $row)
  46.                 {
  47.      $url='show_cat.php?id_ctg='.($row['id_ctg']);
  48.      $title=$row['title'];
  49.      $this->do_html_URL($url, $title);
  50.                         }
  51.                 }
  52.  


show_cat.php
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. include('class.eshop.php');
  4. $eshop=new EshopDB();
  5.  $cat_array=$eshop->get_categories();
  6.  $eshop->display_categories($cat_array);
  7. ?>
  8.  


выдаст:

Извещатели охранные
Извещатели пожарные
Приборы приемно-контрольные




Andrey Отправлено: 11 Июля, 2007 - 11:56:27 • Тема: Реализация каталога товара • Форум: Программирование на PHP

Ответов: 10
Просмотров: 1553
Подскажите каким образом реализовать каталог товара как на http://www.3-porosenka.ru/?
Я так, понимаю, что все серии и подсерии можно разместить в одной таблице, но не совсем понятны запросы.
Andrey Отправлено: 04 Июля, 2007 - 23:47:57 • Тема: Из формы забирается только первая цифра, а не всё число • Форум: Программирование на PHP

Ответов: 4
Просмотров: 2022
PHP:
скопировать код в буфер обмена
  1. :
  2. <input type="hidden" name="new" value="<?PHP echo $product_id['product_id']; ?>">
  3.  


переменной new присваивается только первая цифра, то есть для от 1 до 9 всё хорошо, но если product_id = от 10 до 19, то new=1, от 20 до 29 new=2 и т.д.

С чем это связано?
Andrey Отправлено: 25 Июня, 2007 - 22:20:25 • Тема: header??? • Форум: Программирование на PHP

Ответов: 1
Просмотров: 285
Допустим, я нахожусь на:

http://localhost/myshop4/show_ca[dot][dot][dot]id=17&page=2

здесь я кликаю по кнопке заказать и у меня в add2cart.php методом GET уходят какие-то данные. Вот код:

PHP:
скопировать код в буфер обмена
  1.  
  2. <form action="add2cart.php" method="GET">
  3.   <input type="hidden" name="new" value="<?PHP echo $product_id['product_id']; ?>">
  4.   <input type="integer" name="qty" value="1"  size=1>
  5.   <?PHP echo 'шт.'; ?> </TD>
  6.   <TD width="75" align="center">
  7.   <input type="submit" value="Купить"></TD></form>
  8.  


Код add2cart:
PHP:
скопировать код в буфер обмена
  1.  
  2. include('class.eshop.php');
  3. $eshop=new EshopDB();
  4. echo '<h1>Ваша тележка</h1><br />';
  5. $new=$_GET['new'];
  6. $qty=$_GET['qty'];
  7. $customer=session_id();
  8. $datetime=time();
  9. $eshop->add2cart($customer, $new, $qty, $datetime);
  10. unset($eshop);
  11. header("Location: XXXXXXX");
  12.  


Что надо написать вместо XXXXXXXX, чтобы данные передались, а страница осталась таже:
http://localhost/myshop4/show_ca[dot][dot][dot]id=17&page=2 ?
Понятное дело, что напрямую я этот адрес забить в заголовок не могу, поскольку он от страницы к странице меняется.

попробовал использовать $url=$_SERVER['HTTP_REFERER']; - пдставляет то, что надо, но в браузере ошибка:

Warning: Cannot modify header information - headers already sent by (output started at C:Program FilesApache GroupApache2htdocsmyshop4add2cart.php:6) in C:Program FilesApache GroupApache2htdocsmyshop4add2car t.php on line 23
Andrey Отправлено: 24 Июня, 2007 - 13:44:16 • Тема: Как использовать аргумент js в php? • Форум: Программирование на PHP

Ответов: 2
Просмотров: 364
valenok пишет:
так чтоли?
PHP:
скопировать код в буфер обмена
  1.  
  2. function winop(arg){
  3.  ...
  4.  ...
  5. win1.document.write("<img src='/pic/<?PHP echo $product_id['product_articul']; ?>."+arg+' border=0></body>");
  6.  


Да, так! Получилось!
Andrey Отправлено: 23 Июня, 2007 - 22:27:29 • Тема: Как использовать аргумент js в php? • Форум: Программирование на PHP

Ответов: 2
Просмотров: 364
Есть код:
PHP:
скопировать код в буфер обмена
  1.  
  2. 1 <script language="JavaScript">
  3. 2 function winop()
  4. 3 {
  5. 4 var win1
  6. 5 win1 = window.open ("", "myWindow", "toolbar=0,left='center',top='center',width=560,height=380,");
  7. 7 win1.document.open();
  8. 8 win1.document.write("<title><?PHP echo $product_id['product_articul'].' - '.$product_id['product_title']; ?></title>");
  9. 10 win1.document.write("<body topmargin=0 leftmargin=0>");
  10. 11 win1.document.write("<img src='/pic/<?PHP echo $product_id['product_articul']; ?>.1.big.jpg' border=0></body>");
  11. 12 }
  12. 13 </script>
  13.        
  14. 14 <a href="javascript:winop();"><IMG src='<?PHP echo $pic; ?>' border=0></a></td>
  15.  


В 11 строке фрагмент '1.big.jpg' хочу сделать аргументом функции winop(), но не могу понять как. То есть, чтобы при вызове фунции winop() в качестве аргумента функции можно было подставить 1.big.jpg, 2.big.jpg, 3.big.jpg и т.д. или даже не '1.big.jpg', а '1', не '2.big.jpg', а '2' и т.д.
Andrey Отправлено: 20 Июня, 2007 - 23:02:19 • Тема: Как значение, вычисляемое в функции, передать в программу? • Форум: Программирование на PHP

Ответов: 1
Просмотров: 357
Проблема такая. Есть некий класс, в котором есть функция
class.eshop.php
PHP:
скопировать код в буфер обмена
  1.  
  2. class EshopDB {
  3. function get_product_idx()
  4. {
  5. //делаем выборку из таблицы product для позиций, которые есть в наличии, то есть 'product_on_off=0
  6. $sql="select * from product where product_on_off=0";
  7. $res=$this->conn->query($sql);
  8. if (!$res)
  9. return false;
  10. $num_product=$res->num_rows;
  11. if ($num_product==0)
  12. return false;
  13. $res=$this->db_result_to_array($res);
  14. return $res;
  15. }
  16.  


и есть файл (1.php), использующий эту функцию:
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. include('class.eshop.php');
  4. $eshop=new EshopDB();
  5. $product_array=$eshop->get_product_idx();
  6. $eshop->display_product($product_array);
  7. ?>
  8.  


Задача такая: $num_product из функции передать в файл 1.php. Здесь эту переменную как-то обработать, например получить переменную $qwe=$num_product/4 и эту переменную $qwe передать в другую функцию, которая находится в файле class.eshop.php
Andrey Отправлено: 19 Июня, 2007 - 10:53:26 • Тема: Переменные в строке • Форум: Программирование на PHP

Ответов: 10
Просмотров: 1342
Вот код

PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3.         <input type=hidden name=str value="<? echo '='.$str; ?>">
  4.    
  5.  
Andrey Отправлено: 17 Июня, 2007 - 22:25:22 • Тема: как открыть большую картинку? • Форум: JavaScript & VBScript

Ответов: 8
Просмотров: 7313
UserID пишет:
Andrey
Посмотри в исходном коде открываемого окна на путь к картинке. Возможно с ним проблемы.


Разобрался уже: написал <img scr ....> вместо <img src....> самому смешно над чем два дня билсяУлыбка
Теперь другой вопрос. В открывшемся новом окне сверху и слева от картинки белые поля. Как от них избавиться?
Andrey Отправлено: 17 Июня, 2007 - 21:44:02 • Тема: как открыть большую картинку? • Форум: JavaScript & VBScript

Ответов: 8
Просмотров: 7313
Еще немного поколдовал со своим кодом и добился вывода нового окна без панели инструментов, только картинка не отображается, а вместо неё маленькая пиктограмка, что, дескать, здесь должна быть кактинка.

Код php:
CODE (text):
скопировать код в буфер обмена
  1.  
  2. function display_product_details($product_id)
  3. {
  4. // проверяем, есть ли маленькая первая картинка: если есть, то вставляем её, если нет, то 'none.jpg'
  5. $picfile=$_SERVER["DOCUMENT_ROOT"]."/pic/".$product_id['product_articul'].".1.small.jpg";
  6. if(file_exists($picfile))
  7. $pic="/pic/".$product_id['product_articul'].".1.small.jpg";
  8. else
  9. $pic="/pic/none.jpg";
  10. $pic2=""/pic/".$product_id['product_articul'].".1.big.jpg"";
  11. echo '<table><tr><td valign="top">';
  12. ?>
  13. <script language="JavaScript">
  14. function winop()
  15.         {
  16.         var win1
  17.         win1 = window.open("", "myWindow", "toolbar=0,width=300,height=100");
  18.         win1.document.open();
  19.         win1.document.writeln("<title><?php echo $product_id['product_articul'].' - '.$product_id['product_title']; ?></title>"+ "<img scr='<?php echo $pic2; ?>'>");
  20.         }
  21. </script>
  22.  
  23. <a href="javascript:winop();"><IMG src='<?php echo $pic; ?>' border=0></a></td>;


Не могу понять, в чём ошибка? Пробовал вместо $pic2 вставлять и $picfile, и $pic - ни одна картинка не отображается.
Andrey Отправлено: 17 Июня, 2007 - 17:04:08 • Тема: как открыть большую картинку? • Форум: JavaScript & VBScript

Ответов: 8
Просмотров: 7313
1
Andrey Отправлено: 17 Июня, 2007 - 16:27:33 • Тема: как открыть большую картинку? • Форум: JavaScript & VBScript

Ответов: 8
Просмотров: 7313
valenok пишет:
PHP:
скопировать код в буфер обмена
  1. <IMG src='.$pic.' border=0 onmouseover="Javascript:picture()">


Не помогает...
Andrey Отправлено: 16 Июня, 2007 - 22:54:53 • Тема: как открыть большую картинку? • Форум: JavaScript & VBScript

Ответов: 8
Просмотров: 7313
Есть код:

<?php
.....
.....
echo '<a href="bigpic.php" target="_blank">'.'<IMG src='.$pic.' border=0></a></td>';
.....
?>

Все хорошо, только я хочу, чтобы при наведении на маленькую картинку открывалось окно с большой картинкой без строки состояния, без панели инструментов, без "Файл", "Правка", "Вид" и т.д. ...? Попробовал использовать js:

<?php

.......
.......
echo '<script language=JavaScript>
function picture(){
window.open('.$pic2.'"newwindow", config="width=30, height=29, toolbar=0, location=0, directories=0, status=0, menubar=0, scrollbars=0, resizable=0"); }
</SCRIPT>';

echo '<a href="javascript:picture()"><IMG src='.$pic.' border=0></a></td>';
..............
...........

?>

Так вообще ничего не выводит...
Andrey Отправлено: 14 Июня, 2007 - 21:48:15 • Тема: Проверка существования картнки • Форум: SQL и Архитектура БД

Ответов: 2
Просмотров: 49
Большое спасибо. Получилось!
Andrey Отправлено: 13 Июня, 2007 - 22:25:22 • Тема: Проверка существования картнки • Форум: SQL и Архитектура БД

Ответов: 2
Просмотров: 49
Суть проблемы: все картинки формата product_articul.1.small.jpg хранятся на сервере в папке pic. Надо проверить существует ли такая картинка, если да, то вывести её, если нет, то вывести none.jpg.

При таком коде:

if(file_exists(""/pic/".$row['product_articul'].".1.small.jpg"")){
$pic=" " /pic/".$row['product_articul'].".1.small.jpg " ";}else{
$pic=""/pic/none.jpg"";}

браузер выдаёт картинку none.jpg. Если в условие добавляю '!' (то есть 'не')

if(!file_exists(""/pic/".$row['product_articul'].".1.small.jpg"")){
$pic=""/pic/".$row['product_articul'].".1.small.jpg"";}else{
$pic=""/pic/none.jpg"";}

то выдаёт нужную картинку, то есть говорит, что файла не существует, но как же его не существует, если он его в браузер выдает, правда, при условии, что его не существует.
В чём проблема?

Страниц (4): « 1 2 [3] 4 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB