WCF/WBB-Bridge

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • WCF/WBB-Bridge

    Howdy allerseits,

    ich würde gerne für eine Seite die ich gerade entwickle eine Art Bridge bauen,
    dass heißt registriert sich der Benutzer auf der Hauptseite (> eigenes CMS/System)
    soll der Benutzer auch im Forum (> WBB2Lite) registriert sein.
    Gibt es dazu irgendeine API o.ä. um das zu realisieren?
  • Hallo,
    dazu gibt es eine fertige Lösung - zu sehen hier: community.woltlab.com/forum/su…terner-login-logout-v1-0/

    Ich habe eine Jabber Login Klasse geschrieben - die kannst du natürlich auch verwenden: trac.easy-coding.de/trac/wcf/browser/jabber/wcf-login
    Wenn du nach diesem Verfahren arbeitest, wird jedoch kein Cookie gespeichert.
    Je nach Coding Skills solltest du also vielleicht doch die erste Lösung nehmen.
  • In der "unsauberen"/alten Version meiner Website habe ich die Userdaten vom wbb3 genutzt. Der Code muss zwar komplett überarbeitet werden, aber man kann ihn dennoch nutzen.

    Quellcode

    1. <?php
    2. if (!defined('wBB')) define('wBB', '/var/www/board/');
    3. require_once (wBB.'global.php');
    4. if (!isset($_COOKIE['wcf_userID']))
    5. {
    6. if (isset($_POST['nick']))
    7. $username = secure($_POST['nick']);
    8. if (isset($_POST['pass']))
    9. $password = $_POST['pass'];
    10. $time = microtime();
    11. if (isset($username) && isset($password))
    12. {
    13. if (UserUtil::isValidUsername($username) == 1)
    14. {
    15. if (UserUtil::isAvailableUsername($username) != 1)
    16. {
    17. $inhalt .= '<h1>Login</h1><center>';
    18. mysql_select_db("board", $sql);
    19. $res = mysql_query("SELECT `userID` FROM `wcf1_user` WHERE `username`='$username'", $sql) or die(mysql_error());
    20. $row = mysql_fetch_object($res);
    21. $user = new User($row->userID);
    22. if ($user->checkPassword($password) == 1)
    23. {
    24. HeaderUtil::setCookie("userID", $user->userID, TIME_NOW + 365 * 24 * 3600);
    25. HeaderUtil::setCookie("password", StringUtil::getSaltedHash($password, $user->salt), TIME_NOW + 365 * 24 * 3600);
    26. $nick = $user->username;
    27. $uid = $user->userID;
    28. $inhalt .= 'Thank you for logging in, '.$nick.'.<br>';
    29. if (isset($_COOKIE['wcf_cookieHash']))
    30. {
    31. $session = $_COOKIE['wcf_cookieHash'];
    32. mysql_query("UPDATE `wcf1_session` SET `userID`='$uid', `username`='$nick' WHERE `sessionID`='$session'") or die(mysql_error());
    33. }
    34. $referer = "/";
    35. }
    36. else
    37. {
    38. $inhalt .= 'You\'ve entered a wrong password!<br>';
    39. }
    40. mysql_select_db($db_name, $sql);
    41. }
    42. else
    43. {
    44. $inhalt .= 'That Username isn\'t registered!<br>';
    45. }
    46. }
    47. else
    48. {
    49. $inhalt .= 'You\'ve entered an invalid Username!<br>';
    50. }
    51. }
    52. ?>
    Alles anzeigen