Weergeeft alle afbeelding ipv alleen uit 1 map

Hulp nodig bij een modificaties of op zoek naar een MOD?
Forumregels

LEES: Richtlijnen voor Support. Vul de support template in!
phpBB3.0.x
Verschaf iemand geen servertoegang tenzij het niet anders kan. Maak altijd eerst een volledige backup en verander de inloggevens na afloop. Eigen risico.
Plaats reactie
Gerard316
Berichten: 56
Lid geworden op: 21 sep 2007, 22:01

Weergeeft alle afbeelding ipv alleen uit 1 map

Bericht door Gerard316 » 11 aug 2013, 19:52

phpBB versie:
Laatste
Heb je onlangs een andere modificatie of stijl geïnstalleerd?
Nee

Wat is het probleem?[/list]

Ik ben bezig om een nieuws pagina te maken. Hier moet nog wat dingetjes bij komen zoals bijvoorbeeld een rubrieks afbeeldingen.

Nu heb ik via het acp iets gemaakt waardoor ik de afbeeldingen kan krijgen.
Helaas krijg ik een volle lijst met afbeeldingen die ik niet nodig heb.

Hoe krijg ik het voor elkaar om alleen de afbeeldingen te krijgen die in de map images/rubrieks staan?

ACP_RUBRIEKS.PHP

Code: Selecteer alles

<?php
/**
*
* Static rubrieks MOD acp module file
*
* @version $Id$
* @copyright (c) 2009 Vojtěch Vondra
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/

/**
* @ignore
*/
if (!defined('IN_PHPBB'))
{
	exit;
}

/**
* @package acp
*/
class acp_rubrieks
{
	var $u_action;

