reisser
20.08.2005, 15:16
Hallo,
ich habe einen kleinen Hack für die Registrierung in meinem Board erstellt.
Dazu benötigte ich zwei Profilfelder:
"Was bin ich?" - Studenten, Professoren, etc.
"Matri-nummer - 5 stellige Nummer
Beide Felder werden bei der Registration zwingend abgefragt.
Hier nun der Code
if ($bbuserinfo['field5'] == 'Studenten' )
{
$sqlmail = $DB_site->query_first("SELECT email FROM " . TABLE_PREFIX . "Matrikular WHERE MatriNr =".$bbuserinfo['field6']."");
$sqlStat = $DB_site->query_first("SELECT Status FROM " . TABLE_PREFIX . "Matrikular WHERE MatriNr =".$bbuserinfo['field6']."");
if ( $sqlmail == $bbuserinfo['email'] AND $sqlStat == '0' )
{
$user['usergroupid'] = 9;
$DB_site->query("UPDATE " . TABLE_PREFIX . "Matrikular SET Status = '1' WHERE MatriNr=".$bbuserinfo['field6']."");
}
else
{
$user['usergroupid'] = 4;
}
}
else if ( $bbuserinfo['field5'] == 'Professoren' OR $bbuserinfo['field5'] == 'Lehrbeauftragte' )
{
$comparemail = stristr($bbuserinfo['email'], $vboptions['Ver_string']);
if ( $comparemail == FALSE )
{
$user['usergroupid'] = 4;
}
else
{
$differ = stristr( $bbuserinfo['email'], '.' );
if ( $differ == '.de' )
{
$mailtest = var1;
}
else
{
$mailtest = var2;
}
if ($bbuserinfo['field5'] == 'Professoren' AND $mailtest == var2)
{
$user['usergroupid'] = 10;
}
else if ($bbuserinfo['field5'] == 'Lehrbeauftragte' AND $mailtest == var2)
{
$user['usergroupid'] = 11;
}
else
{
$user['usergroupid'] = 4;
}
}
}
Wichtig ist im Moment nur der erste Teil bis zum "else if"
Wenn für das Profilfeld 5 "Studenten" ausgewählt wurde, soll in einer Tablle geguckt werden ob die E-Mail, diejenige ist, die bei der Registration angegeben wurde und ob der Status ($sqlStat) 0 ist.
Nach der zuordnung in die Gruppe 9 würde er ja auf 1 gesetzt werden.
Leider wird grundsätzlich die benutzergruppe 4 gewählt, obwohl E-mail, Matrinummer und Status richtig sind.
weiß jemand vielleicht wo mein Fehler ist?
Vielen Dank
reisser
ich habe einen kleinen Hack für die Registrierung in meinem Board erstellt.
Dazu benötigte ich zwei Profilfelder:
"Was bin ich?" - Studenten, Professoren, etc.
"Matri-nummer - 5 stellige Nummer
Beide Felder werden bei der Registration zwingend abgefragt.
Hier nun der Code
if ($bbuserinfo['field5'] == 'Studenten' )
{
$sqlmail = $DB_site->query_first("SELECT email FROM " . TABLE_PREFIX . "Matrikular WHERE MatriNr =".$bbuserinfo['field6']."");
$sqlStat = $DB_site->query_first("SELECT Status FROM " . TABLE_PREFIX . "Matrikular WHERE MatriNr =".$bbuserinfo['field6']."");
if ( $sqlmail == $bbuserinfo['email'] AND $sqlStat == '0' )
{
$user['usergroupid'] = 9;
$DB_site->query("UPDATE " . TABLE_PREFIX . "Matrikular SET Status = '1' WHERE MatriNr=".$bbuserinfo['field6']."");
}
else
{
$user['usergroupid'] = 4;
}
}
else if ( $bbuserinfo['field5'] == 'Professoren' OR $bbuserinfo['field5'] == 'Lehrbeauftragte' )
{
$comparemail = stristr($bbuserinfo['email'], $vboptions['Ver_string']);
if ( $comparemail == FALSE )
{
$user['usergroupid'] = 4;
}
else
{
$differ = stristr( $bbuserinfo['email'], '.' );
if ( $differ == '.de' )
{
$mailtest = var1;
}
else
{
$mailtest = var2;
}
if ($bbuserinfo['field5'] == 'Professoren' AND $mailtest == var2)
{
$user['usergroupid'] = 10;
}
else if ($bbuserinfo['field5'] == 'Lehrbeauftragte' AND $mailtest == var2)
{
$user['usergroupid'] = 11;
}
else
{
$user['usergroupid'] = 4;
}
}
}
Wichtig ist im Moment nur der erste Teil bis zum "else if"
Wenn für das Profilfeld 5 "Studenten" ausgewählt wurde, soll in einer Tablle geguckt werden ob die E-Mail, diejenige ist, die bei der Registration angegeben wurde und ob der Status ($sqlStat) 0 ist.
Nach der zuordnung in die Gruppe 9 würde er ja auf 1 gesetzt werden.
Leider wird grundsätzlich die benutzergruppe 4 gewählt, obwohl E-mail, Matrinummer und Status richtig sind.
weiß jemand vielleicht wo mein Fehler ist?
Vielen Dank
reisser