MyBB.de Forum
Bei Registration Ordner Struktur anlegen - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: Anpassungen (https://www.mybb.de/forum/forum-47.html)
+--- Forum: Plugin-Diskussionen (https://www.mybb.de/forum/forum-38.html)
+--- Thema: Bei Registration Ordner Struktur anlegen (/thread-25625.html)

Seiten: Seiten: 1 2


Script in Register einbauen - tomcat123 - 18.06.2012

Hallo,

wer könnte mir bitte helfen den Script in mein Register einzubauen, das es automatisch auf meinem 2. Server folgende Ordner anlegt evtl. noch berichtigen, das es den Ordner anlegt welche ID der Benutzer hat:

PHP-Code:
<?php
$folders 
= array(
    
'public',
    
'private',
    
'gallery',
    
'public/files',
    
'public/files/photos',
    
'private/files/',
    
'private/files/photos',
    
'gallery/photos'
);
$rootfolder '/path/to/user/folders';

$connection ssh2_connect('server-b.example.com'22, array('hostkey' => 'ssh-rsa'));

if(
ssh2_auth_pubkey_file($connection'username'// Benutzername
                          
'/home/username/.ssh/id_rsa.pub'// Public-Key
                          
'/home/username/.ssh/id_rsa''secret')) { // Private-Key
    
$sftp ssh2_sftp($connection);
    
ssh2_sftp_mkdir($sftp"$rootfolder/$userid/");
    foreach(
$folders as $folder)
        
ssh2_sftp_mkdir($sftp"$rootfolder/$userid/$folder/");
    echo(
'Directories successfully created!');
} else {
    die(
'Public Key Authentication Failed');
}
?>

Mein Register:

PHP-Code:
<html>
<
head>
<
title>{$mybb->settings['bbname']} - {$lang->profile}</title>
{
$headerinclude}
</
head>
<
body>
{
$header}
<
table border="0" cellspacing="{$theme['borderwidth']}cellpadding="{$theme['tablespace']}class="tborder">
<
tr>
<
td class="trow1">
<
table width="100%" cellspacing="0" cellpadding="0" border="0"><tr><td class="trow1" width="75%">
<
span class="largetext"><strong>{$formattedname}</strong></span><br />
<
span class="smalltext">ID: {$uid}
({
$usertitle})<br />
{
$groupimage}
{
$userstars}<br />
<
br />
<
strong>{$lang->registration_date}</strong> {$memregdate}<br />
<
strong>{$lang->date_of_birth}</strong> {$membday} {$membdayage}<br />
<
strong>{$lang->local_time}</strong> {$localtime}<br />
<
strong>{$lang->postbit_status}</strong> {$online_status}
<
br>
</
span>
</
td><td width="25%" align="right" valign="middle">{$avatar}</td></tr></table>
</
td>
</
tr>
{
$awaybit}
</
table>
<
br />
<
table width="100%" cellspacing="0" cellpadding="0" border="0" align="center">
<
tr>
<
td width="50%" valign="top">
<
table border="0" cellspacing="{$theme['borderwidth']}cellpadding="{$theme['tablespace']}class="tborder">
<
tr>
<
td colspan="2" class="thead"><strong>{$lang->users_forum_info}</strong></td>
</
tr>
<
tr>
<
td class="trow1"><strong>{$lang->joined}</strong></td>
<
td class="trow1">{$memregdate}</td>
</
tr>
<
tr>
<
td class="trow2"><strong>{$lang->lastvisit}</strong></td>
<
td class="trow2">{$memlastvisitdate} {$memlastvisittime}</td>
</
tr>
<
tr>
<
td class="trow1"><strong>{$lang->total_posts}</strong></td>
<
td class="trow1">{$memprofile['postnum']} ({$lang->ppd_percent_total})<br /><span class="smalltext">(<a href="search.php?action=finduserthreads&amp;uid={$uid}">{$lang->find_threads}</a> &mdash; <a href="search.php?action=finduser&amp;uid={$uid}">{$lang->find_posts}</a>)</span></td>
</
tr>
<
tr>
<
td class="trow2"><strong>{$lang->timeonline}</strong></td>
<
td class="trow2">{$timeonline}</td>
</
tr>
{
$referrals}
{
$reputation}
{
$warning_level}
</
table>
<
br />
<
table border="0" cellspacing="{$theme['borderwidth']}cellpadding="{$theme['tablespace']}class="tborder">
<
tr>
<
td colspan="2" class="thead"><strong>{$lang->users_contact_details}</strong></td>
</
tr>
<
tr>
<
td class="trow1" width="40%"><strong>{$lang->homepage}</strong></td>
<
td class="trow1">{$website}</td>
</
tr>
{
$sendemail}
<
tr>
<
td class="{$bgcolors['pm']}"><strong>{$lang->pm}</strong></td>
<
td class="{$bgcolors['pm']}"><a href="private.php?action=send&amp;uid={$memprofile['uid']}">{$lang->send_pm}</a></td>
</
tr>
<
tr>
<
td class="{$bgcolors['icq']}"><strong>{$lang->icq_number}</strong></td>
<
td class="{$bgcolors['icq']}">{$memprofile['icq']}</td>
</
tr>
<
tr>
<
td class="{$bgcolors['aim']}"><strong>{$lang->aim_screenname}</strong></td>
<
td class="{$bgcolors['aim']}"><a href="javascript:;" onclick="MyBB.popupWindow('misc.php?action=imcenter&amp;imtype=aim&amp;uid={$uid}', 'imcenter', 450, 300);">{$memprofile['aim']}</a></td>
</
tr>
<
tr>
<
td class="{$bgcolors['yahoo']}"><strong>{$lang->yahoo_id}</strong></td>
<
td class="{$bgcolors['yahoo']}"><a href="javascript:;" onclick="MyBB.popupWindow('misc.php?action=imcenter&amp;imtype=yahoo&amp;uid={$uid}', 'imcenter', 450, 300);">{$memprofile['yahoo']}</a></td>
</
tr>
<
tr>
<
td class="{$bgcolors['msn']}"><strong>{$lang->msn}</strong></td>
<
td class="{$bgcolors['msn']}"><a href="javascript:;" onclick="MyBB.popupWindow('misc.php?action=imcenter&amp;imtype=msn&amp;uid={$uid}', 'imcenter', 450, 300);">{$memprofile['msn']}</a></td>
</
tr>
</
table>
</
td>
<
td><img src="{$theme['imgdir']}/pixel.gif" height="1" width="8" alt=""/></td>
<
td width="50%" valign="top">
{
$profilefields}
{
$signature}
{
$modoptions}
{
$adminoptions}
{
$buddy_options}
</
td>
</
tr>
</
table>
{
$footer}
</
body>
</
html

Gruß


RE: Bei Registration Ordner Struktur anlegen - StefanT - 18.06.2012

Du solltest die einmal das Plugin-System anschauen: https://www.mybb.de/doku/sonstiges/informationen-zu-plugins/


RE: Bei Registration Ordner Struktur anlegen - tomcat123 - 18.06.2012

Da aber jetzt ein komplette Plugin draus zu machen, ist ja schwieriger.


RE: Bei Registration Ordner Struktur anlegen - StefanT - 18.06.2012

Dann verwende doch Patches: https://www.mybb.de/erweiterungen/perma-patches/ Wink Das ist auf jeden Fall besser als Datei-Änderungen.


RE: Bei Registration Ordner Struktur anlegen - tomcat123 - 18.06.2012

Hey,

wenn ich das PluginLibrary aktivieren möchte kommt folgende Meldung:
The selected plugin does not have to be activated

Woran liegt das, hab eigendlich die Datei nur ins Plugin Ordner reingeladen.


RE: Bei Registration Ordner Struktur anlegen - King Louis - 18.06.2012

Wie dir die Fehlermeldung sagt: Die PluginLibrary muss nicht aktiviert werden. Es reicht die hochzuladen


RE: Bei Registration Ordner Struktur anlegen - tomcat123 - 18.06.2012

Aber dann finde ich irgendwie das Patches Plugin nicht, zeigt es mir nicht an obwohl es aktiviert ist.


RE: Bei Registration Ordner Struktur anlegen - tomcat123 - 20.06.2012

Hey,

oder ich baue es doch ins Register ein, oder wäre das irgendwie unsicher bzw. welche Nachteile würde es da geben?


RE: Bei Registration Ordner Struktur anlegen - BroatcasT - 21.06.2012

Mein tipp wäre es direkt die Board Auth zu verwenden. Stell dein ProFTP auf MySQL um und gib ihm die richten Tabellen Informationen.
Mit den Directorys müsste es dann auch eine einfachere Lösung geben, du müsstest mal in der Doku vom ProFTP schaun, sollte wie folgt ablaufen, User logt sich ein mit den Login Daten des Boards, welche sich ProFTP direkt aus der DB zieht.
Danach checkt ProFTP ob die Directory Structure existiert, wenn nicht wird sie wärend des Auth Process angelegt.

Das wäre im Groben und Ganzen die schlichteste Lösung... du brauchst nichts am Board ändern, nichts an der DB, kein Plugin schrieben und keine Files des Boards manipulieren.

Das einzige was das vorraussetzt ein wenig eigeniniziative, durwuseln der ProFTP Doku und ein wenig gutes altes Google.

Hier mal ein paar relevante Auszüge für dich.

http://www.proftpd.org/docs/directives/linked/config_ref_SQLAuthTypes.html
http://www.proftpd.org/docs/directives/linked/config_ref_SQLDefaultHomedir.html
http://www.proftpd.org/docs/directives/linked/config_ref_SQLUserInfo.html
http://www.proftpd.org/docs/directives/linked/config_ref_SQLUserWhereClause.html