hallo gibt es eine möglichkeit, daß man z.b. ein modul, in dem fall enthält es nen iframe, ein user nur sehen kann, wenn er z.b. 200 userpunkte hat?
evtl. mit neuer gruppe z.b., hab hier auch ne thread dazu gefunden, aber der war noch für das vkp2.1.
vielleicht könnt ja jemand helfen, danke :)
Ohne den Code dazu schreiben zu können, denke ich sollte es mit einer Abfrage der Userpunkte in der Modul-Datei eigentlich gehen, in der Art:
If userpunkte > xx then
[Modulcode]
else
[ende der Datei]
----> also so in der Art ;)
Zitat von: exciting am 13 Mai 2007, 16:16:23
hallo gibt es eine möglichkeit, daß man z.b. ein modul, in dem fall enthält es nen iframe, ein user nur sehen kann, wenn er z.b. 200 userpunkte hat?
Möglich ist fast alles ;D
Versuch's mal mit diesem (
ungetestetem) Code:
<?php
if (!defined("mxMainFileLoaded")) die ("You can't access this file directly...");
// Right blocks: On = 1, Off = 0
$index = 1;
include("header.php");
if (MX_IS_USER) {
// Get usergroup and userpoints from database
$user_info = mxGetUserData();
$user_id = (int)$user_info['uid'];
$result = sql_query("select punkte from ${prefix}_userpoints where uid='$user_id'");
list($user_points) = sql_fetch_row($result);
if (($user_points >= 200) || MX_IS_ADMIN)) {
echo '<iframe src="URL zur anzuzeigenden Seite" name="FrameName" width="100%" height="500" align="center" scrolling="yes" marginheight="0" marginwidth="0" frameborder="0" framespacing="0"></iframe>';
} else {
OpenTableAl()
echo '<center>Du hast zu wenig Userpunkte, um den Inhalt zu sehen.</center>';
CloseTableAl()
}
} else {
OpenTableAl()
echo '<center>Du musst registriert und eingelogged sein, um den Inhalt zu sehen.</center>';
CloseTableAl()
}
include("footer.php");
?>
paar ; und ) fehler ausgebessert und es läuft :)
vielen vielen dank :)
<?php
if (!defined("mxMainFileLoaded")) die ("You can't access this file directly...");
// Right blocks: On = 1, Off = 0
$index = 1;
include("header.php");
if (MX_IS_USER) {
// Get usergroup and userpoints from database
$user_info = mxGetUserData();
$user_id = (int)$user_info['uid'];
$result = sql_query("select punkte from $mx12345_userpoints where uid='$user_id'");
list($user_points) = sql_fetch_row($result);
if (($user_points >= 200) || MX_IS_ADMIN) {
echo "<iframe src=\"www.seite.de/modulname\" name=\"FrameName\" width=\"100%\" height=\"500\" align=\"center\" scrolling=\"no\" marginheight=\"0\" marginwidth=\"0\" frameborder=\"0\" framespacing=\"0\"></iframe>";
} else {
OpenTableAl();
echo "<center>Du hast zu wenig Userpunkte, um dieses Feature zu nutzen.</center>";
CloseTableAl();
}
} else {
OpenTableAl();
echo "<center>Du musst registriert und eingelogged sein, um den Inhalt zu sehen.</center>";
CloseTableAl();
}
include("footer.php");
?>
ideal aber net zwingend notwendig wär halt jetzt noch daß beim aufruf die userpunkte aktualisiert werden.
:thumbup:
Den Code klau ich mir dann doch auch gleich mal, wenn auch erstmal nur auf Halde ;)
Zitat von: exciting am 13 Mai 2007, 21:11:07
paar ; und ) fehler ausgebessert und es läuft :)
Sorry für die Fehler, hatte es nur auf die schnelle zusammen gecoded. :red:
Zitat
ideal aber net zwingend notwendig wär halt jetzt noch daß beim aufruf die userpunkte aktualisiert werden.
Mit einer kleinen Erweiterung des Codes geht natürlich auch das. Hier der komplette Code:
<?php
if (!defined("mxMainFileLoaded")) die ("You can't access this file directly...");
// Right blocks: On = 1, Off = 0
$index = 1;
include("header.php");
if (MX_IS_USER) {
// Get usergroup and userpoints from database
$user_info = mxGetUserData();
$user_id = (int)$user_info['uid'];
if (@file_exists("modules/Your_Account/userpoints.php")){
if (!defined("mxYALoaded")) define("mxYALoaded", 1);
$uname = $user_info['uname'];
mxGetLangfile("Your_Account");
include_once("modules/Your_Account/userpoints.php");
}
$result = sql_query("select punkte from ${prefix}_userpoints where uid='$user_id'");
list($user_points) = sql_fetch_row($result);
if (($user_points >= 200) || MX_IS_ADMIN) {
echo '<iframe src="URL zur anzuzeigenden Seite" name="FrameName" width="100%" height="500" align="center" scrolling="yes" marginheight="0" marginwidth="0" frameborder="0" framespacing="0"></iframe>';
} else {
OpenTableAl();
echo '<center>Du hast zu wenig Userpunkte, um den Inhalt zu sehen.</center>';
CloseTableAl();
}
} else {
OpenTableAl();
echo '<center>Du musst registriert und eingelogged sein, um den Inhalt zu sehen.</center>';
CloseTableAl();
}
include("footer.php");
?>
vielen dank :)
brauchst dich doch net entschuldigen :)
is echt super, daß jeman den code hier postet :)
ideal wär jetzt noich, wenn der user sieht, wieviele userpunkte er gerade hat :)
wär das noch möglich?
danke :)
manchmal seh ich den wald wohl vor lauter bäumen net *g*
muss ja nur $punkte ausgeben :)
aber irgendwie mag er die >= abfrage net
hab noch bissle modifiziert und abfrage eingebaut:
ein testuser bekommt dann folgendes:
Sie haben zu wenig Userpunkte, um dieses Feature zu nutzen. Sammeln Sie Userpunkte, indem Sie sich aktiv an der Community beteiligen! Z.b. im Forum, senden Sie News, tragen Sie Reviews ein usw. Sie haben 16 Userpunkte Sie brauchen 10 Userpunkte. Es fehlen noch -6 Userpunkte
code sieht so aus momentan bei mir:
<?php
if (!defined("mxMainFileLoaded")) die ("You can't access this file directly...");
// Right blocks: On = 1, Off = 0
$index = 0;
include("header.php");
$mindestwert = 10;
if (MX_IS_USER) {
// Get usergroup and userpoints from database
$user_info = mxGetUserData();
$user_id = (int)$user_info['uid'];
if (@file_exists("modules/Your_Account/userpoints.php")){
if (!defined("mxYALoaded")) define("mxYALoaded", 1);
$uname = $user_info['uname'];
mxGetLangfile("Your_Account");
include_once("modules/Your_Account/userpoints.php");
}
$result = sql_query("select punkte from $mx12345_userpoints where uid='$user_id'");
list($user_points) = sql_fetch_row($result);
$rechnung = $mindestwert-$punkte;
if (($user_points >= $mindestwert) || MX_IS_ADMIN) {
$userA = mxGetUserData();
$username = $userA[uname];
echo "<table align=center width=80% height=300><tr><td align=center heigt=200>" . _WM_HALLO . " $username</td></tr><tr><tr><td align=center>
" . _WM_TEXT . "
</td><tr><td align=center><a href=\"http://www.seite.de/modul/index.php \">Zum Modul</a></td></tr></td>";
} else {
OpenTableAl();
echo "<center>" . _WM_POINTS . "</center><br>";
echo "<center>" . _WM_HAVEPOINTS . " $punkte " . _WM_HAVEPOINTS2 . "</center>";
echo "<center>" . _WM_MINPOINTS . " $mindestwert " . _WM_FEHLPOINTS . " $rechnung ". _WM_FEHLPOINTS2 . "</center>";
CloseTableAl();
}
} else {
OpenTableAl();
echo "<center>Du musst registriert und eingelogged sein, um den Inhalt zu sehen.</center>";
CloseTableAl();
}
include("footer.php");
?>
scheint als stimmt was net bei der >= abfrage.
ah
if (($user_points >= $mindestwert) || MX_IS_ADMIN) {
gehört umgeändert in
if (($punkte >= $mindestwert) || MX_IS_ADMIN) {