Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste
SQL + TASK (Exterene Registrierung)
#1
Schön guten Morgen,

Seit 48 Stunden versuche ich eine möglichkeit zu finden selbst den user anzulegen.

Nun was habe ich versucht.

ich habe versucht diesen SQL auszuürfen

Zitat:INSERT INTO mybb_users (`username`,`password`,`salt`,`loginkey`,`email`,`postnum`,`avatar`,`avatartype`,`usergroup`,`additionalgroups`,`displaygroup`,`usertitle`,`regdate`,`lastactive`,`lastvisit`,`website`,`icq`,`aim`,`yahoo`,`msn`,`birthday`,`signature`,`allownotices`,`hideemail`,`subscriptionmethod`,`receivepms`,`pmnotice`,`pmnotify`,`remember`,`showsigs`,`showavatars`,`showquickreply`,`showredirect`,`tpp`,`ppp`,`invisible`,`style`,`timezone`,`dstcorrection`,`threadmode`,`daysprune`,`dateformat`,`timeformat`,`regip`,`longregip`,`language`,`showcodebuttons`,`away`,`awaydate`,`returndate`,`awayreason`,`notepad`,`referrer`,`buddylist`,`ignorelist`,`pmfolders`,`warningpoints`,`moderateposts`,`moderationtime`,`suspendposting`,`suspensiontime`,`coppauser`,`classicpostbit`) VALUES ('$user','$pw','$salt','','$mail','0','','','5','','0','','$timestamp','$timestamp','$timestamp','','0','','','','','','1','0','0','1','1','0','1','1','1','1','1','0','0','0','0','1','2','linear','0','','','$ip','$locktime','','1','0','0','0','','','0','','','','0','0','0','0','0','0','0');

INSERT INTO mybb_userfields (`fid3`,`fid1`,`fid2`,`ufid`) VALUES ('','','','$returnid')

nun, wollte ich wissen wie ich die statistik dazu bringen kann zu aktualliseren.

Habe daher folgende SQL ausgeführt

Code:
UPDATE `1_test`.`mybb_tasks` SET `nextrun` = '0',
`lastrun` = '0' WHERE `mybb_tasks`.`tid` =1;

UPDATE `1_test`.`mybb_tasks` SET `nextrun` = '0',
`lastrun` = '0' WHERE `mybb_tasks`.`tid` =2;

UPDATE `1_test`.`mybb_tasks` SET `nextrun` = '0',
`lastrun` = '0' WHERE `mybb_tasks`.`tid` =3;

UPDATE `1_test`.`mybb_tasks` SET `nextrun` = '0',
`enabled` = '1' WHERE `mybb_tasks`.`tid` =4;

UPDATE `1_test`.`mybb_tasks` SET `nextrun` = '0',
`lastrun` = '0' WHERE `mybb_tasks`.`tid` =5;

UPDATE `1_test`.`mybb_tasks` SET `nextrun` = '0',
`enabled` = '1' WHERE `mybb_tasks`.`tid` =6;

UPDATE `1_test`.`mybb_tasks` SET `nextrun` = '0',
`enabled` = '1' WHERE `mybb_tasks`.`tid` =7;

UPDATE `1_test`.`mybb_tasks` SET `nextrun` = '0',
`lastrun` = '0' WHERE `mybb_tasks`.`tid` =8;

UPDATE `1_test`.`mybb_tasks` SET `nextrun` = '0',
`lastrun` = '0' WHERE `mybb_tasks`.`tid` =9;

Nun ist aber die forumstatik nicht da.. Unter Mitgliedsliste steht der Account des Forums als Not Activaed okay hab einen sql nicht gemacht, welcher wert zum manuellen aktivieren ist, keine ahnung.

Nun meine Frage, was kann ich tuen um ein num(*) auf mybb_users richtig in die forumstatik zu zeigen und den letzten Nutzernamen anzeigen zu lassen, oder kann es das forum von alleine?

