[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Добавить добавление изображения в модуль dle!!
chnurr
Доброго времени суток! Помогите разобраться пожалуйста. Необходимо добавить в модуль дополнительные поля - "добавление фото" - 4 штуки. Во всех файлах добавил инфо : в базе поля - добавил, в добавить фирму - добавил - добавляет, в модерации - добавил, выводит, но не сохраняет в базу!!!

Внизу привожу код который отвечает за создание и сохранение изображения (здесь "screenshot" и "thumb_screenshot") - я пробовал - добавлял менял - но максимум чего добился - сохраняет два изображения (при добавлении ещё одного) но они оба одинаковые (загружались разные). Может кто подскажет что нибудь. Буду благодарен $ ;)
P.S. пунктирной линией выделил код где нужно менять, добавлять.



<?PHP
if(!defined('DATALIFEENGINE'))
die("Hacking attempt!");

$getcat = $db->query ("SELECT * FROM " . PREFIX . "_links_cat ORDER BY `posi` ASC");
while ( $row = $db->get_row ($getcat ) )
{
$cat_i_down[$row['id']] = array ();
foreach ( $row as $key => $value ) {
$cat_i_down[$row['id']][$key] = stripslashes( $value );
}
}

$db->free ( $getcat );

function ShowCategorySite($catid = 0, $cat_l = '', $znak, $catid_f)
{
global $cat_i_down, $db;

foreach ( $cat_i_down as $cats )
{
if ($cats['id'] == $cat_i_down[$catid]['parentid'])
{
$cat_l .= ",".$cats['id'];
ShowCategorySite($cats['id'], $cat_l, $znak, $catid_f);
}
}


if ($cat_i_down[$catid]['parentid'] == 0)
{
$summ = $catid_f.$cat_l;

$summ_mas = explode (",", $summ);
foreach ( $summ_mas as $summ_cat )
{
if ($znak == 1)
$db->query ( "UPDATE " . PREFIX . "_links_cat SET link_num = link_num+1 WHERE id = '$summ_cat'" );
else
$db->query ( "UPDATE " . PREFIX . "_links_cat SET link_num = link_num-1 WHERE id = '$summ_cat'" );
}
return;
}

}


