
Unregistered

|
Привет всем, я работаю на скрипте Shop script Free появилась мысль создать еще один пункт добавления инфы к товару, когда создаеш товар там есть пункт Описание и Краткое описание, ну и вот Беру файл products.php в нем эта Форма (Описание) я её копирую и смотрю свойства поля формы(через Front Page) имя формы description, начальное значение
PHP | <?php echo str_replace("<","<",$row[2]); |
в файле work_brified.tpl выводиться в поле {$work_info[2]}, и Базе данных есть для неё таблица SSwork а в ней description (где хрониться текст). Ну и вот я начал делать по подобию: 1. в имя формы пишу brief_description 2. начальное значение PHP | <?php echo str_replace("<","<",$row[18]); |
3. в файле product_detailed.tpl создаю поле {$work_info[18]}, 4. в БАЗЕ Данных в Таблице SSwork создаю brief_description по подобию description(родной таблицы)
В принципе все должно работать в админке появилось 3 окно добавления инфы, но почемуто не работает, текст при сохранении исчезает и не добавляеться в контент сайта и в админке сайта, а в базу данных сохраняеться, может кто знает что надо сделать чтобы это все вывелось в контент? очень надо, Жду помощи:)
P.S мне кажеться что проблема в этих функциях
PHP | <?php echo str_replace("<","<",$row[18]); |
может надо чтото еще в Базе подправить? Спустя 23 минуты, 19 секунд (23.04.2009 - 22:45) waldicom написал(а): Я с Shop Script проработал где-то два года... Но к сожалению не много понял из твоего описания, что конкретно не работает? В базу заносится? Значит надо выводить в админке и на сайте. Точнее опиши, что ты хочешь добавить. Спустя 16 часов, 53 минуты, 14 секунд (24.04.2009 - 15:38) Тимерлан написал(а): Короче, когда добавляеш продукт есть форма описание и краткое описание - product.php а у меня еще есть work.php аналогично работает, отдельный каталог так сказать:) но там нет краткого описания, а я хочу добавить как я это сделал написано сверху, но текс не выводиться, что подправить? Спустя 1 минута, 41 секунда (24.04.2009 - 15:40) Тимерлан написал(а): Если что вот www.konstaspb.ru зайди там в раздел "наши работы" и все поймеш:) Это не мой магазин, У меня также! Спустя 13 минут, 24 секунды (24.04.2009 - 15:53) waldicom написал(а): Ок, ты говоришь, что короткое описание в базу добавляется, так? Значит проблема только с выводом? Если так, то удостоверься, что ты выбираешь поле brief_description из базы, чтобы его потом показать. А то может быть ты поле добавил и оно заполняется, но при выводе товаров ты его просто не выбираешь из базы и соответственно нечего показывать. Спустя 3 часа, 13 минут, 16 секунд (24.04.2009 - 19:07) Тимерлан написал(а): Можно по коннкретнее?  я не силен в php и MySQL Спустя 7 минут, 53 секунды (24.04.2009 - 19:14) Тимерлан написал(а): а есть разница какое тут число ставить?
PHP | <?php echo str_replace("<","<",$row[18]); ввод слов //и Тут {$work_info[18]}
//вывод на сайте |
Спустя 1 час, 18 минут, 29 секунд (24.04.2009 - 20:33) Тимерлан написал(а): Все заработало:))))) поставил
PHP | <?php echo str_replace("<","<",$row[4]) и {$work_info[4]} |
, только одно но:)) когда нажимаеш подробнее сылка вбивает а дрес вот это http://localhost/shop/index.php?workID=текст который находиться в таблице brief_description  )) Спустя 8 минут, 49 секунд (24.04.2009 - 20:42) Тимерлан написал(а): Я понял функция подробнее выглядит так
PHP | <a class=pod href="index.php?workID={$work_info[4]}"> {$smarty.const.MORE_INFO_ON_PRODUCT}</a> |
Но у меня стоит функция куда выводиться краткое описание тоже {$work_info[4]} почемуто значение brief_description приняло значение workID как это поменять чтоб было так workID на {$work_info[4]} а brief_description на {$work_info[8]} ????  )) ЖДУ ПОМОЩИ:))) Спустя 1 день, 14 часов, 26 минут, 36 секунд (26.04.2009 - 11:08) Тимерлан написал(а): Спустя 1 час, 29 минут, 19 секунд (26.04.2009 - 12:38) waldicom написал(а): Возможно. Не видя SQL-запроса, котрый формирует массив со значениями трудно сказать. Могу лишь подсказать, что индексы ([4],[8]) - это номера полей в запросе. Поясню: если запрос у тебя выглядит так:
SQL | SELECT a,b,c,d,e,f,g,h,i FROM blabla |
то после фетча индексы будут такими: a - [0] b - [1] c - [2] d - [3] e - [4] f - [5] g - [6] h - [7] i - [8]
Если я не так понял проблему - уточни пожалуйста,
Спустя 4 часа, 25 минут, 57 секунд (26.04.2009 - 17:04) Тимерлан написал(а): Ну вот смотри поле в которое ввожу текст в админке (brief_description ), имеет начальное значение
PHP | <?php echo str_replace("<","<",$row[4]) |
а в файле work_brief есть вот это {$work_info[4]} на это место пишеться текст вписанный в админке:)) А таблицы в базе данных brief_description и workID отсылают свои данные вместе на {$work_info[4]} мне нужно чтоб таблица brief_description ссылала текст на поле {$work_info[8]} а workID на {$work_info[4]} как мне это поменять???? Вроде это надо делать гдето в БД??  ) Спустя 1 день, 19 часов, 1 минута, 32 секунды (28.04.2009 - 12:05) Тимерлан написал(а): waldicom Ты поможеш? ясно обьяснил? Спустя 1 час, 13 минут, 17 секунд (28.04.2009 - 13:18) waldicom написал(а): Цитата (Тимерлан @ 28.04.2009 - 10:05) | waldicom Ты поможеш? ясно обьяснил? 7 |
Если честно, то нет... Т.е. тебе понятно, потому что у тебя все перед глазами, а мне не понятно, потому что ты, имхо, смешиваешь все в кучу.
Знаешь, я уже готов тебе это сделать. Дай данные для доступа на ФТП и адрес магазина (в личку, в аську)... Спустя 6 часов, 47 минут, 55 секунд (28.04.2009 - 20:06) Тимерлан написал(а): У меня этого в интернете нет:) на local, может я тебе дам эти 2 файла из-за которых у меня проблемс:)) Спустя 3 часа, 38 минут, 16 секунд (28.04.2009 - 23:45) waldicom написал(а): Давай, кидай темплейт и файл, который его формирует Спустя 8 часов, 16 минут, 34 секунды (29.04.2009 - 08:01) Тимерлан написал(а): Вот темплейт сохрани в html, видеш там тег {$work_info[4]}?, на него должен приходить текст, нужно сделать так чтоб шол на значение 8 {$work_info[8]}, ну как ты увидеш поймеш:) {* work brief view (from a category or search) *}
{if $work_info ne NULL}
HTML | <p><table width="100%" cellspacing="0" cellpadding="0" id="table16"> <tr> <td width="12" align="left" valign="top" height="12"> <img src="images/verxleft.bmp" border="0"></td> <td background="images/12verx.bmp" valign="top" width="12" height="12" align="left"> <img border="0" src="images/12verx.bmp"></td> <td width="12" align="left" valign="top" height="12"> <img src="images/verxprav.bmp" border="0"></td> </tr> <tr> <td align="left" width="12" height="12" valign="top" background="images/12letf.bmp"> <img border="0" src="images/12letf.bmp"></td> <td valign="top" align="left"> <table border="0" width="100%" cellspacing="0" cellpadding="0" id="table17"> <tr> <td width="160" rowspan="2" valign="top">{if $work_info[3]}<table border="0" width="180" cellspacing="0" cellpadding="0" bgcolor="#FFFFFF" id="table18"> <tr> <td> <p style="margin-left: 3px; margin-right: 3px">
<a href="index.php?workID={$work_info[4]}"> <img src="products_pictures/{$work_info[3]}" alt="{$work_info[1]}" border=0 width="150"></a></td> </tr> </table> <p>{/if}</p>
</td> <td align="left" valign="top"> <p style="margin-left: 3px; margin-right: 3px"><font size="4"> <b>{$work_info[1]}<br> </b></font>{$work_info[4]}</p></td> </tr> <tr> <td align="left" valign="bottom"> <a class=pod href="index.php?workID={$work_info[4]}"> {$smarty.const.MORE_INFO_ON_PRODUCT}</a></td> </tr> </table> </td> <td width="12" height="12" align="left" valign="top" background="images/12prav.bmp"> <img border="0" src="images/12prav.bmp"></td> </tr> <tr> <td width="12" align="left" valign="top" height="12"> <img src="images/nizleft.bmp" border="0"></td> <td valign="top" width="12" height="12" align="left" background="images/12niz.bmp"> <img border="0" src="images/12niz.bmp"></td> <td width="12" align="left" valign="top" height="12"> <img src="images/nizprav.bmp" border="0"></td> </tr> </table> <p>{/if}</p>
|
Вот work.php, желательно смотри через графический редактор сразу все понятно станет
PHP | <?php
//ADMIN :: products managment
ini_set("display_errors", "1");
include("./cfg/connect.inc.php"); include("./includes/database/mysql.php"); include("./cfg/category_functions.php"); include("./cfg/general.inc.php");
//connect 2 database db_connect(DB_HOST,DB_USER,DB_PASS) or die (db_error()); db_select_db(DB_NAME) or die (db_error());
session_start(); include("./checklogin.php"); if (!isset($_SESSION["log"]) || strcmp($_SESSION["log"],ADMIN_LOGIN)) //unauthorized { die ("You are not authorized to view this page"); }
//get currency ISO 3 code $currency_iso_3 = (defined('CONF_CURRENCY_ISO3')) ? CONF_CURRENCY_ISO3 : "USD" ; //current language include("./cfg/language_list.php"); if (!isset($_SESSION["current_language"]) || $_SESSION["current_language"] < 0 || $_SESSION["current_language"] > count($lang_list)) $_SESSION["current_language"] = 0; //set default language
if (isset($lang_list[$_SESSION["current_language"]]) && file_exists("./languages/".$lang_list[$_SESSION["current_language"]]->filename)) include("./languages/".$lang_list[$_SESSION["current_language"]]->filename); //include current language file else { die("<font color=red><b>ERROR: Couldn't find language file!</b></font>"); }
if (!isset($_GET["workID"])) $_GET["workID"] = 0;
if (isset($_POST["save_work"])) //save item to the database {
if (!isset($_POST["name"]) || trim($_POST["name"])=="") $_POST["name"] = "not defined";
if ($_POST["save_work"]) { //if $_POST["save_work"] != 0 then update item
//delete old product photos if they're being replaced $q = db_query("SELECT picture FROM ".WORKS_TABLE." WHERE workID='".$_POST["save_work"]."'") or die (db_error()); $row = db_fetch_row($q);
//generating query
$s = "UPDATE ".WORKS_TABLE." SET wcategoryID='".$_POST["wcategoryID"]."', name='".$_POST["name"]."', description='".$_POST["description"]."', brief_description='".$_POST["brief_description"]."'"; $s1 = "";
//old pictures? if (isset($_FILES["picture"]) && $_FILES["picture"]["name"]) { //delete old picture if ($row[0] && file_exists("./products_pictures/".$row[0])) unlink("./products_pictures/".$row[0]); }
$pid = $_POST["save_work"];
} else { //add new product db_query("INSERT INTO ".WORKS_TABLE." (wcategoryID, name, picture, description, brief_description, active) VALUES ('".$_POST["wcategoryID"]."','".$_POST["name"]."','', '".$_POST["description"]."','".$_POST["brief_description"]."', 1);") or die (db_error()); $pid = db_insert_id();
$dont_update = 1; //don't update product
$s = ""; $s1 = "UPDATE ".WORKS_TABLE." SET wcategoryID=wcategoryID"; }
//add pictures? //regular photo if (isset($_FILES["picture"]) && $_FILES["picture"]["name"] && preg_match('/\.(jpg|jpeg|gif|jpe|pcx|bmp)$/i', $_FILES["picture"]["name"])) //upload { $_FILES["picture"]["name"] = str_replace(" ","_",$_FILES["picture"]["name"]); $r = move_uploaded_file($_FILES["picture"]["tmp_name"], "./products_pictures/".$_FILES["picture"]["name"]); if (!$r) //failed 2 upload { echo "<center><font color=red>".ERROR_FAILED_TO_UPLOAD_FILE."</font>\n<br><br>\n"; echo "<a href=\"javascript:window.close();\">".CLOSE_BUTTON."</a></center></body>\n</html>"; exit; }
SetRightsToUploadedFile( "./products_pictures/".$_FILES["picture"]["name"] );
$s .= ", picture='".$_FILES["picture"]["name"]."'"; $s1.= ", picture='".$_FILES["picture"]["name"]."'"; }
if (!isset($dont_update)) //update product info { $s .= " WHERE workID='".$_POST["save_work"]."'"; db_query($s) or die (db_error()); $workID = $_POST["save_work"]; } else //don't update (insert query is already completed) { $s1.= " WHERE workID=$pid"; db_query($s1) or die (db_error()); $workID = $pid; }
update_works_Count_Value_For_wcategories(0);
//close window echo "<script>\n"; echo "window.opener.location.reload();\n"; echo "window.close();\n"; echo "</script>\n</body>\n</html>"; exit; } else //get work from db { if ($_GET["workID"]) {
$q = db_query("SELECT wcategoryID, name, picture, description, brief_description FROM ".WORKS_TABLE." WHERE workID='".$_GET["workID"]."'") or die (db_error()); $row = db_fetch_row($q); if (!$row) //product wasn't found { echo "<center><font color=red>".ERROR_CANT_FIND_REQUIRED_PAGE."</font>\n<br><br>\n"; echo "<a href=\"javascript:window.close();\">".CLOSE_BUTTON."</a></center></body>\n</html>"; exit; }
if (isset($_GET["picture_remove"])) //delete items picture from server if requested { if ($_GET["picture_remove"] && file_exists("./products_pictures/".$row[$_GET["picture_remove"]])) unlink("./products_pictures/".$row[$_GET["picture_remove"]]); $picture = "none"; }
if (isset($_GET["delete"])) //delete product { //at first photos... if ($row[2] != "none" && $row[2] != "" && file_exists("./products_pictures/".$row[2])) unlink("./products_pictures/".$row[2]);
$q = db_query("DELETE FROM ".WORKS_TABLE." WHERE workID='".$_GET["workID"]."'") or die (db_error());
//close window echo "<script>\n"; echo "window.opener.location.reload();\n"; echo "window.close();\n"; echo "</script>\n</body>\n</html>"; exit; }
$title = $row[1];
} else //creating new item { $title = ADMIN_NEWS_NEW; $wcat = isset($_GET["wcategoryID"]) ? $_GET["wcategoryID"] : 0; $row = array($wcat,"","",""); } } |
HTML | <html>
<head> <link rel=STYLESHEET href="style1.css" type="text/css"> <meta http-equiv="Content-Type" content="text/html; charset=<?php echo DEFAULT_CHARSET;?>"> <title><?php echo ADMIN_NEWS_TITLE;?></title> <script> function confirmDelete(question, where) { temp = window.confirm(question); if (temp) //delete { window.location=where; } } function open_window(link,w,h) //opens new window { var win = "width="+w+",height="+h+",menubar=no,location=no,resizable=yes,scrollbars=yes"; wishWin = window.open(link,'wishWin',win); } </script> </head>
<body bgcolor=#FFFFE2> <center> <p> <b><?php echo $title; ?></b>
<form enctype="multipart/form-data" action="work.php" method=post>
<table width=100% border=0 cellpadding=3 cellspacing=0> <tr> <td align=right><?php echo ADMIN_CATEGORY_PARENT;?></td> <td> <select name="wcategoryID"> <option value="0"><?php echo ADMIN_CATEGORY_ROOT;?></option> <?php //show categories select element $wcats = fillThewcList(0,0); for ($i=0; $i<count($wcats); $i++) { echo "<option value=\"".$wcats[$i][0]."\""; if ($row[0] == $wcats[$i][0]) //select category echo " selected"; echo ">"; for ($j=0;$j<$wcats[$i][5];$j++) echo " "; echo $wcats[$i][1]; echo "</option>"; } ?> </select> </td> </tr> <tr> <td align=right><?php echo ADMIN_NEWS_NAME;?></td> <td><input type="text" name="name" value="<?php echo str_replace("\"",""",$row[1]); ?>"></td> </tr> <tr><td> </td></tr>
<tr> <td align=right><?php echo ADMIN_PRODUCT_PICTURE;?></td> <td><input type="file" name="picture"></td> <tr><td></td><td> <?php if ($row[2]!="</span>" && file_exists("./products_pictures/".$row[2])) { echo "<a class=small href=\"products_pictures/".$row[2]."\">$row[2]</a>\n"; echo "<br><a href=\"javascript:confirmDelete('".QUESTION_DELETE_PICTURE."','work.php?workID=".$_GET["workID"]."&picture_remove=2');\">".DELETE_BUTTON."</a>\n"; } else echo "<font class=average color=brown>".ADMIN_PICTURE_NOT_UPLOADED."</font>"; ?> </td> </tr>
<tr> <td align=right><?php echo ADMIN_PRODUCT_DESC;?><br>(HTML):</td> <td><textarea name="description" rows=15 cols=40><?php echo str_replace("<","<",$row[3]); ?></textarea></td> </tr>
<tr> <td align=right><?php echo ADMIN_PRODUCT_BRIEF_DESC;?><br>(HTML):</td> <td><textarea name="brief_description" rows=7 cols=40><?php echo str_replace("<","<",$row[4]); ?></textarea></td> </tr>
</table>
<p><center> <input type="submit" value="<[color=blue]?php echo SAVE_BUTTON;?>" width=5> <input type="hidden" name="save_work" value=<?php echo $_GET["workID"]; ?>> <input type="button" value="<?php echo CANCEL_BUTTON;?>" onClick="window.close();"> <?php if ($_GET["workID"]) echo "<input type=button value=\"".DELETE_BUTTON."\" onClick=\"confirmDelete('".QUESTION_DELETE_CONFIRMATION."','work.php?workID=".$_GET["workID"]."&delete=1');\">"; ?> </center></p> </form>
</center> </body>
</html>
|
Форматируй код BBCODE
Спустя 1 день, 11 часов, 8 минут, 32 секунды (30.04.2009 - 19:10) Тимерлан написал(а): waldicom ты не забыл про меня? Спустя 1 час, 18 минут, 32 секунды (30.04.2009 - 20:28) kirik написал(а): Цитата (Тимерлан @ 26.04.2009 - 03:08) | waldicom ты знаеш? |
Цитата (Тимерлан @ 28.04.2009 - 04:05) | waldicom Ты поможеш? |
Цитата (Тимерлан @ 30.04.2009 - 11:10) | waldicom ты не забыл про меня? |
Спустя 18 часов, 20 минут, 47 секунд (1.05.2009 - 14:49) Тимерлан написал(а):
|