MyBB.de Forum

Normale Version: [HILFE] Eigenes "Addon" Problem
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo alle miteinander,
ich hoffe ihr könnt mir helfen.

ich habe eine datei die heißt "guide.php"
Code:
<?php

$templatelist = "guide_start,guide_news_row";
require "./global.php";
require "./inc/functions_post.php";

// Load global language phrases
$lang->load("guide");

$userpermissions = getuserpermissions($mybb['uid']);

if($mybb['uid'] == 0 || $userpermissions['canusercp'] == "no")
{
    nopermission();
}
else {
$query = $db->query("SELECT * FROM ".TABLE_PREFIX."guides WHERE activation = '1' ORDER BY tid ASC LIMIT 5");
while($guide = $db->fetch_array($query)) {
    $uid = $guide['uid'];
    $tid = $guide['tid'];
    $titel = $guide['guidetitel'];
    $story = $guide['guidestory'];
}

eval("\$guide_news_ = \"".$templates->get("guide_news_row")."\";");

}
eval("\$showguide = \"".$templates->get("guide_start")."\";");
outputpage($showguide);
?>

diese soll aber nicht nur einen code (bzw momentan zeigt sie gar nix mehr aus der db) sondern 5 anzeigen , sowas die letzten 5 themen like

templates hab ich folgende
Code:
<html>
<head>
<title>$settings[bbname]</title>
$headerinclude
</head>
<body>
$header
<table width="$theme[tablewidth]" cellspacing="0" cellpadding="$theme[tablespace]" border="0" align="center">
<tr><td valign="top" width="200">
<table cellspacing="0" cellpadding="0" border="0" width="100%">
<tr>
<td class="tborder">
<table border="0" cellspacing="$theme[borderwidth]" cellpadding="$theme[tablespace]" width="100%">
<tr>
<td class="thead">$lang->guide_menu_start</td>
</tr>
<tr>
<td class="trow1">
$lang->guide_menu_1
Die Neusten Guides<br />
<br>
Guide schreiben <br />
</td>
</tr>
</table>
</td></tr></table>
<br />
<table cellspacing="0" cellpadding="0" border="0" width="100%">
<tr>
<td class="tborder">
<table border="0" cellspacing="$theme[borderwidth]" cellpadding="$theme[tablespace]" width="100%">
<tr>
<td class="thead">Guide · Kategorien</td>
</tr>
<tr>
<td class="trow1">
Jobs und Skills<br />
Versteckte Ebenen und Wege<br />
Item Guides<br />
</td>
</tr>
</table>
</td></tr></table>
</td>
<td class="trow">&nbsp;</td>
<td width="*" valign="top">
<table cellspacing="0" cellpadding="0" border="0" width="100%">
<tr>
<td class="tborder">
<table border="0" cellspacing="$theme[borderwidth]" cellpadding="$theme[tablespace]" width="100%">
<tr>
<td width="100%" class="thead"><strong>$lang->start_guide</strong></td>
</tr>
<tr>
<td class="trow1">$lang->start_welcome</td>
</table></td></tr></table>
$guide_news_row
</td>
</tr>
</table>
$footer
</body>
</html>


und
Code:
<br><br>
<table cellspacing="0" cellpadding="0" border="0" width="100%">
<tr>
<td class="tborder">
<table border="0" cellspacing="$theme[borderwidth]" cellpadding="$theme[tablespace]" width="100%">
<tr>
<td width="100%" class="thead"><strong>$titel</strong></td>
</tr>
<tr>
<td class="trow1">$story<br><div align="right"><a href="guides.php?readguide=$tid">...weiterlesen</div></td>
</table></td></tr></table>

Ich bitte inständig um Hilfe und Erklärung warum das nicht geht Sad
Hi,

ich habe es jetzt nur überflogen, da ich nicht die Zeit im Moment habe, mich damit richtig auseinander zusetzen. Aber ich glaube, daß folgender Code so nicht funktioniert:

