Seite 1 von 1

TOP TEN Liste - extern

Verfasst: 30.09.2003 00:38
von xipodeus
Hi @ all,

habe ein kleines PHP-Script, welches die letzen zehn Posts aus der Datenbank holt.

Code: Alles auswählen

<?
$MY_HOST = "localhost";
$MY_DB_NAME = "xxx";
$MY_USER = "xxx";
$MY_PASS = "xxx";
$MY_DB_TABLE = "phpbb_posts_text";
$num_view_message = 11;


$connect = mysql_connect($MY_HOST, $MY_USER, $MY_PASS);
if(! $connect)
die("KEINE VERBINDUNG ZUR SERVER");

mysql_select_db($MY_DB_NAME, $connect)
or die ("KEINE VERBINDUNG ZUR DATENBANK");
?>

<table border='0' cellpadding="4" cellspacing="1">

<?

$count_view = 0;

$topten = mysql_query("SELECT post_id, post_subject FROM $MY_DB_TABLE ORDER by post_id DESC");			
	while($toptenausgabe = mysql_fetch_object($topten)) {

$count_view++;

$topten_title = $toptenausgabe->post_subject;
$post_id_db = $toptenausgabe->post_id;

	$topten_id = mysql_query("SELECT topic_id FROM phpbb_posts WHERE post_id='$post_id_db'");			
		while($toptenausgabe_id = mysql_fetch_object($topten_id)) {
		$t = $toptenausgabe_id->topic_id;	
		}
if ( $count_view < $num_view_message ) {
?>

<tr><td class="mntopboard"><b>- <a href='viewtopic.php?t=<? echo $t; ?>' target='newbrows'><? echo $topten_title; ?></a>
</b></span></td>
</tr>
<? } } ?>
</table>
dieses kann ich dann beliebig auf irgendwelchen Seiten als PHP Code einbauen. Funzt soweit ganz gut.
-------------------------------------------------------------------------------------

Das Problem liegt darin, wenn einer keinen Title in dem RELPY POST eingibt, dann steht da auch nix drin in meiner TOP-TEN Liste.

Wie kann ich es machen, das nach einem REPLY POST wenn nichts im TITLE eingegeben worden ist, automatisch dann das Thema um was es ging (also das Haupthema) in die Datenbank geschrieben wird?

Ich hoffe ich mein Problem richtig beschrieben. :-?


Hab schon nach Lösungen hier im Forum geschaut, aber nix brauchbares gefunden - oder hab ich die falschen KEYWORDS (auto title reply) benutzt ???

Bin dankbar für jede Antwort :)
Übrigens geniale Community - so soll's sein :)

CU Xipodeus

Verfasst: 30.09.2003 03:04
von Leuchte
Wie kann ich es machen, das nach einem REPLY POST wenn nichts im TITLE eingegeben worden ist, automatisch dann das Thema um was es ging (also das Haupthema) in die Datenbank geschrieben wird?
wie kann ich das verstehen... das script liest den titel aus und zeigt es in deiner datei an. wenn einer antwortet, wird der titel des antwortenden wieder ausgelesen (TITLE) ?
und wenn kein titel angegeben wird, wieder der erste titel? ich steh aufm schlauch

btw: verschoben nach Coding & Technik

hmmm

Verfasst: 30.09.2003 03:14
von X1PODEUS
Leuchte hat geschrieben:wie kann ich das verstehen... das script liest den titel aus und zeigt es in deiner datei an. wenn einer antwortet, wird der titel des antwortenden wieder ausgelesen (TITLE) ?
und wenn kein titel angegeben wird, wieder der erste titel?
Das ist ja das verrückte, das macht er eben nicht. Kannst dich selber überzeugen.

http://www.funskatecup.de/db_forum_top10.php

und hier das Board

http://www.funskatecup.de/forum/viewtopic.php?t=32

verstehst was ich meine ?

Verfasst: 30.09.2003 09:31
von Pyramide

Code: Alles auswählen

SELECT p.post_id, if(length(pt.post_subject)>0, pt.post_subject, t.topic_title) AS title
FROM phpbb_posts p
JOIN phpbb_posts_text pt ON (p.post_id = pt.post_id)
JOIN phpbb_topics t ON (t.topic_id = p.topic_id)
ORDER by p.post_time DESC

?

Verfasst: 30.09.2003 09:47
von xipodeus
Pyramide hat geschrieben:

Code: Alles auswählen

SELECT p.post_id, if(length(pt.post_subject)>0, pt.post_subject, t.topic_title) AS title
FROM phpbb_posts p
JOIN phpbb_posts_text pt ON (p.post_id = pt.post_id)
JOIN phpbb_topics t ON (t.topic_id = p.topic_id)
ORDER by p.post_time DESC
Danke - wo genau muss ich das eintragen?

Verfasst: 30.09.2003 10:07
von Pyramide
Normalerweise übergibt man SQL-Statements an mysql_query...