echoheader("", "");
$module = $_POST['module'];
$selected_site = $_POST['selected_site'];
require_once ROOT_DIR.'/engine/data/links_config.php';
include_once ENGINE_DIR.'/classes/parse.class.php';
$parse = new ParseFilter();
$stop = "";
if ($selected_site)
{
foreach ($selected_site as $id)
{
$id = intval($id);
if ($module == "cats")
{
$title = $db->safesql($_POST['title_'.$id]);
$alt_name = $db->safesql($_POST['alt_name_'.$id]);
if ($alt_name == "")
$alt_name = $title;
$alt_name = totranslit(stripslashes($alt_name));
$link_num = intval($_POST['link_num_'.$id]);
if ($link_num == "")
{
$sql_count = $db->super_query("SELECT COUNT(*) as count FROM " . PREFIX . "_links WHERE cat='$id'");
$link_num = $sql_count['count'];
}

$posi = intval($_POST['posi_'.$id]);
$parentid = intval($_POST['parentid_'.$id]);
$cat_bd = $db->super_query("SELECT * FROM `".PREFIX."_links_cat` WHERE `id` = '{$id}'");
$sql_count = $db->super_query("SELECT COUNT(*) as count FROM " . PREFIX . "_links_cat WHERE parentid='$id'");
$num_cat = $sql_count['count'];

if ($id == $parentid)
$stop .= "- Категорию ".$cat_bd['title']." (".$id.") нельзя вставить в саму себя.<span class="sh_keyword"><br></span>";
elseif ($cat_bd['parentid'] == 0 AND $cat_bd['parentid'] != $parentid AND $num_cat)
{
$stop .= "- Категорию ".$cat_bd['title']." (".$id.") нельзя перенести в другую категорию, т.к. она является основной категорией, включающей в себе другие подкатегории. Сначала перенесите подкатегории или удалите их.<span class="sh_keyword"><br></span>";
}
else
{
$db->query( "UPDATE " . PREFIX . "_links_cat set title = '$title', alt_name = '$alt_name', link_num = '$link_num', posi = '$posi', parentid = '$parentid' where id='$id'" );
}
}

elseif ($module == "moder" OR $module == "moder_all")
{
$sql = $db->super_query("SELECT * FROM ".PREFIX."_links WHERE id = '{$id}'");
$title = $db->safesql($_POST['title_'.$id]);
$gorod = $db->safesql($_POST['gorod_'.$id]);
$adres = $db->safesql($_POST['adres_'.$id]);
$tel = $db->safesql($_POST['tel_'.$id]);
$mail = $db->safesql($_POST['mail_'.$id]);
$alt_name = totranslit(stripslashes($title));
$opis = $db->safesql( $parse->BB_Parse( $parse->process( $_POST['opis_'.$id] ), false ) );

if( intval( $config['auto_wrap'] ) )
{
$opis = preg_split( '((>)|(<))', $opis, - 1, PREG_SPLIT_DELIM_CAPTURE );
$n = count( $opis );
for($i = 0; $i < $n; $i ++)
{
if( $opis[$i] == "<" )
{
$i ++;
continue;
}
$opis[$i] = preg_replace( "#([^\s\n\r]{" . intval( $config['auto_wrap'] ) . "})#i", "\\1<span class="sh_keyword"><br /></span>", $opis[$i] );
}
$opis = join( "", $opis );
}

$description = $db->safesql( $parse->BB_Parse( $parse->process( $_POST['description_'.$id] ), false ) );

if( intval( $config['auto_wrap'] ) )
{
$description = preg_split( '((>)|(<))', $description, - 1, PREG_SPLIT_DELIM_CAPTURE );
$n = count( $description );
for($i = 0; $i < $n; $i ++)
{
if( $description[$i] == "<" )
{
$i ++;
continue;
}
$description[$i] = preg_replace( "#([^\s\n\r]{" . intval( $config['auto_wrap'] ) . "})#i", "\\1<span class="sh_keyword"><br /></span>", $description[$i] );
}
$description = join( "", $description );
}

$link = $db->safesql(htmlspecialchars($_POST['link_'.$id]));
$link = strtolower($link);
$obrat_link = $db->safesql(htmlspecialchars($_POST['obrat_link_'.$id]));
$obrat_link = strtolower($obrat_link);
$noindex = intval($_POST['noindex_'.$id]);
$nofollow = intval($_POST['nofollow_'.$id]);
$allow_comm = intval($_POST['allow_comm_'.$id]);
$approve = intval($_POST['approve_'.$id]);
$catid = intval($_REQUEST['category_'.$id]);
==================================================================================================== ========

$del_scr = intval($_POST['del_scr_'.$id]);
if ($del_scr)
{
if ($sql['screenshot'])
@unlink ( ROOT_DIR . "/uploads/cat_links/thumbs/".$sql['screenshot'] );
if ($sql['thumb_screenshot'])
@unlink ( ROOT_DIR . "/uploads/cat_links/thumbs/mini/".$sql['thumb_screenshot'] );
$file_name_thumb = "";
$thumb_img = "";
}
else
{
$file_name_thumb = $sql['screenshot'];
$thumb_img = $sql['thumb_screenshot'];
}

##==========================================Создание и сохранение скриншота======================##

$error = "";
$current_image = "thumb_a_".$id;

if ($links_conf['screenshot'] == 1 AND !empty($_FILES[$current_image]['name']))
{

$file_prefix = time () . "_";
$config_path_image_upload = ROOT_DIR . "/uploads/cat_links/thumbs/";

if (! is_dir ( $config_path_image_upload )) {
@mkdir ( $config_path_image_upload, 0777 );
@chmod ( $config_path_image_upload, 0777 );
}

if (! is_dir ( $config_path_image_upload ))
$error .= "Directory Error. " . $config_path_image_upload . " cannot created. <span class="sh_keyword"><br /></span>";

$allowed_extensions = array ("gif", "jpg", "png", "jpe", "jpeg" );

if (! is_dir ( $config_path_image_upload . 'mini/' )) {
@mkdir ( $config_path_image_upload . 'mini/', 0777 );
@chmod ( $config_path_image_upload . 'mini/', 0777 );
}

if (! is_dir ( $config_path_image_upload . 'mini/' ))
$error .= "Directory Error. " . $config_path_image_upload . "mini/ cannot created. <span class="sh_keyword"><br /></span>";

$current_image = "thumb_a_".$id;
$image = $_FILES [$current_image] ['tmp_name'];
$image_name = $_FILES [$current_image] ['name'];
$image_size = $_FILES [$current_image] ['size'];

$img_name_arr = explode ( ".", $image_name );
$type = totranslit ( end ( $img_name_arr ) );

if ($image_name != "")
{
$curr_key = key ( $img_name_arr );
unset ( $img_name_arr [$curr_key] );
$image_name = totranslit ( implode ( ".", $img_name_arr ) ) . "." . $type;
}

if ($image_name == "")
$error .= "1<span class="sh_keyword"><font</span> <span class="sh_att">color</span><span class="sh_symbol">=</span><span class="sh_att">red</span><span class="sh_keyword">></span>$current_image -> $lang[images_uperr]<span class="sh_keyword"></font></span>";
elseif (! (in_array ( $type, $allowed_extensions ) or in_array ( strtolower ( $type ), $allowed_extensions )))
$error .= "2<span class="sh_keyword"><font</span> <span class="sh_att">color</span><span class="sh_symbol">=</span><span class="sh_att">red</span><span class="sh_keyword">></span>$current_image -> $lang[images_uperr_2]<span class="sh_keyword"></font></span>";
elseif ($image_size > ($config['max_up_size'] * 1024) and ! $config ['max_up_side'])
$error .= "3<span class="sh_keyword"><font</span> <span class="sh_att">color</span><span class="sh_symbol">=</span><span class="sh_att">red</span><span class="sh_keyword">></span>$current_image -> $lang[images_big]<span class="sh_keyword"></font></span>";
else {
@move_uploaded_file ( $image, $config_path_image_upload . $file_prefix . $image_name ) or $img_result = "<span class="sh_keyword"><div><font</span> <span class="sh_att">color</span><span class="sh_symbol">=</span><span class="sh_att">red</span><span class="sh_keyword">></span>$lang[images_uperr_3]<span class="sh_keyword"></font></div></span>";

if (@file_exists ( $config_path_image_upload . $file_prefix . $image_name ))
{
@chmod ( $config_path_image_upload . $file_prefix . $image_name, 0666 );

include_once ENGINE_DIR . '/classes/thumb.class.php';

$thumb = new thumbnail ( $config_path_image_upload . $file_prefix . $image_name );
if ($thumb->size_auto ( $links_conf['screenshot_width'], 0 ))
{
$thumb->jpeg_quality ( $config ['jpeg_quality'] );
if ($links_conf['watermark'] == "1")
$thumb->insert_watermark ( $config ['max_watermark'] );
$thumb->save ( $config_path_image_upload . "mini/" . $file_prefix . $image_name );
}

if (@file_exists ( $config_path_image_upload . "mini/" . $file_prefix . $image_name )) {
$img_result_th .= "<span class="sh_keyword"><div><font</span> <span class="sh_att">color</span><span class="sh_symbol">=</span><span class="sh_att">blue</span><span class="sh_keyword">></span>$image_name -> $lang[images_thok]<span class="sh_keyword"></font></div></span>";
$thumb_img = $image_name;
}

@chmod ( $config_path_image_upload . "mini/" . $file_prefix . $image_name, 0666 );
$config ['max_up_side'] = intval ( $config ['max_up_side'] );

if ($links_conf['watermark'] == "1" or $config ['max_up_side'])
{
$thumb = new thumbnail ( $config_path_image_upload . $file_prefix . $image_name );
$thumb->jpeg_quality ( $config ['jpeg_quality'] );

if ($config ['max_up_side'])
$thumb->size_auto ( $config ['max_up_side'] );

if ($links_conf['watermark'] == "1")
$thumb->insert_watermark ( $config ['max_watermark'] );

$thumb->save ( $config_path_image_upload . $file_prefix . $image_name );
}
}

}

$file_name_thumb = $image_name;

if ($file_name_thumb)
$file_name_thumb = $file_prefix . $file_name_thumb;
else
$file_name_thumb = "";

if ($thumb_img)
$thumb_img = $file_prefix . $thumb_img;
else
$thumb_img = "";

if ($file_name_thumb)
{
if ($sql['screenshot'])
@unlink ( ROOT_DIR . "/uploads/cat_links/thumbs/".$sql['screenshot'] );
if ($sql['thumb_screenshot'])
@unlink ( ROOT_DIR . "/uploads/cat_links/thumbs/mini/".$sql['thumb_screenshot'] );
}
}

##=============================Сохранение данных в базу данных===================================##

if ($sql['cat'] != $catid AND $approve == $sql['approve']) // смена категории
{
if ($module == "moder_all")
{
ShowCategorySite ($sql['cat'], "", 0, $sql['cat']);
ShowCategorySite ($catid, "", 1, $catid);
}
}


if ($sql['cat'] != $catid AND $approve != $sql['approve']) // смена категории и видимости сайта
{
if ($module == "moder_all")
ShowCategorySite ($sql['cat'], "", 0, $sql['cat']);

if ($approve == 1)
{
ShowCategorySite ($catid, "", 1, $catid);
}
}


if ($approve != $sql['approve'] AND $sql['cat'] == $catid) // смена видимости сайта
{
if ($approve == 1)
{
ShowCategorySite ($catid, "", 1, $catid);
}
else
{
ShowCategorySite ($catid, "", 0, $catid);
}
}


if ($approve != $sql['approve'])
{
if ($approve == 1)
{
if($links_conf['send_autor'] == 1 AND !$sql['guest'])
{
$lc_site = $db->super_query("SELECT * FROM " . USERPREFIX . "_users where name = '$sql[autor]'");
if($config['allow_alt_url'] == "yes")
$whois = "[URL=http://http://".$config['http_home_url']."user/".$member_id[name]."/]".$member_id['name']."[/URL]";
else
$whois = "[URL=http://http://$PHP_SELF?subaction=userinfo&user=".urlencode($member_id[name])."/]".$member_id[name]."[/URL]";

$whois = $db->safesql( $parse->BB_Parse( $parse->process( $whois ), false ) );
$izvestie = $links_conf['msgs_template'];
$izvestie = str_replace('{%kto%}', $whois, $izvestie);
$izvestie = str_replace('{%site%}', $link, $izvestie);
$time = time()+($config['date_adjust']*60);
$member_id['name'] = $db->safesql($member_id['name']);
$db->query("INSERT INTO " . USERPREFIX . "_pm (subj, text, user, user_from, date, pm_read, folder) values ('Проверка заявки', '$izvestie', '$lc_site[user_id]', '$member_id[name]', '$time', 'no', 'inbox')");
$db->query("UPDATE " . USERPREFIX . "_users set pm_all=pm_all+1, pm_unread=pm_unread+1 where user_id='$lc_site[user_id]'");
}
}
}

$time = time()+($config['date_adjust']*60);
if ($module == "moder" AND $approve == 1)
$date = $time;
else
$date = $sql['date'];
$sql['autor'] = $db->safesql($sql['autor']);
$db->query( "UPDATE " . PREFIX . "_links set autor = '$sql[autor]', date = '$date', cat = '$catid', title = '$title', gorod = '$gorod', adres = '$adres', tel = '$tel', mail = '$mail', link = '$link', obrat_link = '$obrat_link', alt_name = '$alt_name', opis = '$opis', description = '$description', allow_comm = '$allow_comm', noindex = '$noindex', nofollow = '$nofollow', approve='$approve', screenshot = '$file_name_thumb', thumb_screenshot = '$thumb_img' where id='{$sql[id]}'" );
==================================================================================================== ========

$db->free($sql);
}
}

if ($module == "cats")
{
if (!$stop)
echo "<span class="sh_keyword"><center><b><div</span> <span class="sh_att">class</span><span class="sh_symbol">=</span><span class="sh_string">'main'</span><span class="sh_keyword">></span>Категории сохранены!<span class="sh_keyword"></div></b></center></span>";
else
echo "<span class="sh_keyword"><center><b><div</span> <span class="sh_att">class</span><span class="sh_symbol">=</span><span class="sh_string">'main'</span><span class="sh_keyword">></span>При сохранении категорий возникли ошибки!<span class="sh_keyword"><br><br></span>".$stop."<span class="sh_keyword"></div></b></center></span>";
echo "<span class="sh_keyword"><center></span> <span class="sh_keyword"><a</span> <span class="sh_att">class</span><span class="sh_symbol">=</span><span class="sh_att">main href</span><span class="sh_symbol">=</span><span class="sh_string">'".$config['</span><span class="sh_att">http_home_url</span><span class="sh_string">'].$config['</span><span class="sh_att">admin_path</span><span class="sh_string">']."?mod=admin_links&action=cats'</span><span class="sh_keyword">><b></span>В начало<span class="sh_keyword"></b></a></center></span>";
}
elseif ($module == "moder")
{
echo "<span class="sh_keyword"><center><b><div</span> <span class="sh_att">class</span><span class="sh_symbol">=</span><span class="sh_string">'main'</span><span class="sh_keyword">></span>Изменения в сайтах сохранены!<span class="sh_keyword"></div></b></center></span>";
echo "<span class="sh_keyword"><center></span> <span class="sh_keyword"><a</span> <span class="sh_att">class</span><span class="sh_symbol">=</span><span class="sh_att">main href</span><span class="sh_symbol">=</span><span class="sh_string">'".$config['</span><span class="sh_att">http_home_url</span><span class="sh_string">'].$config['</span><span class="sh_att">admin_path</span><span class="sh_string">']."?mod=admin_links&action=moder'</span><span class="sh_keyword">><b></span>В начало<span class="sh_keyword"></b></a></center></span>";
}
elseif ($module == "moder_all")
{
echo "<span class="sh_keyword"><center><b><div</span> <span class="sh_att">class</span><span class="sh_symbol">=</span><span class="sh_string">'main'</span><span class="sh_keyword">></span>Изменения в сайтах сохранены!<span class="sh_keyword"></div></b></center></span>";
echo "<span class="sh_keyword"><center></span> <span class="sh_keyword"><a</span> <span class="sh_att">class</span><span class="sh_symbol">=</span><span class="sh_att">main href</span><span class="sh_symbol">=</span><span class="sh_string">'".$config['</span><span class="sh_att">http_home_url</span><span class="sh_string">'].$config['</span><span class="sh_att">admin_path</span><span class="sh_string">']."?mod=admin_links&action=moder_all'</span><span class="sh_keyword">><b></span>В начало<span class="sh_keyword"></b></a></center></span>";

}
@unlink(ENGINE_DIR.'/cache/links_cat/links.php');
}
else
echo "<span class="sh_keyword"><div</span> <span class="sh_att">class</span><span class="sh_symbol">=</span><span class="sh_string">'main'</span><span class="sh_keyword">><center><b></span>Не выбран объект изменения.<span class="sh_keyword"><b></center></div></span>";

echofooter();
?>
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.