Gästebuchmod Problem bitte schnell antworten!

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Gast123456

Gästebuchmod Problem bitte schnell antworten!

Beitrag von Gast123456 »

Hallo ich habe gerade den gästebuchmod installiert doch wenn ich ein benutzerprofil aufrufe kommt das:

Code: Alles auswählen

[phpBB Debug] PHP Notice: in file /includes/functions.php on line 3240: Invalid argument supplied for foreach()
Zurück zur Foren-Übersicht
Allgemeiner Fehler
SQL ERROR [ mysqli ]

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 5 [1064]

SQL

SELECT g.*, u.user_colour FROM phpbb_profile_guestbook g, phpbb_users u WHERE g.user_id = 335 AND g.poster_id = u.user_id ORDER BY g.gb_id DESC LIMIT 0,

BACKTRACE




An was liegt der fehler?




Edit:

Ich weiß jetzt das der fehler in der datei /memberlist.php liegt.

Aber was ist da falsch?
Helmut
Mitglied
Beiträge: 2048
Registriert: 27.12.2002 20:35
Wohnort: Augsburg

Re: Gästebuchmod Problem bitte schnell antworten!

Beitrag von Helmut »

Hallo Patrick1704,

wäre ganz nützlich, wenn du noch schreiben würdest, welchen Gästebuch Mod du verwendest?

Aber so wie ich die Fehlermeldung deute, könnte es sich hier um einen Einbaufehler handeln. Überprüfe doch noch einmal alle Schritte der Anleitung und schaue ob es genau so umgesetzt wurde.

Gruß Helmut
Ich bin nicht ganz dicht.... na und.
Gast123456

Re: Gästebuchmod Problem bitte schnell antworten!

Beitrag von Gast123456 »

Sorry
Diesen:
Hier

Ich habe mich genau an die Anleitung gehalten...
Alles genau dort reingeschrieben wo es hinsolte und auch datenbanken/tabbelen erstellt
Helmut
Mitglied
Beiträge: 2048
Registriert: 27.12.2002 20:35
Wohnort: Augsburg

Re: Gästebuchmod Problem bitte schnell antworten!

Beitrag von Helmut »

Hallo Patrick1704,

ok, scheint aber trotzdem ein Einbaufehler zu sein, poste doch mal von deiner functions.php die Zeilen 3230-3250 etwa. Die Fehlermeldung gibt ja einen Syntaxfehler aus, der Fehler muss nicht unbedingt in der members.php liegen.

Gruß Helmut
Ich bin nicht ganz dicht.... na und.
Gast123456

Re: Gästebuchmod Problem bitte schnell antworten!

Beitrag von Gast123456 »

Bist du dir sicher?
Ich habe mal getestet den backup der Memberlist.php zu verwenden und dann kan keine fehlermedung mehr.
(Natürlich war der mod auch nicht da)

Und die functions.php hab ich garnicht bearbeitet
(oder doch?
da steht sie wurde am 7 verändert obwohl ich selbst nichts gemacht habe)


Code: Alles auswählen

