News:

Want to get involved in developing SMF, then why not lend a hand on our github!

Main Menu

Convert phpbb2 a smf 2.0.18

Started by krator, September 21, 2021, 02:33:43 AM

Previous topic - Next topic

krator

Hola.

Trato de migrar un foro a SMF (de phpbb2 a smf 2.0.18). Durante el proceso obtengo en el navegador el siguiente error:
Converting posts (this may take some time)...
The database value you're trying to insert does not exist: poster_name

Ya hay muchos posts que se han copiado, pero entiendo que alguno debe estar dando problemas.
No veo fichero de log alguno en el directorio, por lo que no puedo determinar cual da el error.

¿Alguien me echa una mano?  ;)
Webmaster and developer of La Torre de marfil

krator

No he encontrado botón para editar. Supongo que cuando pasa x tiempo, no se puede editar los mensajes.

Actualizo con nueva información.
He encontrado la SELECT:
SELECT
p.post_id AS id_msg, p.topic_id AS id_topic, p.post_time AS poster_time,
p.poster_id AS id_member,
SUBSTRING(IFNULL(u.user_email, ''), 1, 255) AS poster_email,
SUBSTRING(IF(IFNULL(pt.post_subject, '') = '', t.topic_title, pt.post_subject), 1, 255) AS subject,
SUBSTRING(IF(IFNULL(p.post_username, '') = '', u.username, p.post_username), 1, 255) AS poster_name,
p.enable_smilies AS smileys_enabled, IF(p.post_edit_time > 0, p.post_edit_time, 0) AS modified_time,
CONCAT_WS('.', CONV(SUBSTRING(p.poster_ip, 1, 2), 16, 10), CONV(SUBSTRING(p.poster_ip, 3, 2), 16, 10), CONV(SUBSTRING(p.poster_ip, 5, 2), 16, 10), CONV(SUBSTRING(p.poster_ip, 7, 2), 16, 10)) AS poster_ip,
SUBSTRING(REPLACE(REPLACE(IF(pt.bbcode_uid = '', pt.post_text, REPLACE(REPLACE(REPLACE(pt.post_text, CONCAT(':u:', pt.bbcode_uid), ''), CONCAT(':1:', pt.bbcode_uid), ''), CONCAT(':', pt.bbcode_uid), '')), '\n', '<br />'), '"', '"'), 1, 65534) AS body,
p.forum_id AS id_board, '' AS modified_name, 'xx' AS icon
FROM {$from_prefix}posts AS p
INNER JOIN {$from_prefix}posts_text AS pt ON (pt.post_id = p.post_id)
INNER JOIN {$from_prefix}topics AS t ON (t.topic_id = p.topic_id)
LEFT JOIN {$from_prefix}users AS u ON (u.user_id = p.poster_id);
Y he podido encontrar los mensajes que dan problemas. Eran posts realizados por spammers cuyos usuarios fueron eliminados.
Supongo que hay varias formas de proceeder.
- Borrar los mensajes en phpbb2
- Modificar esta select para que no tome estos mensajes sin poster_name.

Creo que con esto, puedo dar por cerrado el tema. Seguiré intentando de migrar.
Gracias.
Webmaster and developer of La Torre de marfil

-Rock Lee-

Si es correcto creo esta fijdo en 90 minutos par poder editar, igualmente no te preocupes como agregas informacion de como poder resolverlo no se toma como doble publicacion ;). Lo daremos como resuelto igualmente cuaalquier problema puedes abrir otro tema :) y gracias por dejar una posible solucion!


Saludos!
¡Regresando como cual Fenix! ~ Bomber Code
Ayudas - Aportes - Tutoriales - Y mucho mas!!!

Advertisement: