Autor Tópico: [SMF Converter] phpBB3  (Lida 4581 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline candidosa2

  • Suporte Tecnico
  • Fundador
  • *
  • Mensagens: 5044
  • Rank: 1658
  • Sexo: Masculino
  • Suporte
    • Hosting Moçambique
[SMF Converter] phpBB3
« em: 24 de Janeiro de 2009, 20:03 »
  • Publicar
  • Software: phpBB
    Versão: 3.0

    É finalmente aqui. Passei o dia inteiro trabalhando nisso e conseguiu obter uma versão beta para fora. O conversor ainda está em beta e há coisas que estão faltando. Se você tiver sugestões de outras coisas para converter apenas publicá-las:). Aqui está uma lista do que é convertido.

    Converte

         * Deputados
         * Graduação
         * Grupos
         * Categorias
         * Quadros
         * Tópicos
         * Correios
         * Postes
         * Mensagens pessoais
         * Enquetes

    Não converte

         * Permissões (Isto pode não ser suportada em todas as permissões de modo verifique antes de fazer a bordo de viver. Tudo será admin apenas para acesso bordo.)
         * Redireccionamento Câmaras (quero adicionar suporte para o redirecionamento placas mod.)
         * Avatares
         * Perfil Campos (Eu quero olhar para isto e ver se posso torná-las compatíveis SMF. Você só teria necessidade de fazer mudanças no modelo.)
         * Configurações básicas (converso algumas das configurações básicas fórum. (Nome do site, max pós comprimento, etc)
         * Smileys


    Senha Suporte
    phpBB tem seus próprios costumes hash senha para que você precise editar LogInOut.php senha para adicionar suporte para a conversão. Alternativamente, você pode utilizar o acompanha phpBB3_Login_Fix.tgz modificação (em anexo abaixo) via Package Manager.

    Pesquisar
    Código: [Seleccione]
    // Snitz style - SHA-256.  Technically, this is a downgrade, but most PHP configurations don't support sha256 anyway.
                if (strlen($user_settings['passwd']) == 64 && function_exists('mhash') && defined('MHASH_SHA256'))
                    $other_passwords[] = bin2hex(mhash(MHASH_SHA256, $_REQUEST['passwrd']));

    Adicionar por Baixo
    Código: [Seleccione]
    // phpBB3 users new hashing.
                $other_passwords[] = phpBB3_password_check($_REQUEST['passwrd'], $user_settings['passwd']);

    Pesquisar
    Código: [Seleccione]
    ?>
    Adicionar
    Código: [Seleccione]
    function phpBB3_password_check($passwd, $passwd_hash)
    {
        // Too long or too short?
        if (strlen($passwd_hash) != 34)
            return;

        // Range of characters allowed.
        $range = './0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';

        // Tests
        $strpos = strpos($range, $passwd_hash[3]);
        $count = 1 << $strpos;
        $count2 = $count;
       $salt = substr($passwd_hash, 4, 8);

        // Things are done differently for PHP 5.
        if (@version_compare(PHP_VERSION, '5') == 1)
        {
            $hash = md5($salt . $passwd, true);
            for (; $count != 0; --$count)
                $hash = md5($hash . $passwd, true);;
        }
        else
        {
            $hash = pack('H*', md5($salt . $passwd));
            for (; $count != 0; --$count)
                $hash = pack('H*', md5($hash . $passwd));
        }

        $output = substr($passwd_hash, 0, 12);
        $i = 0;
        while ($i < 16)
        {
            $value = ord($hash[$i++]);
            $output .= $range[$value & 0x3f];

            if ($i < 16)
                $value |= ord($hash[$i]) << 8;

            $output .= $range[($value >> 6) & 0x3f];

            if ($i++ >= 16)
                break;

            if ($i < 16)
                $value |= ord($hash[$i]) << 16;

            $output .= $range[($value >> 12) & 0x3f];

            if ($i++ >= 16)
                break;

            $output .= $range[($value >> 18) & 0x3f];
        }

        // Return now.
        return $output;
    }

    Notas:
    - Definir SMF para UTF-8 desde phpBB3 modo está definido para UTF-8 por omissão.

    Changelog
    ! Certifique-se de que todas os quadros obter convertidos corretamente.
    ! Primeiro upload.

    convert.php
    Utilize esta convert.php com a extensão. Sql arquivo anexado a este tópico.

     


    Facebook Comentários