* Return a nicely formatted backtrace (parts from the php manual by diz at ysagoon dot com)
*/
function get_backtrace()
{
	global $phpbb_root_path;

	$output = '<div style="font-family: monospace;">';
	$backtrace = debug_backtrace();
	$path = phpbb_realpath($phpbb_root_path);

	foreach ($backtrace as $number => $trace)
	{
		// We skip the first one, because it only shows this file/function
		if ($number == 0)
		{
			continue;
		}

		// Strip the current directory from path
		if (empty($trace['file']))

Helmut
Mitglied
Beiträge: 2048
Registriert: 27.12.2002 20:35
Wohnort: Augsburg

Re: Gästebuchmod Problem bitte schnell antworten!

Beitrag von Helmut »

Hallo Patrick1704,

war das wirklich die vollständige Fehlermeldung aus deinem ersten Post oder stand da noch mehr dabei.

Eigentlich wollte ich den Bereich sehen wo diese Codestelle drinnen ist:

Code: Alles auswählen

SELECT g.*, u.user_colour FROM phpbb_profile_guestbook g, phpbb_users u WHERE g.user_id = 335 AND g.poster_id = u.user_id ORDER BY g.gb_id DESC LIMIT 0, 
Gut, kann sein dass es doch in der members.php ist, denn der von dir gepostete Bereich hat nur indirekt mit dem Fehler zu tun, vermutlich weil er an der Stelle hängen geblieben ist.

Gruß Helmut
Ich bin nicht ganz dicht.... na und.
Gast123456

Re: Gästebuchmod Problem bitte schnell antworten!

Beitrag von Gast123456 »

Ja das war die ganze Fehlermeldung

Oben Links stand das mit function.php

Dann in so einem Kästchen in rozt ganz groß Sql error.


Hier die memberlist.php:

Code: Alles auswählen

// BEGIN guestbook MOD
				// Get guestbook data...
					$bbcode_status	= ($config['allow_bbcode']) ? true : false;
					$limit = $member['user_guestbook_limit'];
					$userid_1 = $user->data['user_id'];
			  $user->add_lang('posting'); 
			  
			  $sql_guest = "SELECT g.*, u.user_colour
			  FROM  " . PROFILE_GUESTBOOK_TABLE . " g, " . USERS_TABLE . " u
			  WHERE g.user_id = $user_id
			  AND g.poster_id = u.user_id
			  ORDER BY g.gb_id DESC LIMIT $start, $limit";
			  $result_guest = $db->sql_query($sql_guest);
			  $db->sql_freeresult($result);
			  $statrow = array();
			  
			  $sql = "SELECT COUNT(g.gb_id) AS eintraege 
			  FROM " . PROFILE_GUESTBOOK_TABLE . " AS g 
			  WHERE g.user_id = $user_id";
			  $result = $db->sql_query($sql);
			  $row = $db->sql_fetchrow($result);
			  $totale_eintraege = $row['eintraege'];
			  
			  $profile_link = append_sid("{$phpbb_root_path}memberlist.$phpEx?mode=viewprofile&u=$user_id");
				  
			  while($row = $db->sql_fetchrow($result_guest))
			  {
			  $guestbook[] = $row;
			  }

			  	if (!empty($guestbook)) { $full = '1'; } else  { $full = '0'; }

			  $template->assign_vars(array(
			  'S_PAGINATION' => generate_pagination($profile_link, $totale_eintraege, $limit, $start) .'<hr/>' ,
			  'S_BBCODE_ALLOWED'			=> $bbcode_status,
			  'S_GUESTBOOK_ACTIVE'			=> $member['user_guestbook_active'],
			  'S_GB_ACTION'				=> append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=viewprofile'),
			  'S_GUESTBOOK_FULL'	=> $full,
			  ));

			  
if (!empty($guestbook))
 {
			  for($i=0; $i < count($guestbook); $i++) 
	 {

				 $guestbook_profile_id = $guestbook[$i]['poster_id'];
				 $gb_id = $guestbook[$i]['gb_id'];
							 
				 if ( $userid_1 == $user_id || $auth->acl_get('a_') )
						 {	
							 $delete = $user->lang['GUESTBOOK_DELETE'];
				  $delete_link = append_sid("{$phpbb_root_path}memberlist.$phpEx?mode=viewprofile&u=$user_id&id=$gb_id");
				  $delete_ausgabe = "<a href=$delete_link>$delete</a> ";
				  $can_delete = $guestbook_profile_id;
				  }
				  else if ( $guestbook_profile_id = $userid_1 && $member['user_guestbook_delete'] = '1')
						 {	
					$delete = $user->lang['GUESTBOOK_DELETE'];
				  $delete_link = append_sid("{$phpbb_root_path}memberlist.$phpEx?mode=viewprofile&u=$user_id&id=$gb_id");
				  $delete_ausgabe = "<a href=$delete_link>$delete</a> ";
				  $can_delete = $userid_1;
				      }



			  $template->assign_block_vars("guestbook",array(
			  'GUESTBOOK_ID'		=> $guestbook[$i]['gb_id'],
			  'GUESTBOOK_USER_ID'	=> $guestbook[$i]['user_id'],
			  'GUESTBOOK_POSTER_ID'	=> $guestbook[$i]['poster_id'],
			  'GUESTBOOK_GB_TIME'	=> $user->format_date($guestbook[$i]['gb_time']),
			  'GUESTBOOK_TITLE'	=> $guestbook[$i]['title'],
			  'GUESTBOOK_ENTRY'	=> generate_text_for_display( nl2br($guestbook[$i]['message']), $guestbook[$i]['bbcode_uid'], $guestbook[$i]['bbcode_bitfield'], 7),
			  'GUESTBOOK_POSTER_NAME' => get_username_string('full', $guestbook[$i]['poster_id'], ($guestbook[$i]['user_guest_name']) ? $guestbook[$i]['user_guest_name'] : $user->lang['GUEST'], $guestbook[$i]['user_colour']),
			  'GUESTBOOK_PROFILE_URL' => append_sid("{$phpbb_root_path}memberlist.$phpEx", "mode=viewprofile&u=$guestbook_profile_id"),
			  'GUESTBOOK_DELETE_URL'  => isset($delete_ausgabe) ? $delete_ausgabe : '',
			  'GUESTBOOK_USER_ID'  => $can_delete,
			  ));
	  }
 }

	  //delete guestbook data...
		$delete_guest		= request_var("id", 0);
		  
		  if ($delete_guest)
			 {	
				  $sql = "DELETE FROM " . PROFILE_GUESTBOOK_TABLE . " WHERE gb_id = $delete_guest";
				  $db->sql_query($sql);
				  $back_link = append_sid("{$phpbb_root_path}memberlist.$phpEx?mode=viewprofile&u=$user_id");
				  meta_refresh(3, append_sid("{$phpbb_root_path}memberlist.$phpEx?mode=viewprofile&u=$user_id"));
				  trigger_error($user->lang['GUESTBOOK_DELETE_SEND'] . '<br /><br /><a href="' . $back_link . '">' . $user->lang['GUESTBOOK_BACK'] . '</a>');	
			 }
				  
		  //add guestbook data...
 

			  $submit_guest		= request_var('submit_guestbook', false);
		  if ($submit_guest)
			 {

				if ($member['user_guestbook_send'] = '0')
				{
				  $back_link = append_sid("{$phpbb_root_path}memberlist.$phpEx?mode=viewprofile&u=$user_id");
				  meta_refresh(3, append_sid("{$phpbb_root_path}memberlist.$phpEx?mode=viewprofile&u=$user_id"));	
				  trigger_error($user->lang['GUESTBOOK_NOT_SEND'] . '<br /><br /><a href="' . $back_link . '">' . $user->lang['GUESTBOOK_BACK'] . '</a>');
				}
				else
				{
	  			
				  include_once($phpbb_root_path . 'includes/message_parser.' . $phpEx);
				  $message_parser 			= new parse_message();
				  $message_parser->message 	= request_var('message', '', true);
				  if($message_parser->message)
				  {
				  $message_parser->parse(true, true, true, true, false, true, true, true);
				  }
				  $message = request_var('message', '', true);
				  $title = utf8_normalize_nfc(request_var('title', '', true));
				  $back_link = append_sid("{$phpbb_root_path}memberlist.$phpEx?mode=viewprofile&u=$user_id");
				  if(empty($message) || empty($title))
					{
						  
						  meta_refresh(3, append_sid("{$phpbb_root_path}memberlist.$phpEx?mode=viewprofile&u=$user_id"));	
						  trigger_error($user->lang['GUESTBOOK_ERROR'] . '<br /><br /><a href="' . $back_link . '">' . $user->lang['GUESTBOOK_BACK'] . '</a>');		 
					}


				  $sql = 'INSERT INTO ' . PROFILE_GUESTBOOK_TABLE . '' . $db->sql_build_array('INSERT', array(
				  'user_id'	=> (int) $user_id,
				  'poster_id'	=> (int) $user->data['user_id'],
				  'gb_time'	=> (int) time(),
				  'title'		=> (string) $title,
				  'message'	=> (string) $message_parser->message,
				  'user_guest_name'	=> (string) $user->data['username'],
				  'bbcode_uid'		=> (string) $message_parser->bbcode_uid,
				  'bbcode_bitfield'	=> (string) $message_parser->bbcode_bitfield)
				  );
				  $db->sql_query($sql);
			
				if($member['user_allow_pm'] = '1')
				{	
					include_once($phpbb_root_path . 'includes/functions_privmsgs.' . $phpEx);

	$subject	= sprintf($user->lang['GUESTBOOK_PM_ENTRY_TITLE'], $user->data['username']);
	$message	= sprintf($user->lang['GUESTBOOK_PM_ENTRY'], $user->data['username'], $title, $back_link);
	$uid			= $bitfield			= $options	= '';	
	$allow_bbcode	= $allow_smilies	= true;
	$allow_urls		= false;
	generate_text_for_storage($message, $uid, $bitfield, $options, $allow_bbcode, $allow_urls, $allow_smilies);
	$message			= generate_text_for_display($message, $uid, $bitfield, $options);

	$pm_data = array(
		'address_list'		=> array('u' => array($user_id => 'to')),
		'from_user_id'		=> $user->data['user_id'],
		'from_user_ip'		=> $user->data['user_ip'],
		'from_username'		=> $user->data['username'],
		'enable_sig'		=> false,
		'enable_bbcode'		=> true,
		'enable_smilies'	=> true,
		'enable_urls'		=> false,
		'icon_id'			=> 0,
		'bbcode_bitfield'	=> $bitfield,
		'bbcode_uid'		=> $uid,
		'message'			=> $message,
	);

	submit_pm('post', $subject, $pm_data, false);

				}

				  $back_link = append_sid("{$phpbb_root_path}memberlist.$phpEx?mode=viewprofile&u=$user_id");
				  meta_refresh(3, append_sid("{$phpbb_root_path}memberlist.$phpEx?mode=viewprofile&u=$user_id"));	
				  trigger_error($user->lang['GUESTBOOK_ADD'] . '<br /><br /><a href="' . $back_link . '">' . $user->lang['GUESTBOOK_BACK'] . '</a>');
				 }	
			}

Das war das was ich eingebaut habe

Am anfang ist der gesuchte text
Helmut
Mitglied
Beiträge: 2048
Registriert: 27.12.2002 20:35
Wohnort: Augsburg

Re: Gästebuchmod Problem bitte schnell antworten!

Beitrag von Helmut »

Hallo Patrick1704,

du hast aber schon die ganzen SQL Anweisungen nach der Anleitung durchgeführt?

Code: Alles auswählen

CREATE TABLE `phpbb_profile_guestbook` (
	`gb_id` int(10) NOT NULL auto_increment,
	`user_id` int(10) NOT NULL default '0',
	`poster_id` int(10) NOT NULL default '0',
	`gb_time` int(10) NOT NULL default '0',
	`title` varchar(255) NOT NULL default '',
	`message` text NOT NULL,
	`bbcode_uid` varchar(8) collate utf8_bin NOT NULL,
	`bbcode_bitfield` varchar(5) collate utf8_bin NOT NULL,
	`user_guestbook_limit` VARCHAR(255) NULL,
	`user_guest_name` varchar(64) NOT NULL default '',
PRIMARY KEY  (`gb_id`));


ALTER TABLE `phpbb_users` ADD `user_guestbook_active` TINYINT( 1 ) DEFAULT '1' NOT NULL;

ALTER TABLE `phpbb_users` ADD `user_guestbook_delete` TINYINT( 1 ) DEFAULT '1' NOT NULL;

ALTER TABLE `phpbb_users` ADD `user_guestbook_send` TINYINT( 1 ) DEFAULT '1' NOT NULL;

ALTER TABLE `phpbb_users` ADD `user_guestbook_limit` INT(11) DEFAULT '10' NOT NULL;
gehe doch mal versuchsweise her und tausche:

Code: Alles auswählen

$limit = $member['user_guestbook_limit']; 
mit folgendem aus:

Code: Alles auswählen

$limit = 5; 
Kommt dann die Fehlermeldung immer noch?

Gruß Helmut
Ich bin nicht ganz dicht.... na und.
Gast123456

Re: Gästebuchmod Problem bitte schnell antworten!

Beitrag von Gast123456 »

Ja wie gesagt ich habe auch die Tabellen gemacht.

Okay ich teste mal....
*Testen*

jetzt kommt der fehler:

Code: Alles auswählen

»¿[phpBB Debug] PHP Notice: in file /includes/functions.php on line 3240: Invalid argument supplied for foreach()
Zurück zur Foren-Übersicht
Allgemeiner Fehler
SQL ERROR [ mysqli ]

Table 'dsprojekts.phpbb_profile_guestbook' doesn't exist [1146]

SQL

SELECT g.*, u.user_colour FROM phpbb_profile_guestbook g, phpbb_users u WHERE g.user_id = 2 AND g.poster_id = u.user_id ORDER BY g.gb_id DESC LIMIT 0, 5

BACKTRACE

edit:
Ich habe nochmal den SQl befehl gegeben und nun gehts im Forum
Es kommt keine Fehlermeldung!

Aber warum?
Ich habe die Tabbelen schon erstellt gehabt!
Ganz sicher...

Aber ein gästebuch sehe ich nun nicht.

Wo sieht man das?
Gast123456

Re: Gästebuchmod Problem bitte schnell antworten!

Beitrag von Gast123456 »

Könnte mir jemand sagen warum ich jetzt das Gästebuch nicht sehe bzw wo man es sehen sollte?
Antworten

Zurück zu „[3.0.x] Mod Support“