bloeff
10.09.2009, 18:55
Ich hab mich hingesetzt und mal bissl was geschrieben und zwar geht es darum das User vor allem neue User erst Freigeschaltet werden müssen bevor sie den Paid4 Bereich nutzen dürfen.
Dazu muss man:
1. Datenbank erweitern:
CREATE TABLE `vms_klickberechtigung` (
`uid` INT( 7 ) NOT NULL DEFAULT '0',
`klicken` TINYINT( 1 ) NOT NULL DEFAULT '1',
PRIMARY KEY (`uid`)
) ENGINE = MYISAM ;2. Im Adminbereich in der userbearbeiten.php
nach
db_query ('UPDATE '.$db_prefix.'_userdaten SET vorname = "'.$_POST['vorname'].'", nachname = "'.$_POST['nachname'].'" WHERE uid = '.$_POST['uid']);das
db_query ('UPDATE '.$db_prefix.'_klickberechtigung SET klicken = "'.$_POST['klicken'].'" WHERE uid = '.$_POST['uid']);einfügen und
$sql = db_query ('SELECT * FROM '.$db_prefix.'_kontodaten t1, '.$db_prefix.'_userdaten t2, '.$db_prefix.'_emaildaten t3, '.$db_prefix.'_werberdaten t4 WHERE t1.uid = '.$_POST['uid'].' AND t2.uid = '.$_POST['uid'].' AND t3.uid = '.$_POST['uid'].' AND t4.uid = '.$_POST['uid'].' LIMIT 1');durch
$sql = db_query ('SELECT * FROM '.$db_prefix.'_kontodaten t1, '.$db_prefix.'_userdaten t2, '.$db_prefix.'_emaildaten t3, '.$db_prefix.'_werberdaten t4, '.$db_prefix.'_klickberechtigung t5 WHERE t1.uid = '.$_POST['uid'].' AND t2.uid = '.$_POST['uid'].' AND t3.uid = '.$_POST['uid'].' AND t4.uid = '.$_POST['uid'].' AND t5.uid = '.$_POST['uid'].' LIMIT 1');ersetzen und nach
<tr bgcolor="#fafafa">
<td align="right"><b>eMail-Empfang</b>: </td>
<td align="left"> <select name="freigabe_fuer" size="1">
<option value="0" <?if ($alledaten['freigabe_fuer'] == 0) echo'SELECTED';?>>Kein Empfang</option>
<option value="1" <?if ($alledaten['freigabe_fuer'] == 1) echo'SELECTED';?>>Nur Newsletter</option>
<option value="2" <?if ($alledaten['freigabe_fuer'] == 2) echo'SELECTED';?>>Nur Paidmails</option>
<option value="3" <?if ($alledaten['freigabe_fuer'] == 3) echo'SELECTED';?>>Newsletter / Paidmails</option>
</select></td>
</tr>das
<tr bgcolor="#ededed">
<td align="right"><b>Klickberechtigung</b>: </td>
<td align="left"> <select name="klicken" size="1">
<option value="0" <?if ($alledaten['klicken'] == 0) echo'SELECTED';?>>Ja!</option>
<option value="1" <?if ($alledaten['klicken'] == 1) echo'SELECTED';?>>Nein!</option>
</select></td>
</tr>einfügen
3. im Usermenue menue_links.php
vor
<?menuehead("Verdienen");?>das
<?
$sql = db_query("SELECT klicken FROM ".$db_prefix."_klickberechtigung WHERE uid=".$_SESSION['uid']." LIMIT 1");
$klicken = mysql_fetch_array($sql)
?>und danach
<?if ($klicken['klicken'] == '0'){?>und vor
<?menuefoot();?>das hier
<?}
else
{
echo "Bitte lassen sie sich von ihrem Admin für diesen Bereich freischalten.";
}
?>4.in der anmeldung.php
nach
// User eintragen
if (!$error) {
if ($_POST['newsletter'] == 0 and $_POST['paidmails'] == 0) $mailstatus = 0;
if ($_POST['newsletter'] == 1 and $_POST['paidmails'] == 0) $mailstatus = 1;
if ($_POST['newsletter'] == 0 and $_POST['paidmails'] == 1) $mailstatus = 2;
if ($_POST['newsletter'] == 1 and $_POST['paidmails'] == 1) $mailstatus = 3;das hier
db_query("INSERT INTO ".$db_prefix."_klickberechtigung (uid,klicken) VALUES ('".$_POST['uid']."','1')");einfügen
So das wars auch schon. Bei belieben kann die Abfrage aus 3. noch in die klick4.php usw eingefügt werden um einen Direktaufruf zu vermeiden.
Normalerweise müsste das alles so funktionieren. Für Verbesserungsvorschläge bin natürlich jederzeit offen.
Dazu muss man:
1. Datenbank erweitern:
CREATE TABLE `vms_klickberechtigung` (
`uid` INT( 7 ) NOT NULL DEFAULT '0',
`klicken` TINYINT( 1 ) NOT NULL DEFAULT '1',
PRIMARY KEY (`uid`)
) ENGINE = MYISAM ;2. Im Adminbereich in der userbearbeiten.php
nach
db_query ('UPDATE '.$db_prefix.'_userdaten SET vorname = "'.$_POST['vorname'].'", nachname = "'.$_POST['nachname'].'" WHERE uid = '.$_POST['uid']);das
db_query ('UPDATE '.$db_prefix.'_klickberechtigung SET klicken = "'.$_POST['klicken'].'" WHERE uid = '.$_POST['uid']);einfügen und
$sql = db_query ('SELECT * FROM '.$db_prefix.'_kontodaten t1, '.$db_prefix.'_userdaten t2, '.$db_prefix.'_emaildaten t3, '.$db_prefix.'_werberdaten t4 WHERE t1.uid = '.$_POST['uid'].' AND t2.uid = '.$_POST['uid'].' AND t3.uid = '.$_POST['uid'].' AND t4.uid = '.$_POST['uid'].' LIMIT 1');durch
$sql = db_query ('SELECT * FROM '.$db_prefix.'_kontodaten t1, '.$db_prefix.'_userdaten t2, '.$db_prefix.'_emaildaten t3, '.$db_prefix.'_werberdaten t4, '.$db_prefix.'_klickberechtigung t5 WHERE t1.uid = '.$_POST['uid'].' AND t2.uid = '.$_POST['uid'].' AND t3.uid = '.$_POST['uid'].' AND t4.uid = '.$_POST['uid'].' AND t5.uid = '.$_POST['uid'].' LIMIT 1');ersetzen und nach
<tr bgcolor="#fafafa">
<td align="right"><b>eMail-Empfang</b>: </td>
<td align="left"> <select name="freigabe_fuer" size="1">
<option value="0" <?if ($alledaten['freigabe_fuer'] == 0) echo'SELECTED';?>>Kein Empfang</option>
<option value="1" <?if ($alledaten['freigabe_fuer'] == 1) echo'SELECTED';?>>Nur Newsletter</option>
<option value="2" <?if ($alledaten['freigabe_fuer'] == 2) echo'SELECTED';?>>Nur Paidmails</option>
<option value="3" <?if ($alledaten['freigabe_fuer'] == 3) echo'SELECTED';?>>Newsletter / Paidmails</option>
</select></td>
</tr>das
<tr bgcolor="#ededed">
<td align="right"><b>Klickberechtigung</b>: </td>
<td align="left"> <select name="klicken" size="1">
<option value="0" <?if ($alledaten['klicken'] == 0) echo'SELECTED';?>>Ja!</option>
<option value="1" <?if ($alledaten['klicken'] == 1) echo'SELECTED';?>>Nein!</option>
</select></td>
</tr>einfügen
3. im Usermenue menue_links.php
vor
<?menuehead("Verdienen");?>das
<?
$sql = db_query("SELECT klicken FROM ".$db_prefix."_klickberechtigung WHERE uid=".$_SESSION['uid']." LIMIT 1");
$klicken = mysql_fetch_array($sql)
?>und danach
<?if ($klicken['klicken'] == '0'){?>und vor
<?menuefoot();?>das hier
<?}
else
{
echo "Bitte lassen sie sich von ihrem Admin für diesen Bereich freischalten.";
}
?>4.in der anmeldung.php
nach
// User eintragen
if (!$error) {
if ($_POST['newsletter'] == 0 and $_POST['paidmails'] == 0) $mailstatus = 0;
if ($_POST['newsletter'] == 1 and $_POST['paidmails'] == 0) $mailstatus = 1;
if ($_POST['newsletter'] == 0 and $_POST['paidmails'] == 1) $mailstatus = 2;
if ($_POST['newsletter'] == 1 and $_POST['paidmails'] == 1) $mailstatus = 3;das hier
db_query("INSERT INTO ".$db_prefix."_klickberechtigung (uid,klicken) VALUES ('".$_POST['uid']."','1')");einfügen
So das wars auch schon. Bei belieben kann die Abfrage aus 3. noch in die klick4.php usw eingefügt werden um einen Direktaufruf zu vermeiden.
Normalerweise müsste das alles so funktionieren. Für Verbesserungsvorschläge bin natürlich jederzeit offen.