MyBB.de Forum
Userabfrage bei Registrierung - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: Archiv (https://www.mybb.de/forum/forum-57.html)
+--- Forum: MyBB 1.4.x (https://www.mybb.de/forum/forum-51.html)
+---- Forum: Sonstiges (https://www.mybb.de/forum/forum-55.html)
+---- Thema: Userabfrage bei Registrierung (/thread-12589.html)



Userabfrage bei Registrierung - 123Andy - 05.03.2009

Hallo

Bei der Registrierung wird ja abgefragt ob ein User schon vorhanden ist.

Ich habe bei mir im Forum eine 2.Tabelle in der sich gelöschte User befinden (werden durch ein Plugin automatisch nach eine bestimmten Zeit dorthin verschoben).

Ist es möglich diese Tabelle bei der Regiestrierung auch abzufragen, so das die Namen und E-Mail Adressen nicht nochmal verwendet werden können?

Wenn Ja, wie?

Danke schon mal im voraus.

Gruß Andy


RE: Userabfrage bei Registrierung - Michael - 05.03.2009

Du könntest die Namen und E-Mail-Adressen vom Plugin auch auf die Ausschlussliste setzen lassen, dann sind sie gesperrt. Oder du machst das manuell im Admin-CP.


RE: Userabfrage bei Registrierung - 123Andy - 06.03.2009

Hallo Michael

Erst einmal Danke für die Antwort.

Ist natürlich auch eine Lösung. Ich dachte nur es geht auch anders. Z.B über eine Änderung in der funktions_user.php. Dort gibt es ja die Funktion der Abfrage für den Usernamen.

PHP-Code:
function username_exists($username)
{
    global 
$db;
    
$query $db->simple_select("users""COUNT(*) as user""username='".$db->escape_string($username)."'", array('limit' => 1));
    if(
$db->fetch_field($query'user') == 1)
    {
        return 
true;
    }
    else
    {
        return 
false;
    }


Kann man dort eine Abfrage über 2 Tabellen einfügen?

Ich bin nun nicht gerade ein Genie in bezug auf Datenbanken und PHP, eher jemand der durch probieren lernt und das Internet gibt zu dem Thema nicht viel her.

Gruß Andy


RE: Userabfrage bei Registrierung - Michael - 06.03.2009

Für den Anfang könntest du den Code mit der Abfrage innerhalb der Funktion duplizieren und die Abfrage für die zweite Tabelle ändern.


RE: Userabfrage bei Registrierung - 123Andy - 12.03.2009

Hallo

Die Idee mit der funktions_user.php war nicht so ideal, also habe ich mich noch einmal mit der Plugin Datei beschäftigt.

Irgendwie hab ich es auch geschafft, das die Daten in die Tabelle banfilters geschrieben werden.

PHP-Code:
$db->write_query("INSERT INTO ".TABLE_PREFIX."banfilters (filter) 
SELECT (username) 
FROM "
.TABLE_PREFIX."users_pruned");
$query $db->write_query("UPDATE mybb_banfilters SET type = '2' WHERE  mybb_banfilters . type  =0"); 

Leider hab ich jetzt ein Problem.

Die Daten werden immer und immer wieder in die Tabelle geschrieben.

Die im Internet angesprochen Lösung mit einem INDEX Schlüssel(UNIQUE) bringt mich auch nicht weiter.

Bin für jede Hilfe dankbar.


Gruß Andy

PS: ich weiß das der Code nicht besonders gut aussieht und es bestimmt auch anders geht, aber ich bin halt Laie in Sachen PHP Smile


RE: Userabfrage bei Registrierung - Michael - 12.03.2009

Wie sieht der komplette Code des Plugins jetzt aus? Hänge die Datei ggf. hier an.


RE: Userabfrage bei Registrierung - 123Andy - 12.03.2009

Hallo Michael

Im Code des Plugins hat der Autor vermerkt das das Plugin ohne seine Genehmigung nicht weitergegeben werden darf.

Also ist ein Anhang nicht möglich.


Wie kann ich dir die Datei zukommen lassen?

Gruß Andy


RE: Userabfrage bei Registrierung - Michael - 12.03.2009

Schick mir den Code bitte in einer PN.


RE: Userabfrage bei Registrierung - Michael - 12.03.2009

Dein Code macht da irgendwie keinen Sinn. Es geht viel einfacher. Suche in der Plugindatei nach:
PHP-Code:
while($user $db->fetch_array($query))
            
$db->insert_query('users_pruned'$user); 
Ersetzen durch:
PHP-Code:
while($user $db->fetch_array($query))
{
    
$db->insert_query('users_pruned'$user);
    
$banuser = array(
        
'filter' => $db->escape_string($user['username']),
        
'type' => 2,
        
'dateline' => TIME_NOW
    
);
    
$db->insert_query('banfilters'$banuser);




RE: Userabfrage bei Registrierung - 123Andy - 13.03.2009

Hallo Michael

Danke für deine Hilfe.

Es scheint perfekt zu funktionieren. Habs 2 mal durchlaufen lassen und keine Probleme.

Gruß

Andy