	function main($id, $mode)
	{
		global $db, $user, $auth, $template, $cache;
		global $config, $phpbb_root_path, $phpbb_admin_path, $phpEx;

    include($phpbb_root_path . 'includes/acp/info/acp_rubrieks.' . $phpEx);
    
    // MOD language file gets added automatically
		$user->add_lang(array('posting'));

		// Set up general vars
		$action 	= request_var('action', '');
		$action	 = (isset($_POST['add'])) ? 'add' : $action;
		$action	 = (isset($_POST['save'])) ? 'save' : $action;
		$rubriek_id = request_var('id', 0);

		// Handle install and update through ACP file.
    $module_info = new acp_rubrieks_info();
    $module_info_array = $module_info->module();
		$mod_version = $module_info_array['version'];

		if (!isset($config['static_rubrieks_version']))
		{
			$module_info->install($this->u_action);
		}
		else if (version_compare($config['static_rubrieks_version'], $mod_version, '<'))
		{
			$module_info->update($this->u_action);
		}

		// Template and rubrieks title
		$this->tpl_name = 'acp_rubrieks';
		$this->rubriek_title = 'ACP_MANAGE_RUBRIEKS';

		$form_name = 'acp_rubrieks';
		add_form_key($form_name);

		switch ($action)
		{
			case 'save':

				if (!check_form_key($form_name))
				{
					trigger_error($user->lang['FORM_INVALID']. adm_back_link($this->u_action), E_USER_WARNING);
				}
				$rubriek_title = utf8_normalize_nfc(request_var('title', '', true));
				$rubriek_image = request_var('rubriek_image', '');

				// The rubriek image has to be a jpg, gif or png
				if ($rubriek_image != '' && !preg_match('#(\.gif|\.png|\.jpg|\.jpeg)$#i', $rubriek_image))
				{
					$rubriek_image = '';
				}

				if (!$rubriek_title)
				{
					trigger_error($user->lang['NO_RUBRIEK_TITLE'] . adm_back_link($this->u_action), E_USER_WARNING);
				}

				$sql_ary = array(
					'rubriek_title'		=> $rubriek_title,
					'rubriek_image'		=> htmlspecialchars_decode($rubriek_image)
				);
				
				if ($rubriek_id)
				{
					$sql = 'UPDATE ' . RUBRIEKS_TABLE . ' SET ' . $db->sql_build_array('UPDATE', $sql_ary) . " WHERE rubriek_id = $rubriek_id";
					$message = $user->lang['RUBRIEK_UPDATED'];

					add_log('admin', 'LOG_RUBRIEK_UPDATED', $rubriek_title);
				}
				else
				{
					$sql = 'INSERT INTO ' . RUBRIEKS_TABLE . ' ' . $db->sql_build_array('INSERT', $sql_ary);
					$message = $user->lang['RUBRIEK_ADDED'];

					add_log('admin', 'LOG_RUBRIEK_ADDED', $rubriek_title);
				}
				$db->sql_query($sql);

				$cache->destroy('_rubrieks');

				trigger_error($message . adm_back_link($this->u_action));

			break;

			case 'delete':

				if (!$rubriek_id)
				{
					trigger_error($user->lang['MUST_SELECT_RUBRIEK'] . adm_back_link($this->u_action), E_USER_WARNING);
				}

				if (confirm_box(true))
				{
					$sql = 'SELECT rubriek_title
						FROM ' . RUBRIEKS_TABLE . '
						WHERE rubriek_id = ' . $rubriek_id;
					$result = $db->sql_query($sql);
					$rubriek_title = (string) $db->sql_fetchfield('rubriek_title');
					$db->sql_freeresult($result);

					$sql = 'DELETE FROM ' . RUBRIEKS_TABLE . "
						WHERE rubriek_id = $rubriek_id";
					$db->sql_query($sql);

					$sql = 'UPDATE ' . USERS_TABLE . "
						SET user_rubriek = 0
						WHERE user_rubriek = $rubriek_id";
					$db->sql_query($sql);

					$cache->destroy('_rubrieks');

					add_log('admin', 'LOG_rubriek_REMOVED', $rubriek_title);
				}
				else
				{
					confirm_box(false, $user->lang['CONFIRM_OPERATION'], build_hidden_fields(array(
						'i'			=> $id,
						'mode'		=> $mode,
						'rubriek_id'	=> $rubriek_id,
						'action'	=> 'delete',
					)));
				}

			break;

			case 'edit':
			case 'add':

				$data = $rubrieks = $existing_imgs = array();
				
				$sql = 'SELECT *
					FROM ' . RUBRIEKS_TABLE . '
					ORDER BY rubriek_title ASC, rubriek_id ASC';
				$result = $db->sql_query($sql);

				while ($row = $db->sql_fetchrow($result))
				{
					$existing_imgs[] = $row['rubriek_image'];

					if ($action == 'edit' && $rubriek_id == $row['rubriek_id'])
					{
						$rubrieks = $row;
					}
				}
				$db->sql_freeresult($result);

				$imglist = filelist($phpbb_root_path . $config['rubrieks_path'], '');
				$edit_img = $filename_list = '';

				foreach ($imglist as $path => $img_ary)
				{
					sort($img_ary);

					foreach ($img_ary as $img)
					{
						$img = $path . $img;

						if ($rubrieks && $img == $rubrieks['rubriek_image'])
						{
							$selected = ' selected="selected"';
							$edit_img = $img;
						}
						else
						{
							$selected = '';
						}

						if (strlen($img) > 255)
						{
							continue;
						}

						$filename_list .= '<option value="' . htmlspecialchars($img) . '"' . $selected . '>' . $img . ((in_array($img, $existing_imgs)) ? ' ' . $user->lang['RUBRIEK_IMAGE_IN_USE'] : '') . '</option>';
					}
				}

				$filename_list = '<option value=""' . (($edit_img == '') ? ' selected="selected"' : '') . '>----------</option>' . $filename_list;
				unset($existing_imgs, $imglist);

				$template->assign_vars(array(
					'S_EDIT'			=> true,
					'U_BACK'			=> $this->u_action,
					'RUBRIEKS_PATH'		=> $phpbb_root_path . $config['rubrieks_path'],
					'U_ACTION'			=> $this->u_action . '&id=' . $rubriek_id,

					'RUBRIEK_TITLE'		=> (isset($rubrieks['rubriek_title'])) ? $rubrieks['rubriek_title'] : '',
					'S_FILENAME_LIST'	=> $filename_list,
					'RUBRIEK_IMAGE'		=> ($edit_img) ? $phpbb_root_path . $config['rubrieks_path'] . '/' . $edit_img : $phpbb_admin_path . 'images/spacer.gif',)
				);
						

				return;

			break;
		}
	
		$template->assign_vars(array(
			'U_ACTION'		=> $this->u_action)
		);

		$sql = 'SELECT *
			FROM ' . RUBRIEKS_TABLE . '
			ORDER BY rubriek_title DESC, rubriek_id ASC, rubriek_title ASC';
		$result = $db->sql_query($sql);

		while ($row = $db->sql_fetchrow($result))
		{
			$template->assign_block_vars('rubrieks', array(
				'S_RUBRIEK_IMAGE'		=> ($row['rubriek_image']) ? true : false,

				'RUBRIEK_IMAGE'		=> $phpbb_root_path . $config['rubrieks_path'] . '/' . $row['rubriek_image'],
				'RUBRIEK_TITLE'		=> $row['rubriek_title'],

				'U_EDIT'			=> $this->u_action . '&action=edit&id=' . $row['rubriek_id'],
				'U_DELETE'			=> $this->u_action . '&action=delete&id=' . $row['rubriek_id'])
			);	
		}
		$db->sql_freeresult($result);
	}
}

