News:

Bored?  Looking to kill some time?  Want to chat with other SMF users?  Join us in IRC chat or Discord

Main Menu

Problemon con borrado de usuarios

Started by SiToS, May 01, 2005, 08:54:24 PM

Previous topic - Next topic

SiToS

Hola!

Bueno hoy sin kerer he borrado 20 personas de mi foro(incluidos admins etc...) y quisiera saber la manera de que todo quede como estaba. Ahora todos los mensajes de los usuarios borrados salen como invitados

- El ultimo backup que tengo es de hace 10 dias... y se perderian + de 500 mensajes que no kiero perder.

- He probado a subir la tabla smf_members con todos los usuarios pero siguen saliendo como visitantes.

Ahora que puedo hacer???? Por que si subo la tabla smf_members con los usuarios que he borrado... no se ponen otra vez los mensajes con su autor???

Tengo que subir tambien la tabla smf_messages para que vuelvan a verse los mensajes de cada autor?

hay alguna manera mas facil??

Gracias

Omar Bazavilvazo

#1
1) Para empezar, tienes que agregar en smf (a pie) a tus usuarios que les diste matarile. Fijate cada usuario que ID_MEMBER tiene (eso lo ves al ver su perfil, el paramatro u=xx)

2) necesitas phpMyAdmin, para modificar cosas directamente de la bse de datos. eso debe venir con tu plan de hospedaje, o instalalo

3) en phpmyadmin, haz este query:

UPDATE smf_messages SET ID_MEMBER = <SU_NUEVO_ID_MEMBER> WHERE posterEmail = '<SU_DIRECCION_DE_EMAIL>';

(por ejemplo, UPDATE smf_messages SET ID_MEMBER = 12345 WHERE posterEmail = '[email protected]';)

4) crea un archivo, restore.php en el mismo directorio del foro, con esto:

<?php
//Include SSI.php as a quick and dirty way to get access to all the stuff we need...
include_once('SSI.php');
//Get the ID_TOPIC values for the topics that need updating...
$query1 = db_query("SELECT t.ID_TOPIC, m.ID_MSG FROM {$db_prefix}messages AS m, {$db_prefix}topics AS t WHERE t.ID_FIRST_MSG = m.ID_MSG AND m.ID_POSTER = 'their_new_user_id'", __FILE__, __LINE__);
//Do the updating
while($stuff = mysql_fetch_assoc($query1))
{
$query2 = db_query("UPDATE {$db_prefix}members SET ID_MEMBER_STARTED = 'their_new_user_id' WHERE ID_TOPIC = '$stuff[ID_TOPIC]'", __FILE__, __LINE__);
}
?>

cambia their_new_user_id con ese ID que hemos estado usando, y navega a ese archivo para ejecutarlo (por ejemplo http://tusitio.com/foro/restore.php)

5) haz los pasos 3 y 4, para cada usuario que desees restaurar

6) métete a admin->Mantenimiento del foro "Recontar todos los totales y estadísticas"

7) borra restore.php



ja ne!




Personal Signature:
HablaJapones
http://hablajapones.org
http://hablajapones.org/tutoriales.php


NO me manden PM para soporte o dudas
...Leo los foros como todos...

MaNaRa

el problema está en que cuando el usuario ya está eliminado y sale como visitante, no te muestra su ID
mi versión de foro es SMF 2.0

flypando

creo que se refiere a que mires su ip nueva...y esa es la que debes poner junto con el correo con el que se registró ;)

pendrakon

no, no su ip, su ID de identificacion en el foro...
eso revisalo en tu bases de datos de backup

flypando


HackRos

Unknown column 'm.ID_POSTER' in 'where clause'
Archivo: /home/vagospor/public_html/restore.php
Línea: 5

Advertisement: