So damit diese Diskussion ein Ende hat und ich nicht als schlechter Mensch hingestellt werde und ich in den Himmel komme.
Bevor mir hier eventuell nichts gutes mehr wiederfährt in sachen Hilfestellung habe ich mir die Arbeit gemacht meine oben gepostete test Datei mal funktionsfähig zu machen ohne meine eigenen Prüf Routinen bzw. Kriterien zu verwenden.
Man könnte nun aus dem Script noch einieges raus nehmen wie z.b. die while schleife wo user acvtive geholt wird und dies mit in die SQL Anweisung einbauen, und z.B. den Sicherheitscheck ob der User auch in der ForenDB existiert da ja die userdaten schon aus der foren db kommen, also muss er dort ja logischerweise existieren.
Macht wat ihr wollt daraus und nutzt es sinnvoll wer auch immer es nutzen möchte.
Code: Alles auswählen
<?php
// Damit nicht die Fehlermeldung Hacking attempt kommt
define('IN_PHPBB', true);
// Erstellt gesendetes Password & Usernamen als String
$md5pwd = $_POST["pwd"];
$username = $_POST["usr"];
// Prüft ob Username zu Password gehört
$query_login = "SELECT username, user_password, user_id, user_active FROM phpbb_users WHERE username = '$username' AND user_password = '".md5($md5pwd)."'";
$result_login = mysql_query ($query_login);
// Schleife um user_active zu prüfen
while($row_login=mysql_fetch_array($result_login)) {
$user_active = $row_login['user_active'];
$user_id = $row_login['user_id'];
}
// Ist Username & User Password gleich & User active 1 ist LogIn Ok und Sessions werden erstellt
if (mysql_num_rows ($result_login) == 1 && $user_active == 1)
{
// Speichert Session in Datenbank phpbb_sessions
$sql_session_in = "INSERT INTO phpbb_sessions (
session_id,
session_user_id,
session_start,
session_time,
session_ip,
session_page,
session_logged_in,
session_admin)
VALUES (
'".md5(uniqid(mt_rand(), true))."',
'$user_id',
'".time()."',
'".time()."',
'".ip2long(getenv("REMOTE_ADDR"))."',
'0',
'1',
'0'
)";
mysql_query($sql_session_in);
echo "HIER KANN EIN TEXT REIN DAS LOGIN OK ODER NE HEADER LOCATION UF NE ANDERE SEITE NEN LINK ODER WAS WEIS ICH";
// Forenlogin Start
// phpBB Scripte einbinden
$phpbb_root_path = '../forum/'; // HIER DEN PFAD ANPASSEN !!!
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
// phpBB Session starten
$userdata = session_pagestart($user_ip, PAGE_INDEX);
// Ist der User aus dem Forum ausgeloggt?
if ( $userdata['user_id'] == ANONYMOUS || $userdata['session_user_id'] == ANONYMOUS )
{
// Sicherheitscheck ob der User auch in der ForenDB existiert
$phpbb_sql = "SELECT user_id FROM " . USERS_TABLE . "
WHERE user_id=$user_id";
$phpbb_query = $db->sql_query($phpbb_sql);
$phpbb_result = $db->sql_fetchrow($phpbb_query);
// Wenn ja, dann im Board einloggen
if ( !empty($phpbb_result['user_id']) )
{
session_begin($phpbb_result['user_id'], $user_ip, PAGE_INDEX, FALSE, TRUE);
// Am Ende alle verwendeten Variablen löschen
unset($phpbb_root_path, $phpbb_sql, $phpbb_query, $phpbb_result, $userdata);
}
}
// Forenlogin Ende
}
// Sind LogIn Daten falsch oder User nicht aktiviert zeigt er dieses Meldung an
else
{
echo "HIER FEHLERMELDUNG EINTRAGEN WENN LOGIN NICHT OK IST";
}
?>
Dazu dann noch das passende Login & fertig is :
Code: Alles auswählen
<form action="./verify.php" method="post">
<input name="usr" id="usr" onfocus="if(this.value == 'Username') this.value='';" onblur="if (this.value=='') this.value='Username';" value="Username">
<br>
<input name="pwd" type="password" id="pwd" onfocus="if(this.value == 'Passwort') this.value='';" onblur="if (this.value=='') this.value='Passwort';" value="Passwort">
<br>
<input type="submit" name="login" value="Login" />
</form>
So ich hoffe nun beruhigen sich hier mal wieder die Gemüter. Bei Fragen fragen und Euch wird geholfen.
LG Maria