Code:
$query = $db->query("SELECT * FROM ".TABLE_PREFIX."guides WHERE [b]activation = '1'[/b] ORDER BY tid ASC LIMIT 5");
while($guide = $db->fetch_array($query)) {

Ändere mal das fettgeschriebene ab in

Code:
1=1 $fidnot

Einen Tip kann ich Dir auf die schnelle noch geben. Schau Dir mal die stats.php an. Dort werden auch z.B. die letzten Themen und Beiträge angezeigt. Dies sollte Dir eigentlich helfen, den Fehler zu finden. Ansonsten kann ich nur noch mal schauen, wenn ich die Zeit dazu habe.
Ich arbeite auch an diesem Projekt mit. Aber In deinem Post ist nichts fett geschrieben. Was soll vom obigen Code geändert werden?
Code:
activation = '1'
Code:
$query = $db->query("SELECT * FROM ".TABLE_PREFIX."guides WHERE 1=1 $fidnot ORDER BY tid ASC LIMIT 5");

    while($guide = $db->fetch_array($query))

    {

    $uid = $guide['uid'];

         $tid = $guide['tid'];

         $titel = $guide['guidetitel'];

         $story = $guide['guidestory'];

eval("\$guide_news_row = \"".$templates->get("guide_news_row")."\";");
}

Funktioniert ebenso nicht. Also woran kann das noch liegen?
die mysql hab ich ja selber erstellt o.O und da gibt es halt ein feld namens "activation" das ging früher immer oO

ich versteh einfach nich wieder der kagg nich geht
Code:
$templatelist = "guide_start,guide_news_row";
require "./global.php";
require "./inc/functions_post.php";

// Load global language phrases
$lang->load("guide");

$userpermissions = getuserpermissions($mybb['uid']);

if($mybb['uid'] == 0 || $userpermissions['canusercp'] == "no")
{
    nopermission();
}
else {
$query = $db->query("SELECT * FROM ".TABLE_PREFIX."guides WHERE 1=1 $fidnot ORDER BY tid DESC LIMIT 0, 5");
while($guide = $db->fetch_array($query)) {
    $uid = $guide['uid'];
    $tid = $guide['tid'];
    $titel = $guide['guidetitel'];
    $story = $guide['guidestory'];
    eval("\$guide_news_row = \"".$templates->get("guide_news_row")."\";");

         }

}

eval("\$showguide = \"".$templates->get("guide_start")."\";");
outputpage($showguide);

so siehts jez aus
Hi,

ausgehend von der guide.php aus dem ersten Beitrag gibt es vier Dinge:

1. $templatelist wird eigentlich nicht benötigt
2.
Code:
LIMIT 5
sollte heißen:
Code:
LIMIT [color=red]0,[/color]5
3.
Code:
eval("\$guide_news_ = \"".$templates->get("guide_news_row")."\";");
müsste heißen:
Code:
eval("\$guide_news[color=red]_row.[/color] = \"".$templates->get("guide_news_row")."\";");
Dieser Teil sollte auch noch im while-Tag, also vor dem } stehen.
4. Anstatt
Code:
$userpermissions = getuserpermissions($mybb['uid']);

if($mybb['uid'] == 0 || $userpermissions['canusercp'] == "no")
{
nopermission();
}
reicht auch
Code:
if($mybb['uid'] == 0)
{
nopermission();
}

EDIT: else wird eigentlich nicht benötigt, da nopermission() das Skript beendet:
Code:
<?php
require "./global.php";
require "./inc/functions_post.php";

// Load global language phrases
$lang->load("guide");

if($mybb['uid'] == "0")
{
nopermission();
}

$query = $db->query("SELECT * FROM ".TABLE_PREFIX."guides WHERE activation = '1' ORDER BY tid ASC LIMIT 0,5");
while($guide = $db->fetch_array($query))
{
$uid = $guide['uid'];
$tid = $guide['tid'];
$titel = $guide['guidetitel'];
$story = $guide['guidestory'];
eval("\$guide_news_row .= \"".$templates->get("guide_news_row")."\";");
}

eval("\$showguide = \"".$templates->get("guide_start")."\";");
outputpage($showguide);
?>
DAs Problem ist immer noch nicht gelöst. Obwohl ich alle deine Sachen eingebaut bzw. verändert habe.
danke michael, scorpio war zu dumm das zu machen XD
ich hab meinen pc geschrottet und sehs erst jetzt Wink

also, vielen Dank!

ES KLAPPERT! Big Grin
Danke lieber dem Support auf MyBBoard.com, die haben mir geholfen! Toungue
Seiten: 1 2