MyBB.de Forum

Normale Version: Bei Registration Ordner Struktur anlegen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
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ß
Du solltest die einmal das Plugin-System anschauen: https://www.mybb.de/doku/sonstiges/infor...u-plugins/
Da aber jetzt ein komplette Plugin draus zu machen, ist ja schwieriger.
Dann verwende doch Patches: https://www.mybb.de/erweiterungen/perma-patches/ Wink Das ist auf jeden Fall besser als Datei-Änderungen.
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.

King Louis

Wie dir die Fehlermeldung sagt: Die PluginLibrary muss nicht aktiviert werden. Es reicht die hochzuladen
Aber dann finde ich irgendwie das Patches Plugin nicht, zeigt es mir nicht an obwohl es aktiviert ist.
Hey,

oder ich baue es doch ins Register ein, oder wäre das irgendwie unsicher bzw. welche Nachteile würde es da geben?
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/l...Types.html
http://www.proftpd.org/docs/directives/l...medir.html
http://www.proftpd.org/docs/directives/l...rInfo.html
http://www.proftpd.org/docs/directives/l...lause.html
Seiten: 1 2