Mod für Buchempfehlung

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

Mod für Buchempfehlung

Beitrag von Groovecommander »

Hallo,

ich suche einen Mod für eine Buchempfehlung, d.h. es sollte

- über das ACP möglich sein, Bücher einzugeben, die dann in einer Liste ausgegeben werden (im ACP die ISBN-Nummer eingeben und dann erscheint Artikel - so wie bei der AWSW - AmazonBox)
- es sollte die Möglichkeit bestehen, dass die User diesen direkt bestellen können
- die User sollten ebenfalls Empfehlungen geben können, die dann nach einer Prüfung vom Admin hinzugefügt werden oder nicht. ( so wie beim advanced Links Mod, wo die Links erst eingefügt werden, wenn man diese genehmigt)

Ich habe dazu folgendes Beispiel gefunden: http://www.im-coma.de/books.php

Dort wurde das ganze mit der JA-BücherBox realisiert und dann angepasst.
Es wäre echt super, wenn das jemand als MOD für PhpBB realisieren könnte.
Benutzeravatar
m0bby
Mitglied
Beiträge: 82
Registriert: 23.03.2004 13:19
Kontaktdaten:

Beitrag von m0bby »

Ist zwar nicht wirklich das, was du gesucht hast, aber vielleicht hilft es dir dennoch weiter.

