Gewinnspielanpassung
Verfasst: 12.07.2006 13:03
Hi Leute,
ich möchte ein kleines Gewinnspiel machen. Man muss einfach nur eine Zahl zwischen 1 und 10.000 Tippen!! Anschaun kann man sichs im Moment unter http://www.all-around-board.de/gws.php (Mitgliedsname: phpbb | PW: phpbb )!! Früher was da mal ein Shopmod. Ich hab ihn ein bisschen umbebaut, aber es sind trotzdem noch total alte Stücke vom Shopmod zu sehn!! Der Code ist:
!!
Leider funktioniert der Test nur, wenn ichs mit dem Admin probier! Bei normalen Usern wird ein anderer Text per PN geschickt! kann mir jemand helfen?, das ein wenig anzupassen? mfG
ich möchte ein kleines Gewinnspiel machen. Man muss einfach nur eine Zahl zwischen 1 und 10.000 Tippen!! Anschaun kann man sichs im Moment unter http://www.all-around-board.de/gws.php (Mitgliedsname: phpbb | PW: phpbb )!! Früher was da mal ein Shopmod. Ich hab ihn ein bisschen umbebaut, aber es sind trotzdem noch total alte Stücke vom Shopmod zu sehn!! Der Code ist:
Code: Alles auswählen
<?php
define('IN_PHPBB', true);
$phpbb_root_path = './';
require_once($phpbb_root_path . 'extension.inc');
require_once($phpbb_root_path . 'common.'.$phpEx);
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
$from_userid = 42; // Absender User-ID eintragen, am besten einen neuen Benutzer anlegen dafür!!!
$to_userid = 2; // Empfänger User-ID eintragen
$field = 'user_points'; // Feld in der Datenbank ( phpbb_users ) wo das Feld zum Geld drinne steckt
if($userdata['user_id'] == ANONYMOUS)
{
redirect(append_sid($phpbb_root_path . 'login.' . $phpEx .'?redirect=shop.'.$phpEx));
}
$sql = "SELECT user_points, username, user_id FROM ".USERS_TABLE." WHERE user_id = '".$userdata['user_id']."' LIMIT 1";
if( !( $result = $db->sql_query($sql) ) )
{
message_die(GENERAL_ERROR, 'Kann den User Cash nicht auslesen!', '', __LINE__, __FILE__, $sql);
}
$usercash = $db->sql_fetchrow($result);
$usercash = $usercash[user_points];
$item_price = array(
0 => 0,
1 => 5,
);
$item_name = array(
0 => '',
1 => 'abschicken',
);
$item_id = intval($_GET['item']);
if(isset($_GET['item']))
{
if($usercash > $item_price[$item_id])
{
if( isset($_GET['submit_name']) )
{
$name = ' Der User hat folgende Zahl getippt: (wenn hier nichst steht hat der User ein anderes Item gewählt; siehe oben): '.$_GET['new_name'];
}
$usercash = $usercash - intval($item_price[$item_id]);
$time = time();
$sql = "UPDATE ".USERS_TABLE." SET user_points = '".$usercash."' WHERE user_id = '".$userdata['user_id']."'";
if( !( $result = $db->sql_query($sql) ) )
{
message_die(GENERAL_ERROR, 'Konnte das Shopelement nicht kaufen, wegen nem SQL-Error', '', __LINE__, __FILE__, $sql);
}
$sql = "SELECT `privmsgs_id` AS `total` FROM `".PRIVMSGS_TABLE."` ORDER BY `privmsgs_id` DESC LIMIT 1";
if( !( $result = $db->sql_query($sql) ) )
{
message_die(GENERAL_ERROR, 'Kann keine PN-Daten abfragen', '', __LINE__, __FILE__, $sql);
}
$row = $db->sql_fetchrow($result);
$post_id = intval($row['total']) + 1;
$sql = "INSERT INTO `".PRIVMSGS_TABLE."` (`privmsgs_type`, `privmsgs_subject`, `privmsgs_from_userid`, `privmsgs_to_userid`, `privmsgs_date`, `privmsgs_ip`, `privmsgs_enable_bbcode`, `privmsgs_enable_html`, `privmsgs_enable_smilies`, `privmsgs_attach_sig`)
VALUES (5, 'Kauf eines Shopelemnts', $from_userid, $to_userid, '$time', '127001', 0, 1, 1, 1)";
if( !( $result = $db->sql_query($sql) ) )
{
message_die(GENERAL_ERROR, 'Kann keine PN hinterlegen', '', __LINE__, __FILE__, $sql);
}
$sql = "INSERT INTO `".PRIVMSGS_TEXT_TABLE."` (`privmsgs_text_id`, `privmsgs_bbcode_uid`, `privmsgs_text`) VALUES ('".$post_id."', '099f1a0101', 'Benutzer: ".$userdata['username']." hat folgendes ITEM gekauft: ".$item_name[$item_id]." Bitte kontaktiere ihn für weitere Informationen zum Item".$name."')";
if( !( $result = $db->sql_query($sql) ) )
{
message_die(GENERAL_ERROR, 'Kann keine PN hinterlegen', '', __LINE__, __FILE__, $sql);
}
$sql = "SELECT `user_id`, `user_new_privmsg` FROM `".USERS_TABLE."` WHERE `user_id` = $to_userid";
if( !( $result = $db->sql_query($sql) ) )
{
message_die(GENERAL_ERROR, 'Kann keine PN hinterlegen', '', __LINE__, __FILE__, $sql);
}
$benutzerdaten = $db->sql_fetchrow($result);
$new_pn = intval($benutzerdaten['user_new_privmsg']) + 1;
$sql = "UPDATE `".USERS_TABLE."` SET `user_new_privmsg` = '$new_pn' WHERE `user_id` = $to_userid";
if( !( $result = $db->sql_query($sql) ) )
{
message_die(GENERAL_ERROR, 'Kann keine PN hinterlegen', '', __LINE__, __FILE__, $sql);
}
}
else
{
message_die(GENERAL_ERROR, 'Du hast nicht genug Geld um das Item zu kaufen');
}
if( headers_sent() )
{
die('<meta http-equiv="refresh" content="0; url='. $phpbb_root_path . 'shop.php?sid='.$userdata['session_id'].'&buyed=' . $item_id. '" />');
}
else
{
redirect(append_sid($phpbb_root_path . 'shop.' . $phpEx . '?buyed=' . $item_id));
}
}
$page_title = 'Shop';
require_once($phpbb_root_path . 'includes/page_header.'.$phpEx);
if($_GET['buyed'])
{
$buyedid = $_GET['buyed'];
$buyedid = intval($buyedid);
?>
<br />
<table border="0" width="100%">
<tr>
<td class="gen"><b><a href="./index.php" style="color:#FFFFFF; font-size:10px; cursor:crosshair;">Zurück zur Forenübersicht</a></b></td>
</tr>
</table>
<br />
<table border="0" width="100%" class="forumline gen" cellpadding="2" cellspacing="1">
<tr>
<th class="tHead">Herzlichen Glückwunsch</th>
</tr>
<tr>
<td class="row1" align="center">Du hast folgendes Item gekauft: <?= $item_name[$buyedid] ?><br />
Es hat <?= $item_price[$buyedid] ?> Forengeld gekostet.<br />
<br />
Ein Administrator wird dich bald kontaktieren.</td>
</tr>
</table>
<br />
<?
}
else if($_GET['buyed'] == "" && $_GET['item'] == "")
{
?>
<table width="80%" cellspacing="2" cellpadding="2" border="0" align="center">
<tr>
<td class="nav"><a href="./index.php" clasS="nav"><?= $board_config['sitename'] ?> Foren-Übersicht</a></td>
</tr>
</table>
<table class="forumline" width="80%" cellspacing="1" cellpadding="4" border="0">
<tr>
<th width="25%" class="tHead">Hinweis</th>
<th width="25%" class="tHead">Deine Zahl</th>
<th width="25%" class="tHead">Los geht's</th>
<th width="25%" class="tHead">Teilnahmebediungung;</th>
</tr>
<tr>
<td class="row1" rowspan="8" valign="top" align="center"><span class="gen"><b>Um an dem Gewinnspiel teilzunehmen, tippe eine Zahl zwischen 1 und 10.000!!</b></span></td>
<td class="row1" align="center"><b>Sachpreise:</b> <br>MiniShisha<br>GTA Vice City<br>Jack Johnson Album<br>
<td class="row1"><form method="get"> <input type="hidden" value="3" name="item" /> <input type="submit" name="submit_name" value="<?= $item_name[3] ?>" style="text-decoration:underline; border:none; background:none; cursor:hand;"; /> <br />Deine Tippzahl: <input type="text" name="new_name" /></form>(Enter drücken)</td><br>
<td class="row1" rowspan="8" valign="top" align="center"><span class="gen">Mindestbeiträge: 15 Posts <br><br>Mindestbeteiligung: 75 User</span></td>
</tr>
<tr>
</tr>
</table>
<br />
<?
}
require_once($phpbb_root_path . 'includes/page_tail.'.$phpEx);
?>
Leider funktioniert der Test nur, wenn ichs mit dem Admin probier! Bei normalen Usern wird ein anderer Text per PN geschickt! kann mir jemand helfen?, das ein wenig anzupassen? mfG