MyBB.de Forum
Konverter wbb 2.0.1 lite zu Mybb 1.4.9 - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: Anpassungen (https://www.mybb.de/forum/forum-47.html)
+--- Forum: Plugin-Veröffentlichungen und -Support (https://www.mybb.de/forum/forum-82.html)
+--- Thema: Konverter wbb 2.0.1 lite zu Mybb 1.4.9 (/thread-21854.html)

Seiten: Seiten: 1 2 3 4 5 6 7 8 9 10 11 12


RE: Konverter wbb 2.0.1 lite zu Mybb 1.4.9 - Harest - 29.09.2011

Wie ich als Admin an ein neues Pwasswort komme, habe ich schon im Beitrag 72 gesehen.
Wir haben aber über 200 IDs und nicht jede hat eine gültige eMail Adresse. (RPG-Ähnliches Forum).

Da es offenbar keine wirkliche Lösung für das Problem gibt, weiß ich zumindes woran ich bin. Vielleicht kann meine Mitspieler dennoch irgendwie überzeugen zu wechseln. Momentan nutzen wir noch das WBBLite 1.0.2. Ich versuche sie einfach mit einem neuen Theme zu locken Wink

Hab vielen Dank für deine schnelle Antwort.


RE: Konverter wbb 2.0.1 lite zu Mybb 1.4.9 - Guido Lehne - 29.09.2011

Hast du versucht das WBBLite 1.0.2 versucht zu konvertieren?
Ich werde mich hoffentlich demnächst mal dran setzten und den Konverter neu schreiben. Unteranderem um ihn mit der 1.6.x kompatibel zu machen.


RE: Konverter wbb 2.0.1 lite zu Mybb 1.4.9 - Harest - 30.09.2011

Nein, ich habe erst auf das WBBLite 2.0.1 upgraded und dann konvertiert.
Bisher der beste Weg, den ich gefunden habe. Der Umweg über das SMF klappt zwar auch, aber die Passwörter gehen trotzdem nicht.


RE: Konverter wbb 2.0.1 lite zu Mybb 1.4.9 - Harest - 30.09.2011

Nachtrag: Nachdem ich eine Nacht geschlafen habe, kam mir die Idee, dass das WBBLite 1.0.2 die Benutzerpasswörter evtl. anders generiert wie das WBBLite 2.0.1 und das Upgrade dies auch nicht ändert.
Habe in der functions.php des WBBLite 1.0.2 folgende Stelle gefunden:
PHP-Code:
function password_generate($numbers=2,$length=8) {

 
$time intval(substr(microtime(), 28));
 
mt_srand($time);

 
$numberchain="1234567890";

 for(
$i=0;$i<$numbers;$i++) {
  
$random=mt_rand(0,strlen($numberchain)-1);
  
$number[intval($numberchain[$random])]=mt_rand(1,9);
  
$numberchain=str_replace($random,"",$numberchain);
 }

 
$chain "abcdefghijklmnopqrstuvwxyz";
 for(
$i=0;$i<$length;$i++) {
  if(
$number[$i]) $password.=$number[$i];
  else 
$password.=$chain[mt_rand(0,strlen($chain)-1)];
 }
 return 
$password;

Zwar kann ich kleinere Dinge in PHP selbst machen, doch diesen Code in seiner Gänze zu verstehen übersteigt meine Fähigkeiten dann doch.
Liese sich damit die functions_user.php des MyBB (1.4 bzw. 1.6) so anpassen, dass man sich mit durch den zitieren Code erstellen Passwörtern einloggen kann?


RE: Konverter wbb 2.0.1 lite zu Mybb 1.4.9 - Guido Lehne - 30.09.2011

Ich hab mir jetzt mal schnell das Wbb lite 1.0.2 herunter geladen.
So wie du vermutet hast wird dort eine andere Passwortverschlüsselung genommen. Allerdings läuft die anders als in deinem Code.
Im Anhang siehst du eine functions_user.php mit der du es probieren kannst.
Dazu musst du allerdings in deiner Datenbank die bereits neu generierten Passwörter heraus löschen. ( nicht die mit wbb vorne dran).

Ok die Datei kann ich warum auch imemr grad nicht anhängen

Dann eben so:
füge vor
PHP-Code:
        if(sha1($user['wbbsalt'].sha1($user['wbbsalt'].sha1($password))) == $user['wbbpassword']) 

folgendes ein:
PHP-Code:
if(md5($password) ==  $user['wbbpassword'])
    {
        return 
$user;
    } 



RE: Konverter wbb 2.0.1 lite zu Mybb 1.4.9 - frostschutz - 30.09.2011

MyBB versteht auch selbst md5($password) ohne Salt, insofern könnte der Konverter das dann gleich so in die password-Spalte der Usertabelle schreiben. Bzw. wenn es da eine eigene Spalte wbbpassword gibt, ein UPDATE mybb_users SET salt='',password=wbbpassword oder sowas in der Art. Das ist jetzt aber wild geraten, ich habe weder selbst konvertiert noch mir den Konverter angeschaut...


RE: Konverter wbb 2.0.1 lite zu Mybb 1.4.9 - Guido Lehne - 30.09.2011

Wie kann Mybb das ungesalzen verstehen? Bisher ist mir da noch nichts zu aufgefallen.
Naja schauen wir uns erstmal an ob es denn auch so funktioniert...
Wenn ich den Konverter dann neu schreibe werde ich mich noch mal genauer mit der Passwort erstellung beschäftigen. Ist ja jetzt auch schon wieder eine Weile her das ich den Konverter geschrieben habe...


RE: Konverter wbb 2.0.1 lite zu Mybb 1.4.9 - StefanT - 30.09.2011

Wenn kein Salt vorhanden ist, wird einfach nur md5($password) verwendet. Der Salt wird dabei dann auch gleich erstellt.


RE: Konverter wbb 2.0.1 lite zu Mybb 1.4.9 - Harest - 30.09.2011

Ersteinmal vielen Dank für die Mühen.
Habe in der functions_user.php nun folgendes stehen:
PHP-Code:
if(!$user['loginkey'])
    {
        
$user['loginkey'] = generate_loginkey();
        
$sql_array = array(
            
"loginkey" => $user['loginkey']
        );
        
$db->update_query("users"$sql_array"uid = ".$user['uid'], 1);
    }

    if(
salt_password(md5($password), $user['salt']) == $user['password'])
    {
        return 
$user;
    }
    elseif(
md5($password) ==  $user['wbbpassword'])
    {
        return 
$user;
    }
    elseif((
sha1($user['wbbsalt'].sha1($user['wbbsalt'].sha1($password)))) == $user['wbbpassword'])
    {
        
$salt generate_salt();
        
$newpassword md5(md5($salt).md5($password));
        
$update = array("salt"=>"$salt","password"=>"$newpassword");

        
$db->update_query("users"$update "uid='$uid'"1);
        
        
        return 
$user;
    }
    else
    {
        return 
false;
    } 
Verwende die in diesem Beitrag angehängte datei für das MyBB 1.4.

Einloggen kann ich mich aber immernoch nicht. Habe in der Datenbank die Werte bei password, salt und loginkey gelöscht.


RE: Konverter wbb 2.0.1 lite zu Mybb 1.4.9 - Guido Lehne - 30.09.2011

Achso ok das war mir derzeit nicht bewusst.
Hmm .. leider kann ich mich grad nicht so sehr damit beschäftigen ich hoffe ich kann am Sonntag mit einer Lösung dienen.