Nun nach ca 48 - 10 stunden Schlaf frage ich hier mal, weil ich einfach nicht weiterkomme. Ich weiss das es kein Offizeiel Support dafür gibt. Aber trotzdem wäre ich froh drüber. ICQ Leistet auch kein Support über den Banner Remover obwohl es mit ICQ zu tun hat.. So hoffe ich hier auf Hilfe von anderen, die vielleicht schon soweit kamen, ich weis einfach nicht mehr weiter, datacache hab ich auch abudan geleert aber naja
#2
Das kann so nicht funktionieren. Dein unterer Code ist nutzlos, da das MyBB hier die Daten aus einem Cache bezieht. Das gilt auch für die Statistiken.
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
#3
Nun der Cache wird so erneuert

PHP-Code:
if($mybb->input['action'] == "rebuild")
{
    if(!
verify_post_check($mybb->input['my_post_key']))
    {
        
flash_message($lang->invalid_post_verify_key2'error');
        
admin_redirect("index.php?module=tools/cache");
    }
    
    
$plugins->run_hooks("admin_tools_cache_rebuild");
    
    if(
method_exists($cache"update_{$mybb->input['title']}"))
    {
        
$func "update_{$mybb->input['title']}";
        
$cache->$func();
        
        
$plugins->run_hooks("admin_tools_cache_rebuild_commit");

        
// Log admin action
        
log_admin_action($mybb->input['title']);

        
flash_message($lang->success_cache_rebuilt'success');
        
admin_redirect("index.php?module=tools/cache");
    }
    else
    {
        
flash_message($lang->error_cannot_rebuild'error');
        
admin_redirect("index.php?module=tools/cache");
    }


davon ist die zeile

PHP-Code:
$func "update_{$mybb->input['title']}";
        
$cache->$func(); 

eine ser wichtig da der input z.B. stats = Statisk ist. Nun ist aber bei der datei admin/modules/tools/cache.php kein externer Zugriff erlaubt und ändern möchte ich das auch ungerne.

Wenn ich nun auf die Klasse schaue

PHP-Code:
function update_stats()
    {
        global 
$db;
        require_once 
MYBB_ROOT."inc/functions_rebuild.php";
        
rebuild_stats();
    } 

Gut

wenn ich nun soweit bin

PHP-Code:
function rebuild_stats()
{
    global 
$db;

    
$query $db->simple_select("forums""SUM(threads) AS numthreads");
    
$stats['numthreads'] = $db->fetch_field($query'numthreads');
    
    if(!
$stats['numthreads'])
    {
        
$stats['numthreads'] = 0;
    }
    
    
$query $db->simple_select("forums""SUM(posts) AS numposts");
    
$stats['numposts'] = $db->fetch_field($query'numposts');
    
    if(!
$stats['numposts'])
    {
        
$stats['numposts'] = 0;
    }
    
    
$query $db->simple_select("forums""SUM(unapprovedthreads) AS numunapprovedthreads");
    
$stats['numunapprovedthreads'] = $db->fetch_field($query'numunapprovedthreads');
    
    if(!
$stats['numunapprovedthreads'])
    {
        
$stats['numunapprovedthreads'] = 0;
    }
    
    
$query $db->simple_select("forums""SUM(unapprovedposts) AS numunapprovedposts");
    
$stats['numunapprovedposts'] = $db->fetch_field($query'numunapprovedposts');
    
    if(!
$stats['numunapprovedposts'])
    {
        
$stats['numunapprovedposts'] = 0;
    }

    
$query $db->simple_select("users""COUNT(uid) AS users");
    
$stats['numusers'] = $db->fetch_field($query'users');
    
    if(!
$stats['numusers'])
    {
        
$stats['numusers'] = 0;
    }

    
update_stats($stats);


Gut wenn ich die SQLs nun nehme und verwende, würde es dann gehen ? Bevor ich wieder 12-13 Stunden teste frage ich lieber.
#4
Wenn du den ganzen Code mitschleppen willst. Wink
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
#5
hm...
ich würde sagen es funtz aber ich bin damit auch nciht so erfahren...
#6
Wenn du auf den Datahandler des MyBB (inc/datahandlers/user.php) zurückgreifen könntest, wäre das Ganze viel einfacher.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.