phpBB login integreren
op het forum van phpbb zenden ze me allemaal naar dezelfde tutorial maar die is te moeilijk voor me aangezien ze niet alles stap per stap uitleggen
ik zou dus op mijn site
www.denoane.be
willen dat de mensen kunnen inloggen met hun account van op het forum en enkel deze mensen pictures.php kunnen bekijken.
Iemand een idee?
thx!
Gemakkelijk, je pakt een inlog systeem die de gebruikersnaam en wachtwoord (md5) uit de phpbb tabel haalt. Echter, je maakt dan gebruik van de tabel, niet het systeem... dus je gebruikers zullen apart moeten inloggen voor het forum en je normale website.
Oplossing2)
Is iets ingewikkelder, en ik denk dat dit net iets te hoog gegrepen ligt voor je. Maar dat is dus te kijken wat er in de sessie van phpbb opgeslagen word, en of je dat dus kunt hergebruiken. Soort reverse engineering. Of je vind ergens een handige tutorial op internet.
als ze dan inloggen voor pictures.php bijvoorbeeld, worden ze dan uitgelogd op het forum?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php
if (isset($_POST['login']))
{
$db_server = '';
$db_name = '';
$username = '';
$password = '';
$dbh = mysql_connect($db_server,$username,$password) or die
("Sorry, we konden geen verbinding maken met de databaseserver! Controlleer je instellingen.");
$db = mysql_select_db($db_name) or die
("We konden wel verbinding maken met de databaseserver, alleen konden we de juiste database niet vinden!");
if(!isset($_POST['naam']) && !isset($_POST['wachtwoord']))
{
echo 'Wel alles invullen ey!';
exit;
}
$naam = mysql_real_escape_string($_POST['naam']);
$wachtwoord = mysql_real_escape_string(md5($_POST['wachtwoord']));
if($naam == "Anonymous")
{
echo 'Neppert!';
exit;
}
$query = "SELECT * FROM phpbb_users WHERE username = '".$naam."' AND user_password = '".$wachtwoord."'";
$resultaat = mysql_query($query) or die(mysql_error());
$aantal = mysql_num_rows($resultaat);
if($aantal == 1)
{
$_SESSION['login'] = 1337;
}else{
echo 'Sorry, er gaat iets fout! Waarschijnlijk is je gebruikersnaam of wachtwoord onjuist.';
}
}
?>
if (isset($_POST['login']))
{
$db_server = '';
$db_name = '';
$username = '';
$password = '';
$dbh = mysql_connect($db_server,$username,$password) or die
("Sorry, we konden geen verbinding maken met de databaseserver! Controlleer je instellingen.");
$db = mysql_select_db($db_name) or die
("We konden wel verbinding maken met de databaseserver, alleen konden we de juiste database niet vinden!");
if(!isset($_POST['naam']) && !isset($_POST['wachtwoord']))
{
echo 'Wel alles invullen ey!';
exit;
}
$naam = mysql_real_escape_string($_POST['naam']);
$wachtwoord = mysql_real_escape_string(md5($_POST['wachtwoord']));
if($naam == "Anonymous")
{
echo 'Neppert!';
exit;
}
$query = "SELECT * FROM phpbb_users WHERE username = '".$naam."' AND user_password = '".$wachtwoord."'";
$resultaat = mysql_query($query) or die(mysql_error());
$aantal = mysql_num_rows($resultaat);
if($aantal == 1)
{
$_SESSION['login'] = 1337;
}else{
echo 'Sorry, er gaat iets fout! Waarschijnlijk is je gebruikersnaam of wachtwoord onjuist.';
}
}
?>
Eventueel kan je ook nog extra gegevens ophalen uit die query voor een begroeting of voor in de sessie.
nu nog enkel men login.htm zelf aanmaken dan?
{
blabla
}
zou je natuurlijk ook kunnen veranderen in
Code (php)
Dan ben je er al bijna :).
merci direct keer proberen zi ;)
Maak een tabel aan met de naam: Online (of anders)
Dan zet je bij de phpBB login systeem die regeltjes dat er in die online tabel je naam, wachtwoord en ip komt te staan..
Als je dan dit bij download of zo doet dan hoef je maar 1 keer in te loggen:
($user moet inlog naam zijn en $pass wachtwoord)
$ip = $_SERVER['REMOTE_ADDR'];
$select = mysql_query("SELECT * FROM Online WHERE user = '$user' AND pass = '$pass'");
if (!select)
{
echo "'Je bent niet ingelogt!";
}else{
//je script hier
}
Ik weet ook niet zeker als dat werkt wat ik net heb getypt.. ik maak namelijk zoon beetje altijd van die stomme fouten..
krijg het namelijk nog altijd nie werkende :$
tlukt me echt niet :(
Meer dan een veld 'naam' en 'wachtwoord' is het niet.
wat is hier mis aan?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
<?php
if($_SERVER['REQUEST_METHOD'] == "POST")
{
$db_server = 'mysqlhost';
$db_name = 'xxx';
$username = 'xxx';
$password = 'xxx';
$dbh = mysql_connect($db_server,$username,$password) or die
("Sorry, we konden geen verbinding maken met de databaseserver! Controlleer je instellingen.");
$db = mysql_select_db($db_name) or die
("We konden wel verbinding maken met de databaseserver, alleen konden we de juiste database niet vinden!");
if(!isset($_POST['naam']) && !isset($_POST['wachtwoord']))
{
echo 'Wel alles invullen ey!';
exit;
}
$naam = mysql_real_escape_string($_POST['naam']);
$wachtwoord = mysql_real_escape_string(md5($_POST['wachtwoord']));
if($naam == "Anonymous")
{
echo 'Neppert!';
exit;
}
$query = "SELECT * FROM phpbb_users WHERE username = '".$naam."' AND user_password = '".$wachtwoord."'";
$resultaat = mysql_query($query) or die(mysql_error());
$aantal = mysql_num_rows($resultaat);
if($aantal == 1)
{
$_SESSION['login'] = 1337;
}else{
echo 'Sorry, er gaat iets fout! Waarschijnlijk is je gebruikersnaam of wachtwoord onjuist.';
}
}
else{
?>
<form name="login" method="post" action="">
naam
<input name="naam" type="text" id="naam" tabindex="1">
<br>
pass
<input name="paswoord" type="password" id="paswoord" tabindex="2">
<br>
<input type="submit" name="Submit" value="Submit">
</form>
<?php
}
?>
if($_SERVER['REQUEST_METHOD'] == "POST")
{
$db_server = 'mysqlhost';
$db_name = 'xxx';
$username = 'xxx';
$password = 'xxx';
$dbh = mysql_connect($db_server,$username,$password) or die
("Sorry, we konden geen verbinding maken met de databaseserver! Controlleer je instellingen.");
$db = mysql_select_db($db_name) or die
("We konden wel verbinding maken met de databaseserver, alleen konden we de juiste database niet vinden!");
if(!isset($_POST['naam']) && !isset($_POST['wachtwoord']))
{
echo 'Wel alles invullen ey!';
exit;
}
$naam = mysql_real_escape_string($_POST['naam']);
$wachtwoord = mysql_real_escape_string(md5($_POST['wachtwoord']));
if($naam == "Anonymous")
{
echo 'Neppert!';
exit;
}
$query = "SELECT * FROM phpbb_users WHERE username = '".$naam."' AND user_password = '".$wachtwoord."'";
$resultaat = mysql_query($query) or die(mysql_error());
$aantal = mysql_num_rows($resultaat);
if($aantal == 1)
{
$_SESSION['login'] = 1337;
}else{
echo 'Sorry, er gaat iets fout! Waarschijnlijk is je gebruikersnaam of wachtwoord onjuist.';
}
}
else{
?>
<form name="login" method="post" action="">
naam
<input name="naam" type="text" id="naam" tabindex="1">
<br>
pass
<input name="paswoord" type="password" id="paswoord" tabindex="2">
<br>
<input type="submit" name="Submit" value="Submit">
</form>
<?php
}
?>
action="" is leeg, dat is vaak niet handig.
naam
<input name="naam" type="text" id="naam" tabindex="1">
<br>
pass
<input name="paswoord" type="password" id="paswoord" tabindex="2">
<br>
<input type="submit" name="Submit" value="Submit">
na enig opzoekingswerk maarja;..