?>
Ik hoop dat iemand mij kan helpen :)

Gebruikersavatar
Ger
Berichten: 4864
Lid geworden op: 03 jan 2006, 22:23
Locatie: 192.68.1.100
Contacteer:

Re: Weergeeft alle afbeelding ipv alleen uit 1 map

Bericht door Ger » 12 aug 2013, 07:39

Misschien moet je even alleen het gedeelte van je code plaatsen waar je afbeeldingen ophaalt. Dan hoeven anderen dáár alvast niet naar te zoeken.

Gerard316
Berichten: 56
Lid geworden op: 21 sep 2007, 22:01

Re: Weergeeft alle afbeelding ipv alleen uit 1 map

Bericht door Gerard316 » 12 aug 2013, 10:02

Ger schreef:Misschien moet je even alleen het gedeelte van je code plaatsen waar je afbeeldingen ophaalt. Dan hoeven anderen dáár alvast niet naar te zoeken.
Nee juist niet. Zelf weet ik niet zo heel veel van phpbb en wie weet ben ik iets vergeten om in te vullen.
Aangezien er veel functies zijn kan het altijd handig zijn.

Probleem is dat ik alle afbeeldingen kan selecteren uit alle mappen terwijl ik gewoon van een map wil selecteren.

Gebruikersavatar
Ger
Berichten: 4864
Lid geworden op: 03 jan 2006, 22:23
Locatie: 192.68.1.100
Contacteer:

Re: Weergeeft alle afbeelding ipv alleen uit 1 map

Bericht door Ger » 12 aug 2013, 10:23

Ik zie staan:

Code: Selecteer alles

$imglist = filelist($phpbb_root_path . $config['rubrieks_path'], ''); 
Hiermee worden de bestanden weergegeven. Hij kijkt dus naar de root van je forum en dan in de map die je hebt ingesteld bij je config['rubrieks_path']. Heb je die wel juist ingesteld?

Gerard316
Berichten: 56
Lid geworden op: 21 sep 2007, 22:01

Re: Weergeeft alle afbeelding ipv alleen uit 1 map

Bericht door Gerard316 » 12 aug 2013, 11:14

