Seite 2 von 4

Verfasst: 14.06.2006 19:42
von plexus-x
Super! Funktioniert einwandfrei. Echt tolle Leistung von dir... Danke, Danke! :grin:

Jetzt hab ich aber noch ein weiteres Problem über das ich mir vorher leider nicht den Kopf zerbrochen habe.

Die Leute können ja jetzt Themen mit dem vorgegebenen "News-Titel" im Forum eröffnen, aber leider immer und immer wieder, wenn sie z.B. nicht wissen, dass schon jemand anders diesen Thread aufgemacht hat. Es soll aber nicht generell im Forum ausgeschaltet werden, dass man mehrere Themen mit dem gleichen Titel schreiben kann.

Nicht falsch verstehen. Es soll lediglich beim Klick auf den Link (auf der News-Seite) überprüft werden, ob der Titel schon vorhanden ist. Ist er vorhanden, dann soll das Thema angezeigt werden. Wurde noch kein Thema eröffnet, dann soll wie gehabt die Antwort-Seite angezeigt werden.

Könnte man also nicht eine Funktion einbauen, dass überprüft wird ob schon ein Thema mit genau diesem Titel existiert?
ALSO: Wenn schon ein Thema mit dem diesem Titel aufgemacht wurde, dann soll er automatisch zu diesem Thema springen, ansonsten wie es jetzt bereits geht zur Antworten-Seite.


Ich hoffe dass ist verständlich! ;)

Verfasst: 14.06.2006 19:49
von Patrik
Dein news sind ja in der DB gespeichert. OdeR?

Falls, Ja, könntest du eine zusätzliche Spalte machen in der die Topic id, des aufgemachten Themas steht und man kommt dann zu dieser seite zum anzeigen. Falls aber in der Spalte 0, oder NULL oder -1 (wie du es halt amchen willst), dann kann kommt man auf die Thema erstellen seite, so wie du es bis jetzt schon gemacht hast.

Verfasst: 14.06.2006 19:57
von plexus-x
Gute Idee, aber wie komme ich an die "Topic ID"?

Verfasst: 14.06.2006 20:29
von Patrik
plexus-x hat geschrieben:Gute Idee, aber wie komme ich an die "Topic ID"?
Lass mich bitte eine Nacht drüber schlafen, morgen bekommst du die Lösung.

Verfasst: 14.06.2006 20:40
von plexus-x
Das find ich klasse! Danke schonmal! *freu*

Verfasst: 15.06.2006 20:10
von plexus-x
Na, haste keine Möglichkeit gefunden das hinzubekommen? :roll:

Verfasst: 15.06.2006 21:10
von Patrik
Tud mir leid, aber ich finde keine einzige INSERT INTO Anweisung in der postings.php Könnte diese vielleicht in einer anderen Datei sein? Wenn ja, sagt mir bitte in welcher.

Verfasst: 15.06.2006 21:29
von Ivan
das ganze ist auch in der functions_post.php zu finden.
Werde mir das morgen mal genauer anschauen und dir einen Lösungsvorschlag posten.


Gruß
Ivan

Verfasst: 15.06.2006 22:00
von Patrik
@Ivan
Danke für den Tipp mit der functions_post.php

@plexus-x
Ich hoffe die Änderungen funktionieren. Danach musst du zusätzlich zum Titel auch die NewsID mit der URL-Variable nid übergeben.

Code: Alles auswählen

##############################################################
## MOD Author:  Patrik < patrik@working-sheepdogs.at > (Patrik Sporeni) http://diezone.uttx.net/
##
## Installation Level: Easy
## Installation Time: 5 Minutes
## Files To Edit:
##   includes/functions_post.php
##   posting.php
##
## Included Files: N/A
##############################################################
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD
##############################################################
#
#-----[ OPEN ]------------------------------------------
#
includes/functions_post.php

#
#-----[ FIND ]------------------------------------------
#
	add_search_words('single', $post_id, stripslashes($post_message), stripslashes($post_subject));

#
#-----[ AFTER ADD ]------------------------------------------
#
	
	//
	// News
	//
	if(($mode == 'newtopic') && (!empty($news_id)))
	{
		$sql = "UPDATE deine_news_tabelle
			SET topic_id = $topic_id
			WHERE news_id = $news_id";
		if(!$db->sql_query($sql))
		{
			message_die(GENERAL_ERROR, 'Error in news', '', __LINE__, __FILE__, $sql);
		}
	}

#
#-----[ OPEN ]------------------------------------------
#
includes/posting.php

#
#-----[ FIND ]------------------------------------------
#
			$bbcode_uid = '';
#
#-----[ AFTER ADD ]------------------------------------------
#
			$news_id = (!empty($HTTP_POST_VARS['nid'])) ? $HTTP_POST_VARS['nid'] : (!empty($HTTP_GET_VARS['nid'])) ? $HTTP_GET_VARS['nid'] : '';

#
#-----[ FIND ]------------------------------------------
#
				submit_post($mode, $post_data, $return_message, $return_meta, $forum_id, $topic_id, $post_id, $poll_id, $topic_type, $bbcode_on, $html_on, $smilies_on, $attach_sig, $bbcode_uid, str_replace("\'", "''", $username), str_replace("\'", "''", $subject), str_replace("\'", "''", $message), str_replace("\'", "''", $poll_title), $poll_options, $poll_length);

#
#-----[ REPLACE WITH ]------------------------------------------
#
				if(empty($news_id))
				{
					submit_post($mode, $post_data, $return_message, $return_meta, $forum_id, $topic_id, $post_id, $poll_id, $topic_type, $bbcode_on, $html_on, $smilies_on, $attach_sig, $bbcode_uid, str_replace("\'", "''", $username), str_replace("\'", "''", $subject), str_replace("\'", "''", $message), str_replace("\'", "''", $poll_title), $poll_options, $poll_length);
				}
				else
				{
					submit_post($mode, $post_data, $return_message, $return_meta, $forum_id, $topic_id, $post_id, $poll_id, $topic_type, $bbcode_on, $html_on, $smilies_on, $attach_sig, $bbcode_uid, str_replace("\'", "''", $username), str_replace("\'", "''", $subject), str_replace("\'", "''", $message), str_replace("\'", "''", $poll_title), $poll_options, $poll_length, $news_id);
				}
#
#-----[ FIND ]------------------------------------------
#
		$hidden_form_fields .= '<input type="hidden" name="' . POST_FORUM_URL . '" value="' . $forum_id . '" />';

#
#-----[ REPLACE WITH ]------------------------------------------
#
		$hidden_form_fields .= '<input type="hidden" name="' . POST_FORUM_URL . '" value="' . $forum_id . '" /><input type="hidden" name="nid" value="' . $news_id . '" />';

#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM

Verfasst: 16.06.2006 12:00
von plexus-x
Danke dir dass du dir soviel Mühe gemacht hast. Nur wie soll ich dem Titel die NewsID mit der URL-Variable nid übergeben? Kannst du mir das bitte nochmal etwas genauer erklären?

Und was genau soll ich hier eintragen?

Code: Alles auswählen

$sql = "UPDATE deine_news_tabelle