Seite 1 von 1

Edit Reason

Verfasst: 25.08.2007 02:56
von Jackson²
Huhu

Habe imo mein eigenes Forum am laufen, und will nen EditReason Mod drauf machen.
Die Datei viewtopic.php macht mir allerdings viel ärger.
Die Installations Datei spuckt eigentlich alles gut aus:

Code: Alles auswählen

#
#-----[ OPEN ]-----
#
viewtopic.php

#
#-----[ FIND]-----
#
//
// Go ahead and pull all data for this topic
//

$sql = "SELECT

#
#-----[ IN-LINE FIND ]-----
#
pt.post_subject, pt.bbcode_uid

#
#-----[ IN-LINE AFTER, ADD ]-----
#
, er.text, er.user

#
#-----[ FIND ]-----
#
" . POSTS_TEXT_TABLE . " pt

#
#-----[ IN-LINE AFTER, ADD ]-----
# Importantly: The space at the beginning!

 LEFT JOIN " . EDIT_REASON_TABLE . " er ON pt.post_id = er.post_id

#
#-----[ FIND ]-----
#
		'U_MINI_POST' => $mini_post_url,
		'U_POST_ID' => $postrow[$i]['post_id'])
	);

#
#-----[ AFTER, ADD ]-----
#
	// Edit-Reason
	$edit_reason_include = 5;
	include($phpbb_root_path . 'includes/edit_reason.'.$phpEx);

#
1. Wenn ich

Code: Alles auswählen

#
#-----[ FIND]-----
#
//
// Go ahead and pull all data for this topic
//

$sql = "SELECT

#
#-----[ IN-LINE FIND ]-----
#
pt.post_subject, pt.bbcode_uid
erledigt habe, dann kommt folgende Fehlermeldung:
Could not obtain post/user information.

DEBUG MODE

SQL Error : 1109 Unknown table 'er' in field list

SELECT u.username, u.user_id, u.user_posts, u.user_from, u.user_website, u.user_email, u.user_icq, u.user_aim, u.user_yim, u.user_regdate, u.user_msnm, u.user_viewemail, u.user_rank, u.user_sig, u.user_sig_bbcode_uid, u.user_avatar, u.user_avatar_type, u.user_allowavatar, u.user_allowsmile, u.user_warn, u.user_level, p.*, pt.post_text, pt.post_subject, pt.bbcode_uid, er.text, er.user FROM phpbb_posts p, phpbb_users u, phpbb_posts_text pt WHERE p.topic_id = 7 AND pt.post_id = p.post_id AND u.user_id = p.poster_id ORDER BY p.post_time ASC LIMIT 0, 10

Line : 400
File : viewtopic.php
Wenn ich die Zeilen wie oben beschrieben umgeändert habe, siehts bei mir so aus:

Code: Alles auswählen


//
// Go ahead and pull all data for this topic
//
$sql = "SELECT u.username, u.user_id, u.user_posts, u.user_from, u.user_website, u.user_email, u.user_icq, u.user_aim, u.user_yim, u.user_regdate, u.user_msnm, u.user_viewemail, u.user_rank, u.user_sig, u.user_sig_bbcode_uid, u.user_avatar, u.user_avatar_type, u.user_allowavatar, u.user_allowsmile, u.user_warn, u.user_level, p.*, pt.post_text, pt.post_subject, pt.bbcode_uid, er.text, er.user

Habe auch schon versucht den Schritt zu übergehen, aber dann kommt ein direkter Page Error...

Hat er ne Lösung ? :roll:
Das Forum ist ein phpbb 2.0.22 er...
MOD ist der Edit Reason

Verfasst: 25.08.2007 10:39
von punkface
Hm? Solange du nicht auch

Code: Alles auswählen

# 
#-----[ FIND ]----- 
# 
" . POSTS_TEXT_TABLE . " pt 

# 
#-----[ IN-LINE AFTER, ADD ]----- 
# Importantly: The space at the beginning! 

 LEFT JOIN " . EDIT_REASON_TABLE . " er ON pt.post_id = er.post_id
in die gleiche SQL Abfrage eingebaut hast, kann das natürlich nichts werden.

Die Lösung ist also den MOD komplett einzubauen :o

Verfasst: 25.08.2007 11:09
von Jackson²
punkface hat geschrieben: #-----[ IN-LINE AFTER, ADD ]-----
# Importantly: The space at the beginning!

LEFT JOIN " . EDIT_REASON_TABLE . " er ON pt.post_id = er.post_id[/code]
Ok, da ist nun die Frage für mich,

Da ist direkt unter der Raute eine Leerstelle, muss die MIT darein, oder nicht ? Weil, anscheinend ist das der Fehler. Kommt mir ein wenig komisch vor, weil bisher konnte ich alles so genau kopieren wie es da stand, nur nun ist da noch eine leerstelle, obwohl da steht In-Line After...

-----------------------------------

Edit: Ich glaube die Zeilen habe ich nun richtig.

Allerdings gleich das Nachfolgende Problem:

Das soll gemacht werden:

Code: Alles auswählen

 #
#-----[ FIND ]-----
#
		'U_MINI_POST' => $mini_post_url,
		'U_POST_ID' => $postrow[$i]['post_id'])
	);

#
#-----[ AFTER, ADD ]-----
#
	// Edit-Reason
	$edit_reason_include = 5;
	include($phpbb_root_path . 'includes/edit_reason.'.$phpEx);
Aussehen tut es dann so:

Code: Alles auswählen

                'U_MINI_POST' => $mini_post_url,
		'U_POST_ID' => $postrow[$i]['post_id'])
		// Edit-Reason
		$edit_reason_include = 5;
		include($phpbb_root_path . 'includes/edit_reason.'.$phpEx
	);
}
Er sagt mir in der Fehlermeldung dass in der Zeile 1280 der Fehler liegt.
Das wäre

Code: Alles auswählen

 "$edit_reason_include = 5;"
Allerdings ist es komplett gleich mit dem in der Installations erläuterung. ??!!

Hier noch die genaue Fehlermeldung:
Parse error: syntax error, unexpected T_VARIABLE in /usr/export/www/vhosts/funnetwork/hosting/lilly1991/Forum/phpBB2/viewtopic.php on line 1280

Verfasst: 25.08.2007 11:52
von punkface
Allerdings ist es komplett gleich mit dem in der Installations erläuterung. ??!!
Hm? Ne, nicht wirklich.

Du sollst

Code: Alles auswählen

   // Edit-Reason 
   $edit_reason_include = 5; 
   include($phpbb_root_path . 'includes/edit_reason.'.$phpEx);
nach und nicht vor einfügen.

Verfasst: 25.08.2007 12:46
von Jackson²
Soweit habe ich das nun alles richtig fertig.

Allerdings denke ich das in der SQL was fehlt da die momentane Fehlermeldun so ausschaut:

Could not delete edit-reason

DEBUG MODE

SQL Error : 1146 Table 'lilly1991.EDIT_REASON_TABLE' doesn't exist

DELETE FROM EDIT_REASON_TABLE WHERE post_id=22

Line : 159
File : edit_reason.php


Ich denke mal das das entscheidend ist:


SQL Error : 1146 Table 'lilly1991.EDIT_REASON_TABLE' doesn't exist

edit: die fehlermeldung kommt aber nur, wenn ich beiträge editieren will, oder löschen will!

Verfasst: 25.08.2007 13:06
von punkface
KB:sql_error
constants.php richtig angepasst?

Verfasst: 25.08.2007 19:26
von Jackson²
Ok, Problem gelöst.

Danke für die Hilfe.