Ich benutze die fetch-posts Funktion aus dem 'AWSW Intro & Portal MOD' um eine Buchtipp-Seite zu generieren. Dazu wird einfach jeder Beitrag zweier Foren (http://www.rehakids.de/phpBB2/forum4.html und http://www.rehakids.de/phpBB2/forum5.html) auf dieser Seite ausgegeben: http://www.rehakids.de/phpBB2/buchtipps.html

Wenn du Interesse daran hast, kann ich gerne mal die notwendigen Schritte zusammenschreiben. Hmm, ich hoffe AWSW hat nicht dagegen, wenn ich hier eine Anleitung veröffentliche, welche Teile seines Programmcodes verwendet?!... :-?
Benutzeravatar
AmigaLink
Mitglied
Beiträge: 1417
Registriert: 09.06.2003 21:56
Wohnort: NRW
Kontaktdaten:

Beitrag von AmigaLink »

Sieht vielversprechend aus!
Groovecommander
Mitglied
Beiträge: 119
Registriert: 26.03.2004 16:39

Beitrag von Groovecommander »

Gefällt mir sehr gut Deine Lösung. Wäre nett, wenn Du mir mal Deine Anleitung zukommen lassen würdest.

Wie findet ihr die Buchempfehlung von http://www.im-coma.de/books.php ?
Also, ich find die richtig gut. Gibt es sowas nicht für phpBB?
Benutzeravatar
AmigaLink
Mitglied
Beiträge: 1417
Registriert: 09.06.2003 21:56
Wohnort: NRW
Kontaktdaten:

Beitrag von AmigaLink »

Groovecommander hat geschrieben:Wie findet ihr die Buchempfehlung von http://www.im-coma.de/books.php ?
Also, ich find die richtig gut. Gibt es sowas nicht für phpBB?
Die sieht auch gut aus!
Vorallem Kategorien machen das ganze Interessant. Ich denke mal die Einbindung der ja-BücherBox ins phpBB dürfte auch nicht soooo schwer sein, denn es muss ja eigentlich nur das Template angepasst werden!

@ m0bby
Falls du die Anleitung per eMail an Groovecommander schickst, hätte ich sie auch gerne. :D
Groovecommander
Mitglied
Beiträge: 119
Registriert: 26.03.2004 16:39

Beitrag von Groovecommander »

Wie kann ich z.B. diese Ja-BücherBox so einbauen, dass der Header vom Forum beibehalten wird? Wenn ich es einfach nach Anleitung einbaue, dann kommt immer eine neue Seite.
Benutzeravatar
m0bby
Mitglied
Beiträge: 82
Registriert: 23.03.2004 13:19
Kontaktdaten:

Beitrag von m0bby »

Das kannst du z.B. nach der Anleitung aus der Knowledge Base "Vorlage für in phpBB eingebundene Seiten" machen:

http://www.phpbb.de/doku/kb/artikel.php?artikel=72

Schönen Gruß
mObbY
Groovecommander
Mitglied
Beiträge: 119
Registriert: 26.03.2004 16:39

Beitrag von Groovecommander »

Was ist mit Deiner Anleitung bzgl. Deines Threads ?
Benutzeravatar
m0bby
Mitglied
Beiträge: 82
Registriert: 23.03.2004 13:19
Kontaktdaten:

Buchtipps auf eigener Seite ausgeben

Beitrag von m0bby »

Zunächst legst du zwei neue Dateien an.

buchtipps.php

Code: Alles auswählen

<?php
//Benötigte Dateien und Variablen von phpBB
define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
include_once($phpbb_root_path . 'includes/bbcode.'.$phpEx);


// ************************************************************************************
// Dies hier bitte an die eigenen Erfordernisse anpassen:
//
// $CFG['number_of_news']  -> Anzahl der anzuzeigenden Buchtipps
// $CFG['news_length']     -> 0 = der ganze Artikel, andere Zahl = Anzahl der anzuzeigenden Zeichen
// $CFG['news_forum']      -> Kommagetrennte Liste der anzuzeigenden Foren

$CFG['number_of_news'] = 100;
$CFG['news_length']    = 0;
$CFG['news_forum']     = "4,5";

// Ab hier sind keine Änderungen mehr erforderlich!
// ************************************************************************************


// CODE TAKEN FROM "AWSW Intro & Portal MOD"
function phpbb_fetch_posts($forum_sql, $number_of_posts, $text_length)
{
	global $db, $board_config;

	$sql = 'SELECT
			  t.topic_id,
			  t.topic_time,
			  t.topic_title,
			  pt.post_text,
			  u.username,
			  u.user_id,
			  t.topic_replies,
			  pt.bbcode_uid,
			  t.forum_id,
			  t.topic_poster,
			  t.topic_first_post_id,
			  t.topic_status,
			  pt.post_id,
			  p.post_id,
			  p.enable_smilies
			FROM
			  ' . TOPICS_TABLE . ' AS t,
			  ' . USERS_TABLE . ' AS u,
			  ' . POSTS_TEXT_TABLE . ' AS pt,
			  ' . POSTS_TABLE . ' AS p
			WHERE
			  t.forum_id IN (' . $forum_sql . ') AND
			  t.topic_time <= ' . time() . ' AND
			  t.topic_poster = u.user_id AND
			  t.topic_first_post_id = pt.post_id AND
			  t.topic_first_post_id = p.post_id AND
			  t.topic_status <> 2
			ORDER BY
			  t.topic_time DESC';
	if ($number_of_posts != 0)
	{
		$sql .= '
			LIMIT
			  0,' . $number_of_posts;
	}
	//
	// query the database
	//
	if(!($result = $db->sql_query($sql)))
	{
		message_die(GENERAL_ERROR, 'Could not query announcements information', '', __LINE__, __FILE__, $sql);
	}
	//
	// fetch all postings
	//
	$posts = array();
	if ($row = $db->sql_fetchrow($result))
	{
		$i = 0;
		do
		{
			$posts[$i]['bbcode_uid'] = $row['bbcode_uid'];
			$posts[$i]['enable_smilies'] = $row['enable_smilies'];
			$posts[$i]['post_text'] = $row['post_text'];
			$posts[$i]['topic_id'] = $row['topic_id'];
			$posts[$i]['topic_replies'] = $row['topic_replies'];
			$posts[$i]['topic_time'] = create_date($board_config['default_dateformat'], $row['topic_time'], $board_config['board_timezone']);
			$posts[$i]['topic_title'] = $row['topic_title'];
			$posts[$i]['user_id'] = $row['user_id'];
			$posts[$i]['username'] = $row['username'];

			//
			// do a little magic
			// note: part of this comes from mds' news script and some additional magics from Smartor
			//
			stripslashes($posts[$i]['post_text']);
			if (($text_length == 0) or (strlen($posts[$i]['post_text']) <= $text_length))
			{				
				$posts[$i]['post_text'] = bbencode_second_pass($posts[$i]['post_text'], $posts[$i]['bbcode_uid']);
				$posts[$i]['striped'] = 0;
			}
			else // strip text for news
			{
				$posts[$i]['post_text'] = bbencode_strip($posts[$i]['post_text'], $posts[$i]['bbcode_uid']);
				$posts[$i]['post_text'] = substr($posts[$i]['post_text'], 0, $text_length) . '...';
				$posts[$i]['striped'] = 1;
			}
			//
			// Smilies
			//
			if ($posts[$i]['enable_smilies'] == 1)
			{
				$posts[$i]['post_text'] = smilies_pass($posts[$i]['post_text']);
			}
			$posts[$i]['post_text'] = make_clickable($posts[$i]['post_text']);
			//
			// define censored word matches
			//
			$orig_word = array();
			$replacement_word = array();
			obtain_word_list($orig_word, $replacement_word);
			//
			// censor text and title
			//
			if (count($orig_word))
			{
				$posts[$i]['topic_title'] = preg_replace($orig_word, $replacement_word, $posts[$i]['topic_title']);
				$posts[$i]['post_text'] = preg_replace($orig_word, $replacement_word, 	$posts[$i]['post_text']);
			}
			$posts[$i]['post_text'] = nl2br($posts[$i]['post_text']);
			$i++;
		}
		while ($row = $db->sql_fetchrow($result));
	}
	//
	// return the result
	//
	return $posts;
} // phpbb_fetch_posts

$lang['Comments'] = 'Kommentare';
$lang['Read_Full'] = 'Lese den ganzen Text';
$lang['Read_Full_Back'] = 'Zurück';
$lang['View_comments'] = 'Kommentare lesen';
$lang['Post_your_comment'] = 'Eigenen Kommentar schreiben';


//Session auslesen und Benutzer-Informationen laden
$userdata = session_pagestart($user_ip, PAGE_BOOKTIPS);
init_userprefs($userdata);


$template->assign_vars(array(
'L_POSTED' => $lang['Posted'],
'L_COMMENTS' => $lang['Comments'],
'L_VIEW_COMMENTS' => $lang['View_comments'],
'L_POST_COMMENT' => $lang['Post_your_comment'])
);


// FETCH POSTS START
// CODE TAKEN FROM "AWSW Intro & Portal MOD"

if(!isset($HTTP_GET_VARS['article']))
{
    $template->assign_block_vars('welcome_text', array());
    $fetchposts = phpbb_fetch_posts($CFG['news_forum'], $CFG['number_of_news'], $CFG['news_length']);
    for ($i = 0; $i < count($fetchposts); $i++)
    {
        if( $fetchposts[$i]['striped'] == 1 )
        {
            $open_bracket = '[ ';
            $close_bracket = ' ]';
            $read_full = $lang['Read_Full'];
        }
        else
        {
            $open_bracket = '';
            $close_bracket = '';
            $read_full = '';
        }
        $template->assign_block_vars('fetchpost_row', array(
        'TITLE' => $fetchposts[$i]['topic_title'],
        'POSTER' => $fetchposts[$i]['username'],
        'TIME' => $fetchposts[$i]['topic_time'],
        'TEXT' => $fetchposts[$i]['post_text'],
        'REPLIES' => $fetchposts[$i]['topic_replies'],
        'U_VIEW_COMMENTS' => append_sid('viewtopic.' . $phpEx . '?t=' . $fetchposts[$i]['topic_id']),
        'U_POST_COMMENT' => append_sid('posting.' . $phpEx . '?mode=reply&t=' . $fetchposts[$i]['topic_id']),
        'U_READ_FULL' => append_sid('buchtipps.' . $phpEx . '?article=' . $i),
        'L_READ_FULL' => $read_full,
        'OPEN' => $open_bracket,
        'CLOSE' => $close_bracket)
        );
    }
}
else
{
    $fetchposts = phpbb_fetch_posts($CFG['news_forum'], $CFG['number_of_news'], 0);
    $i = intval($HTTP_GET_VARS['article']);
    if( $fetchposts[$i]['striped'] == 0)
    {
        $open_bracket = '[ ';
        $close_bracket = ' ]';
        $read_full = $lang['Read_Full_Back'];
    }
    else
    {
        $open_bracket = '';
        $close_bracket = '';
        $read_full = '';
    }
    $template->assign_block_vars('fetchpost_row', array(
    'TITLE' => $fetchposts[$i]['topic_title'],
    'POSTER' => $fetchposts[$i]['username'],
    'TIME' => $fetchposts[$i]['topic_time'],
    'TEXT' => $fetchposts[$i]['post_text'],
    'REPLIES' => $fetchposts[$i]['topic_replies'],
    'U_VIEW_COMMENTS' => append_sid('viewtopic.' . $phpEx . '?t=' . $fetchposts[$i]['topic_id']),
    'U_POST_COMMENT' => append_sid('posting.' . $phpEx . '?mode=reply&t=' . $fetchposts[$i]['topic_id']),
    'U_READ_FULL' => append_sid('buchtipps.' . $phpEx),
    'L_READ_FULL' => $read_full,
    'OPEN' => $open_bracket,
    'CLOSE' => $close_bracket)
    );
}
// FETCH POSTS END


$page_title = 'Buchtipps';
include($phpbb_root_path . 'includes/page_header.'.$phpEx);


$template->set_filenames(array(
'body' => 'buchtipps_body.tpl')
);

$template->pparse('body');


include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
?>
buchtipps_body.tpl

Code: Alles auswählen

<table width="100%" border="0" cellpadding="2" cellspacing="2">
  <tr>
    <td><a href="{U_INDEX}" class="nav">{L_INDEX}</a></td>
  </tr>
</table>
<table width="100%" border="0" cellpadding="1" cellspacing="1" style="border-collapse: collapse" class="forumline">
<tr>
<td class="catHead" colspan="2" height="25"><span class="cattitle"><center>Buchtipps</center></span></td>
</tr>
<tr>
<td width="100%" align="center" class="row2"><br>

<!-- ##### FETCH POSTS START ##### -->
<!-- BEGIN fetchpost_row -->
<table width="90%" cellpadding="2" cellspacing="1" border="0" align="center" class="forumline">
<tr>
	<td class="catHead" height="25"><span class="genmed"><b><a href="{fetchpost_row.U_VIEW_COMMENTS}">{fetchpost_row.TITLE}</a></b></span></td>
</tr>
<tr>
	<td class="row2" align="left" height="24"><span class="gensmall">{L_POSTED}: <b>{fetchpost_row.POSTER}</b> @ {fetchpost_row.TIME}</span></td>
</tr>
<tr>
	<td class="row1" align="left"><span class="gensmall" style="line-height:150%">{fetchpost_row.TEXT}<br /><br />{fetchpost_row.OPEN}<a href="{fetchpost_row.U_READ_FULL}">{fetchpost_row.L_READ_FULL}</a>{fetchpost_row.CLOSE}</span></td>
</tr>
<tr>
	<td class="row3" align="left" height="24"><span class="gensmall">{L_COMMENTS}: {fetchpost_row.REPLIES} :: <a href="{fetchpost_row.U_VIEW_COMMENTS}">{L_VIEW_COMMENTS}</a> (<a href="{fetchpost_row.U_POST_COMMENT}">{L_POST_COMMENT}</a>)</span></td>
</tr>
</table>
<br>
<!-- END fetch_post_row -->
<!-- ##### FETCH POSTS END ##### -->

 
</td>
</tr>
</table>

Nun folgst du diesen Anweisungen:

Code: Alles auswählen

#
#-----[ COPY ]--------------------------------------------
#
copy buchtipps.php to buchtipps.php
copy buchtipps_body.tpl to templates/subSilver/buchtipps_body.tpl

#
#-----[ OPEN ]---------------------------------------------
#
buchtipps.php

#
#-----[ FIND ]---------------------------------------------
#
$CFG['number_of_news'] = 100;
$CFG['news_length']    = 0;
$CFG['news_forum']     = "4,5";

#
#-----[ REPLACE WITH ]------------------------------------
# Please check these values and change them if necessary
#

$CFG['number_of_news'] = 100;
$CFG['news_length']    = 0;
$CFG['news_forum']     = "4,5";

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

#
#-----[ FIND ]---------------------------------------------
#
define('PAGE_GROUPCP', -11);

#
#-----[ AFTER, ADD ]--------------------------------------
# (! In case that -12 is used, chose an other value !)
#
define('PAGE_BOOKTIPS', -12);

#
#-----[ OPEN ]---------------------------------------------
#
viewonline.php

#
#-----[ FIND ]---------------------------------------------
#
				case PAGE_INDEX:
					$location = $lang['Forum_index'];
					$location_url = "index.$phpEx";
					break;

#
#-----[ BEFORE, ADD ]--------------------------------------
#
				case PAGE_BOOKTIPS:
					$location = 'Buchtipps';
					$location_url = "buchtipps.$phpEx";
					break;

#
#-----[ OPEN ]---------------------------------------------
#
admin/index.php

#
#-----[ FIND ]---------------------------------------------
#
						case PAGE_INDEX:
							$location = $lang['Forum_index'];
							$location_url = "index.$phpEx?pane=right";
							break;

#
#-----[ BEFORE, ADD ]--------------------------------------
#
						case PAGE_BOOKTIPS:
							$location = 'Buchtipps';
							$location_url = "buchtipps.$phpEx";
							break;

#
#-----[ FIND ]---------------------------------------------
#
					case PAGE_INDEX:
						$location = $lang['Forum_index'];
						$location_url = "index.$phpEx?pane=right";
						break;

#
#-----[ BEFORE, ADD ]--------------------------------------
#
					case PAGE_BOOKTIPS:
						$location = 'Buchtipps';
						$location_url = "buchtipps.$phpEx";
						break;

#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM
Bitte achte darauf, dass du bei

Code: Alles auswählen

$CFG['news_forum'] 
die auszugebenden Foren-Nummern einträgst.

Das war's schon.

Schönen Gruß
mObbY
Zuletzt geändert von m0bby am 13.06.2004 23:47, insgesamt 1-mal geändert.
Groovecommander
Mitglied
Beiträge: 119
Registriert: 26.03.2004 16:39

Beitrag von Groovecommander »

Jetzt schreibe ich gerade ne Nachricht, da kommt auch schon wieder eine Antwort. Vielen Dank für Deine Mühe, ich werde mir das mal in Ruhe anschauen.

Ich hatte da aber noch eine Frage. Ich habe nämlich gerade probiert den Header in die Ja-Bücher Box zu integrieren. Ich hab mir die Anleitung angeschaut und hab probiert eine Script an deiser Stelle einzufügen:
/***** Inhaltsbereich ******/
.
Starte ich die Seite, dann funktioniert die auch, jedoch ohne Header (der Footer erscheint). Was mache ich falsch. Hier die index.php von der JA-BücherBox:
Wie gesagt, ich möchte den Header zu dieser Seite hinzufügen.

Hier kommt die ja-index.php

Code: Alles auswählen

<?php //###############################################
//#        JA-BücherBox          Version 1.1.1        #
//#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#
//# URL|      © Copyright 2003 by René Abé     |Email #
//# http://www.java-archiv.com    http://www.raisp.de #
//#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#
//#   Dieses Programm darf kostenfrei auf privaten    #
//#     und kommerziellen Websites genutzt werden     #
//#      solange die Coypright-Hinweise in ALLEN      #
//#        dazugehörigen DATEIEN verbleiben und       #
//#         in keiner Weise versteckt werden!         #
//################################################## ?>
<?php
include("./incs/config.inc.php");

$link = mysql_connect($sql_host, $sql_user, $sql_pass);
if (!$link) die("Keine Verbindung zu MySQL");
mysql_select_db($sql_db, $link) or die ("Konnte $sql_db nicht &ouml;ffnen: ".mysql_error());

$in_cfg=mysql_query("SELECT incspfad,URL,imgpfad,imgurl,BBTitel,AmazID,KatBesch,ver FROM ja_$sql_cfg_bb") or die("Konfiguration konnte nicht geladen werden<br>".mysql_error());
	$cfg=mysql_fetch_array($in_cfg);
	$incspfad=$cfg[incspfad];
	$URL=$cfg[URL];
	$imgurl=$cfg[imgurl];
	$imgpfad=$cfg[imgpfad];
	$bbtitel=$cfg[BBTitel];
	$amazonid=$cfg[AmazID];
	$katbesch=$cfg[KatBesch];
	$ver=$cfg[ver];

if ($bbox_act == "randbook") $action = "randbook";
if ($action == "vcat" AND $cat<1) $action = "";
switch ($action) {
	case "":
		include ("./incs/header.inc.php");
		
		echo "<p align=justify>Auf den folgenden Seiten finden Sie eine &Uuml;bersicht ausgesuchter B&uuml;cher. Eine ";
		echo "Such-Funktion finden Sie weiter unten!</p>";
		
		
		$in_kat=mysql_query("SELECT * FROM ja_$sql_kat_bb") or die("Abfrage der Kategorien nicht m&ouml;glich:<br>".mysql_error());
		echo "<table width=400 border=0 align=center>";
		if(mysql_num_rows($in_kat)==0) echo "<tr><td><span class=update>Noch keine Kategorien vorhanden!</span><br><br><a href=\"admin/index.php\">Login und Kategorie anlegen!</a></td></tr>";
		while($kat=mysql_fetch_array($in_kat)) {
			$counts = mysql_query("SELECT id FROM ja_$sql_dat_bb WHERE Kategorie='$kat[catid]' AND IsOk='Y'");
			$ctalle = mysql_num_rows($counts);
			echo "<tr><th align=left><a href=\"".$PHP_SELF."?action=vcat&cat=$kat[catid]\">$kat[catname] ($ctalle)</a></th></tr>";
			echo "<tr><td>$kat[catbesch]</td></tr>";
			echo "<tr><td class=home height=2></td></tr>";
		}
		echo "</table><br>";

	echo "<form method=\"get\" action=\"".$PHP_SELF."\"><input type=hidden name=action value=\"suchen\">";
	echo "<table align=center border=0 cellspacing=2 cellpadding=2 width=100%><tr><th align=left colspan=3>Buch suchen</th>";
	echo "</tr><tr><td>Stichwort:</td><td colspan=2><input type=text name=\"suchtext\" size=40></td>";
	
	echo "</tr><tr><td>Suchen in:</td><td colspan=2><select name=\"suchein\"><option value=\"Beschr\">Beschreibung</option>";
	echo "<option value=\"Titel\">Titel</option><option value=\"alle\" selected>Titel & Beschreibung</option></select></td>";
	echo "</tr><tr><td>Sortieren nach</td><td><select name=\"sortnach\"><option value=\"Autor\">Autor</option>";
	echo "<option value=\"Titel\">Titel</option><option value=\"Verlag\">Verlag</option><option ";
	echo "value=\"Preis\">Preis</option></select></td><td rowspan=2 ";
	echo "align=center><input type=\"submit\" value=\"Suchen\"></th></tr><tr><td>Listen nach:</td><td><select ";
	echo "name=\"sortart\"><option value=\"ASC\">a-z / A-Z</option><option value=\"DESC\">z-a / Z-A</option></select></td>";
	echo "</tr></table></form><hr noshade size=1 width=80%><center><span ";
		echo "class=klein>powered by <a class=klein href=\"http://www.java-archiv.com\" target=\"_blank\">JA-B&uuml;cherBox ";
		echo "v$ver</a> • &copy; Copyright 2003 by <a class=klein href=\"http://www.raisp.de\" target=\"_blank\">René ";
		echo "Abé • ISP</a>!!</center>";
		mysql_close($link);
		include("./incs/footer.inc.php");
	break;

	case "vcat":
		if (!$sort) $sort = "Titel";
		if ($order != "ASC" and $order != "DESC") $order = "ASC";
		if (!$show) $show = 5;
		if (!$page) $page = 1;
		include ("./incs/header.inc.php");
		echo "<p align=center>";
		echo "<form method=\"get\" action=\"".$PHP_SELF."\"><input type=hidden name=\"action\" value=\"vcat\"><input type=hidden ";
		echo "name=\"sort\" value=\"$sort\"><input type=hidden name=\"order\" value=\"$order\"><table border=0 cellspacing=3 ";
		echo "cellpadding=2 width=100%><tr><td width=50% align=center>Aktuelle Kategorie: $akt_kat<br><select name=\"cat\">";
		echo "<option value=\"\">» &Uuml;bersicht</option><option value=\"\"></option>";
		$inhalt=mysql_query("SELECT * FROM	ja_$sql_kat_bb") OR die("Konnte Kategorien nicht abrufen!<br>".mysql_error());
		while($erg=mysql_fetch_array($inhalt)) {
			echo "<option value=\"$erg[catid]\"";
			if ($erg[catid] == $cat) echo " selected";
			echo ">$erg[catname]</option>";
		}
		echo "</select> <input type=submit value=\"ansehen\"><br>";
		$maximum = mysql_num_rows(mysql_query("SELECT Kategorie FROM ja_$sql_dat_bb WHERE Kategorie='$cat' AND IsOk='Y'"));
		$numpages = ceil($maximum / $show);
		echo "Eintr&auml;ge in dieser Kategorie: $maximum<br>";
		echo "</td><td align=center width=50% class=klein>Sortieren nach:<br><select name=\"sort\" size=1><option ";
		echo "value=\"Autor\"";
		if ($sort == "Autor") echo " selected";
		echo ">Autor</option><option value=\"Titel\"";
		if ($sort == "Titel") echo " selected";
		echo ">Titel</option><option value=\"Verlag\"";
		if ($sort == "Verlag") echo " selected";
		echo ">Verlag</option><option value=\"Preis\"";
		if ($sort == "Preis") echo " selected";
		echo ">Preis</option></select> <input type=submit value=\"ansehen\"><br><a ";
		echo "href=\"".$PHP_SELF."?action=vcat&cat=$cat&sort=$sort&order=ASC&page=$page&show=$show\"><img ";
		echo "src=\"$imgurl/up.gif\" width=8 height=5 border=0 align=middle alt=\"A-B-C\">aufsteigend</a>&nbsp;<a ";
		echo "href=\"".$PHP_SELF."?action=vcat&cat=$cat&sort=$sort&order=DESC&page=$page&show=$show\"><img ";
		echo "src=\"$imgurl/down.gif\" width=8 height=5 border=0 align=middle alt=\"Z-Y-X\">absteigend</a></td></tr>";
		echo "</form>";	if ($katbesch == 'Y') {
		$ckat=mysql_query("SELECT catbesch FROM ja_$sql_kat_bb WHERE catid='$cat'");
		$ccat=mysql_fetch_array($ckat);
		echo "<tr><td colspan=2>$ccat[catbesch]</td></tr>";	}
		if ($numpages < $page) $page = 1;
		$pos = (($page - 1) * $show);
		if ($page == 1) { $lastpage = 0; } else { $lastpage = $page - 1; }
		if (($maximum - $pos) < $show)  { $nextpage = 0; } else { $nextpage = $page + 1; }
		$inhalt = mysql_query("SELECT * FROM ja_$sql_dat_bb WHERE Kategorie='$cat' AND IsOk='Y' ORDER BY $sort $order LIMIT $pos, $show") or die('Kann Eintr&auml;ge nicht auflisten: '.mysql_error());
		$show_max = mysql_num_rows($inhalt);
		if ($show_max==0) echo "<tr><td colspan=2><b>Hinweis:</b> In dieser Kategorie sind noch keine B&uuml;cher vorhanden!</td></tr></table>";
		if ($show_max) {
			if ($numpages > 1) {
				echo "<tr><td align=center class=klein>Seite ausw&auml;hlen:<br>";	if ($lastpage > 0) {
				echo "<a href=\"".$PHP_SELF."?action=vcat&cat=$cat&sort=$sort&order=$order&show=$show&page=$lastpage\"><<</a>";
				} else { echo "<<"; }
				for ($actpage = 1; $actpage <= $numpages; $actpage++) { echo " | ";
				if ($actpage != $page) { echo "<a href=\"".$PHP_SELF."?action=vcat&cat=$cat&sort=$sort&order=$order&show=$show&page=$actpage\">$actpage</a>";
				} else { echo "<b>$actpage</b>"; } } echo " | "; if ($nextpage > 0) {
				echo "<a href=\"".$PHP_SELF."?action=vcat&cat=$cat&sort=$sort&order=$order&show=$show&page=$nextpage\">>></a>";
				} else { echo ">>"; } 	echo "</td><td class=klein align=center>";
				if ($maximum > 10) { echo "Eintr&auml;ge pro Seite:<br><a class=klein ";
				echo "href=\"".$PHP_SELF."?action=vcat&cat=$cat&sort=$sort&order=$order&show=10\">10</a> | <a class=klein ";
				echo "href=\"".$PHP_SELF."?action=vcat&cat=$cat&sort=$sort&order=$order&show=20\">20</a> | <a class=klein ";
				echo "href=\"".$PHP_SELF."?action=vcat&cat=$cat&sort=$sort&order=$order&show=50\">50</a> | <a class=klein ";
				echo "href=\"".$PHP_SELF."?action=vcat&cat=$cat&sort=$sort&order=$order&show=100\">100</a></td>"; }
				echo "</tr>"; }
			echo "</table><hr noshade size=1 width=80%>";
			
			// Standard-Template laden wenn kein User-Template vorhanden ist!
			$get_tpl_1=mysql_query("SELECT tpl_1 FROM ja_$sql_cfg_bb") or die("Template kann nicht geladen werden!<br>".mysql_error());
			$template_e=mysql_fetch_array($get_tpl_1);
			$template=$template_e[tpl_1];
			/* Kein Template in der MySQL-Datenbank?! => Standard anzeigen */
			if ($template == '') {
				$template = "<table border=0 cellpadding=2 cellspacing=3 width=100%><tr><td width=96 align=center valign=top ";
				$template.= "rowspan=5>{BILD}</td><th colspan=2>\"{TITEL}\"</td></tr><tr><th>Autor:</th><td>{AUTOR}</td></tr>";
				$template.= "<tr><th>Verlag:</th><td>{VERLAG}</td></tr><tr><th>Preis:</th><td>{PREIS} EUR</td></tr><tr><th ";
				$template.= "align=left colspan=2>Kurzbeschreibung dieses Titels:</td></tr><tr><td align=left colspan=3><p ";
				$template.= "align=justify>{BESCHR}...</p></td></tr><tr><td colspan=3 align=right><a href=\"{URL}\" ";
				$template.= "target=\"_blank\">...mehr über dieses Buch</a> & <a href=\"{URL}\" target=\"_blank\">Bestellen</a>";
				$template.= "</td></tr></table><br>";
			}
			while($erg=mysql_fetch_array($inhalt)) {
				if (file_exists($imgpfad."/".$erg[ASIN].".jpg")) {
					$info = getimagesize($imgpfad."/".$erg[ASIN].".jpg");
					$v_bild = "<A HREF=\"$PHP_SELF?action=go&ASIN=$erg[ASIN]\" target=\"_blank\"><img ";
					$v_bild.= "src=\"$imgurl/$erg[ASIN].jpg\" $info[3] border=0 alt=\"$erg[Titel]\"></a>";
				} else {
					$info = getimagesize($imgpfad."/keinbild.gif");
					$v_bild = "<A HREF=\"$PHP_SELF?action=go&ASIN=$erg[ASIN]\" target=\"_blank\"><img ";
					$v_bild.= "src=\"$imgurl/keinbild.gif\" $info[3] border=0 alt=\"keine Vorschau\"></a>";
				}
//				$v_bild = "<A HREF=\"".$PHP_SELF."?action=go&ASIN=$erg[ASIN]\" target=\"_blank\"><img src=\"$imgurl/$erg[ASIN].jpg\" border=0 alt=\"$erg[Titel]\"></a>";
				$v_titel = stripslashes($erg[Titel]);
				$v_autor = stripslashes($erg[Autor]);
				$v_verlag = stripslashes($erg[Verlag]);
				$v_preis = $erg[Preis];
				$v_beschr = stripslashes($erg[Beschreibung]);
				$v_url = $PHP_SELF."?action=go&ASIN=$erg[ASIN]";
				echo str_replace(
					array("{BILD}","{TITEL}","{AUTOR}","{VERLAG}","{PREIS}","{BESCHR}","{URL}"),
					array($v_bild,$v_titel,$v_autor,$v_verlag,$v_preis,$v_beschr,$v_url),
					$template);
			}
		}
		if ($numpages > 1) {
			echo "<hr noshade size=1 width=80%><table align=center border=0 cellspacing=2 ";
			echo "cellpadding=2 width=100%><tr><td align=center><span class=klein>Seite ausw&auml;hlen: ";
			if ($lastpage > 0) { echo "<a href=\"".$PHP_SELF."?action=vcat&cat=$cat&sort=$sort&order=$order&show=$show&page=$lastpage\"><<</a>";
			} else { echo "<<"; }
			for ($actpage = 1; $actpage <= $numpages; $actpage++) {	echo " | ";
			if ($actpage != $page) { echo "<a href=\"".$PHP_SELF."?action=vcat&cat=$cat&sort=$sort&order=$order&show=$show&page=$actpage\">$actpage</a>";
			} else { echo "<b>$actpage</b>"; } } echo " | ";
			if ($nextpage > 0) { echo "<a href=\"".$PHP_SELF."?action=vcat&cat=$cat&sort=$sort&order=$order&show=$show&page=$nextpage\">>></a>";
			} else { echo ">>"; }
			echo "</span></td></tr></table>";
		}
		echo "<form method=\"get\" action=\"".$PHP_SELF."\"><input type=hidden name=action value=\"suchen\"><table align=center ";
		echo "border=0 cellspacing=2 cellpadding=2 width=100%><tr><th align=left colspan=3>Buch suchen</th></tr><tr><td>";
		echo "Stichwort:</td><td colspan=2><input type=text name=\"suchtext\" value=\"$suchtext\" size=40></td></tr><tr>";
		echo "<td>Suchen in:</td><td colspan=2><select name=\"suchein\"><option value=\"Beschr\">Beschreibung</option>";
		echo "<option value=\"Titel\">Titel</option><option value=\"alle\" selected>Titel & Beschreibung</option></select>";
		echo "</td></tr><tr><td>Sortieren nach</td><td><select name=\"sortnach\"><option value=\"Autor\">Autor</option>";
		echo "<option value=\"Titel\">Titel</option><option value=\"Verlag\">Verlag</option><option value=\"Preis\">Preis";
		echo "</option></select></td><td rowspan=2 align=center><input type=\"submit\" value=\"Suchen\"></th></tr><tr><td>";
		echo "Auflisten:</td><td><select name=\"sortart\"><option value=\"ASC\">a-z / A-Z</option><option value=\"DESC\">";
		echo "z-a / Z-A</option></select></td></tr></table></form><p align=center>[ <a href=\"".$PHP_SELF."\" ";
		echo "target=\"_self\">Zur Kategorie-&Uuml;bersicht</a> ]</p><hr noshade size=1 width=80%><center><span ";
		echo "class=klein>powered by <a class=klein href=\"http://www.java-archiv.com\" target=\"_blank\">JA-B&uuml;cherBox ";
		echo "v$ver</a> • &copy; Copyright 2003 by <a class=klein href=\"http://www.raisp.de\" target=\"_blank\">René ";
		echo "Abé • ISP</a>!!</center>";
		mysql_close($link);
		include("./incs/footer.inc.php");
	break;

	case "suchen":
		include ("./incs/header.inc.php");
		if ($suchtext) {
		if (!$sort) $sort = "Titel";
		if ($order != "ASC" and $order != "DESC") $order = "ASC";
		if ($suchtext == "*" OR $suchtext == "%") $suchtext ="";
		if (!$suchein) $suchein="alle";
		if ($suchein == "alle") {
		$suche_in_titel = 'Y';
		$suche_in_beschr = 'Y';
		} elseif ($suchein == "Beschr") {
		$suche_in_titel = 'N';
		$suche_in_beschr = 'Y';
		} elseif ($suchein == "Titel") {
		$suche_in_titel = 'Y';
		$suche_in_beschr = 'N';	}
		if (!isset($sortnach)) $sortnach = "Titel";
		if ($sortart != "ASC" and $sortart != "DESC") $sortart = "ASC";
		$sql_suche = "SELECT * FROM ja_$sql_dat_bb WHERE (IsOk='Y' AND (";
		if (($suche_in_titel == 'Y') AND ($suche_in_beschr == 'N')) $sql_suche.="Titel rlike '$suchtext' ";
		if (($suche_in_beschr == 'Y') AND ($suche_in_titel == 'N')) $sql_suche.="Beschreibung rlike '$suchtext' ";
		if (($suche_in_beschr == 'Y') AND ($suche_in_titel == 'Y')) $sql_suche.="Titel rlike '$suchtext' OR Beschreibung rlike '$suchtext' ";
		
		$sql_suche.=")) ORDER BY $sortnach $sortart LIMIT 0, 50";
		$result = mysql_query($sql_suche) or die("Fehler<br>".mysql_error());
		$maximum = mysql_num_rows($result);
		echo "<center>Eintr&auml;ge gefunden: $maximum<br>Es werden maximal 50 Eintr&auml;ge angezeigt!</center>";
	
		// Standard-Template laden wenn kein User-Template vorhanden ist!
		$get_tpl_1=mysql_query("SELECT tpl_1 FROM ja_$sql_cfg_bb") or die("Template kann nicht geladen werden!<br>".mysql_error());
		$template_e=mysql_fetch_array($get_tpl_1);
		$template=$template_e[tpl_1];

		/* Kein Template in der MySQL-Datenbank?! => Standard anzeigen */
		if ($template == '') {	$template = "<table border=0 cellpadding=2 cellspacing=3 width=100%><tr><td width=96 ";
		$template.= "align=center valign=top rowspan=5>{BILD}</td><th colspan=2>\"{TITEL}\"</td></tr><tr><th>Autor:";
		$template.= "</th><td>{AUTOR}</td></tr><tr><th>Verlag:</th><td>{VERLAG}</td></tr><tr><th>Preis:</th><td>{PREIS} ";
		$template.= "EUR</td></tr><tr><th align=left colspan=2>Kurzbeschreibung dieses Titels:</td></tr><tr><td ";
		$template.= "align=left colspan=3><p align=justify>{BESCHR}...</p></td></tr><tr><td colspan=3 align=right>";
		$template.= "<a href=\"{URL}\" target=\"_blank\">...mehr über dieses Buch</a> & <a href=\"{URL}\" ";
		$template.= "target=\"_blank\">Bestellen</a></td></tr></table><br>"; }
		echo "<form method=\"get\" action=\"".$PHP_SELF."\"><input type=hidden name=action value=\"suchen\">";
		echo "<table align=center border=0 cellspacing=2 cellpadding=2 width=100%><tr><th align=left colspan=3>Buch suchen</th>";
		echo "</tr><tr><td>Stichwort:</td><td colspan=2><input type=text name=\"suchtext\" value=\"$suchtext\" size=40></td>";
		echo "</tr><tr><td>Suchen in:</td><td colspan=2><select name=\"suchein\"><option value=\"Beschr\">Beschreibung</option>";
		echo "<option value=\"Titel\">Titel</option><option value=\"alle\" selected>Titel & Beschreibung</option></select></td>";
		echo "</tr><tr><td>Sortieren nach</td><td><select name=\"sortnach\"><option value=\"Autor\">Autor</option><option ";
		echo "value=\"Titel\">Titel</option><option value=\"Verlag\">Verlag</option><option value=\"Preis\">Preis</option>";
		echo "</select></td><td rowspan=2 align=center><input type=\"submit\" value=\"Suchen\"></th></tr><tr><td>Auflisten:";
		echo "</td><td><select name=\"sortart\"><option value=\"ASC\">a-z / A-Z</option><option value=\"DESC\">z-a / Z-A";
		echo "</option></select></td></tr></table></form>";
		for($x=0;$x<$maximum;$x++){
			$erg = mysql_fetch_row($result);
			$erg_titel = stripslashes(ereg_replace("$suchtext","<i><u>$suchtext</u></i>",$erg[4]));
			$erg_beschr = stripslashes(ereg_replace("$suchtext","<b><u>$suchtext</u></b>",$erg[6]));
			$erg_bild = "<A HREF=\"".$PHP_SELF."?action=go&ASIN=$erg[1]\" target=\"_blank\"><img src=\"$imgurl/$erg[1].jpg\" border=0 alt=\"$erg[4]\"></a>";
			$erg_url = $PHP_SELF."?action=go&ASIN=$erg[1]";
			echo str_replace(array("{BILD}","{TITEL}","{AUTOR}","{VERLAG}","{PREIS}","{BESCHR}","{URL}"),
			array($erg_bild,$erg_titel,stripslashes($erg[3]),stripslashes($erg[2]),$erg[5],$erg_beschr,$erg_url),
			$template);	}
		}
		echo "<p align=center>[ <a href=\"".$PHP_SELF."\" target=\"_self\">Zur Kategorie-&Uuml;bersicht</a> ]</p>";
		echo "<hr noshade size=1 width=80%><center><span ";
		echo "class=klein>powered by <a class=klein href=\"http://www.java-archiv.com\" target=\"_blank\">JA-B&uuml;cherBox ";
		echo "v$ver</a> • &copy; Copyright 2003 by <a class=klein href=\"http://www.raisp.de\" target=\"_blank\">René ";
		echo "Abé • ISP</a>!!</center>";
		mysql_close($link);
		include("./incs/footer.inc.php");
	break;

	case "randbook":
		$getmax ="SELECT id FROM ja_$sql_dat_bb WHERE ";
		if ($bbox_cat) $getmax.="Kategorie='$bbox_cat' AND ";
		$getmax.="IsOk='Y'";
		$maximum = mysql_num_rows(mysql_query($getmax))-1;
		srand((double)microtime()*1000000);
		$no = rand(0,$maximum);
		$ergebnis = "SELECT * FROM ja_$sql_dat_bb WHERE ";
		if ($bbox_cat) $ergebnis.= "Kategorie='$bbox_cat' AND ";
		$ergebnis.= "IsOk='Y' LIMIT $no, 1";
		$result=mysql_query($ergebnis, $link);
		$erg=mysql_fetch_array($result);
		// Standard-Template laden wenn kein User-Template vorhanden ist!
		$get_tpl_2=mysql_query("SELECT tpl_2 FROM ja_$sql_cfg_bb") or die("Template kann nicht geladen werden!<br>".mysql_error());
		$template_e=mysql_fetch_array($get_tpl_2);
		$template=$template_e[tpl_2];
		/* Kein Template in der MySQL-Datenbank?! => Standard anzeigen */
		if ($template == '') {	$template = "<table width=145 border=0 cellpadding=0 cellspacing=2><tr><td class=sub ";
		$template = "align=center valign=center><b><span class=sub>JA-BücherBox v1.1</span></b></td></tr><tr><td ";
		$template = "align=center valign=center>{AUTOR}<br><b>{TITEL}</b><br>{BILD}<br>{PREIS} EUR<br><a href=\"{URL}\" ";
		$template = "target=\"_blank\">Jetzt bestellen...</a></font></td></tr></table>"; }
		$v_bild = "<A HREF=\"".$PHP_SELF."?action=go&ASIN=$erg[ASIN]\" target=\"_blank\"><img src=\"$imgurl/$erg[ASIN].jpg\" border=0 alt=\"$erg[Titel]\"></a>";
		$v_url = $PHP_SELF."?action=go&ASIN=$erg[ASIN]";
		echo str_replace(
		array("{BILD}","{TITEL}","{AUTOR}","{VERLAG}","{PREIS}","{BESCHR}","{URL}"),
		array($v_bild,stripslashes($erg[Titel]),stripslashes($erg[Autor]),stripslashes($erg[Verlag]),$erg[Preis],stripslashes($erg[Beschreibung]),$v_url),
		$template);
		echo "<br><div title=\"Copyright 2003 by René Abé\"><a href=\"http://www.java-archiv.com\" ";
		echo "target=\"_blank\">&copy;´03 by Java-Archiv.com</a></div>";
		mysql_query("UPDATE ja_$sql_dat_bb SET View=View+1 WHERE ASIN='$erg[ASIN]'",$link);
		mysql_close($link);
		break;

	case "go":
		if ($link) mysql_close($link);
		if ($nocount==1) { $url="http://www.amazon.de/exec/obidos/ASIN/$ASIN/$amazonid"; } else { 
		$link = mysql_connect($sql_host, $sql_user, $sql_pass);	if (!$link) die("Keine Verbindung zu MySQL");
		mysql_select_db($sql_db, $link) or die ("Konnte $sql_db nicht &ouml;ffnen: ".mysql_error());
		mysql_query("UPDATE ja_$sql_dat_bb SET Click=Click+1 where ASIN='$ASIN'",$link);
		$url = "http://www.amazon.de/exec/obidos/ASIN/$ASIN/$amazonid";
		mysql_close($link); }
		header("Location: $url");
	break;
}
?>

An welcher Stelle, muss ich diesen Code nun nach dieser Anleitung einbauen[/quote]
Antworten

Zurück zu „phpBB 2.0: Mod Support“