Ger schreef:Ik zie staan:

Code: Selecteer alles

$imglist = filelist($phpbb_root_path . $config['rubrieks_path'], ''); 
Hiermee worden de bestanden weergegeven. Hij kijkt dus naar de root van je forum en dan in de map die je hebt ingesteld bij je config['rubrieks_path']. Heb je die wel juist ingesteld?
Deze heb ik ook ingesteld bij includes/functions.php
De rubrieks_path geeft toch aan dat die naar /images/rubrieks gaat?

Gebruikersavatar
Ger
Berichten: 4864
Lid geworden op: 03 jan 2006, 22:23
Locatie: 192.68.1.100
Contacteer:

Re: Weergeeft alle afbeelding ipv alleen uit 1 map

Bericht door Ger » 12 aug 2013, 11:21

Dat ligt er maar niet aan wat je er in je config staat. Als daar 'smurf' staat, dan zoekt-ie in home/phpbbsmurf. Als er '/images/rubrieks' staat, dan zoekt-ie in home/phpbb/images/rubrieks.

(NB: hierbij ga ik ervanuit dat jouw phpBB installatie in home/phpbb staat. Dat kan ik vanaf hier natuurlijk niet zien, maar doet er ook niet heel veel toe voor het begrip neem ik aan)

Gerard316
Berichten: 56
Lid geworden op: 21 sep 2007, 22:01

Re: Weergeeft alle afbeelding ipv alleen uit 1 map

Bericht door Gerard316 » 12 aug 2013, 11:57

Ger schreef:Dat ligt er maar niet aan wat je er in je config staat. Als daar 'smurf' staat, dan zoekt-ie in home/phpbbsmurf. Als er '/images/rubrieks' staat, dan zoekt-ie in home/phpbb/images/rubrieks.

(NB: hierbij ga ik ervanuit dat jouw phpBB installatie in home/phpbb staat. Dat kan ik vanaf hier natuurlijk niet zien, maar doet er ook niet heel veel toe voor het begrip neem ik aan)
Hij staat momenteel op mijn subdomein.
httpdocs/..

include/functions.php
Heb ik dit staan:

Code: Selecteer alles

'T_RUBRIEKS_PATH'            => "{$web_path}{$config['rubrieks_path']}/",
'T_RUBRIEKS'            => $config['rubrieks_path'],
 
Moet ik ergens dit nog toevoegen?

Code: Selecteer alles

$rubrieks_path = "../images/rubrieks/";
 

Gebruikersavatar
Ger
Berichten: 4864
Lid geworden op: 03 jan 2006, 22:23
Locatie: 192.68.1.100
Contacteer:

Re: Weergeeft alle afbeelding ipv alleen uit 1 map

Bericht door Ger » 12 aug 2013, 12:27

$config['rubrieks_path'] is iets anders dan $rubrieks_path.
$config is opgebouwd uit records in de database tabel phpbb_config. Staat daar een regel in met als config_name rubrieks_path? Zoniet, dan moet je die toevoegen via bijvoorbeeld phpMyAdmin.

Gerard316
Berichten: 56
Lid geworden op: 21 sep 2007, 22:01

Re: Weergeeft alle afbeelding ipv alleen uit 1 map

Bericht door Gerard316 » 12 aug 2013, 13:27

Ger schreef:$config['rubrieks_path'] is iets anders dan $rubrieks_path.
$config is opgebouwd uit records in de database tabel phpbb_config. Staat daar een regel in met als config_name rubrieks_path? Zoniet, dan moet je die toevoegen via bijvoorbeeld phpMyAdmin.
Ahhh kijk eens aan :)
Potjandorie! Gewoon iets kleins haha :P

Ben hier niet op gekomen ;)
Het werkt! Thanks a lot!

Volgende vraag volgt zsm als ik die heb ;)

Nogmaals BEDANKT!

Plaats reactie