Seite 9 von 44

Verfasst: 22.12.2003 09:28
von musashi
Der DL ist platt.

Verfasst: 22.12.2003 09:29
von Leuchte
der Link von Seite 1 funzt bei mir Prima 8)

Verfasst: 22.12.2003 09:34
von musashi
Bekomme ich timeout .. egal -> http://www.phpbbhacks.com/viewhack.php?id=193 tuts auch :)

Gibts auch irgend 'nen Hack, der es ermöglicht, ein grösseres Freitext Feld im Profil zu haben?

Verfasst: 22.12.2003 11:03
von Acid
Beim Package (Link im ersten Beitrag auf der ersten Seite) und bei dem Download von phpbbhacks.com ist noch eine 2. Variante enthalten, mit der man ein grösseres Textfeld mit BBcode-Html-Smilee Support einstellen kann (addfield2*).
Wenn du den BBcode-Html-Smilee-Kram nicht benötigst, würde es auch ausreichen, wenn du bei der 1. Variante einfach aus dem <input>Feld eine <textarea> machst und das Attribut beim Feld in der DB von varchar auf text änderst.

Verfasst: 16.02.2004 13:41
von lorbas
Hallo Leute, versuche mal mein Glück und bringe mein Problem, was ja eigentlich noch keins ist, hier unter.
Und zwar möchte ich in meine Registrierung ein Feld einbinden mit einem Dropdownmenü, welches Zugriff auf eine DB hat. Sprich, ich gebe die Optionen nicht per Hand ein, sondern sie werden aus dem Datensatz meiner DB ausgelesen.
Außerdem möchte ich, weil meine Datenbank mehr als umfangreich ist, dass sich nach Auswahl in dem Menü in einer zweiten Dropdownliste der dieser Auswahl entsprechende Datensatz öffnet und die endgültige Wahl getroffen werden kann.
Ist das irgendwie machbar oder gibt es schon ähnliche Lösungen? Kann ich mein Problem evtl. auch über eine SUCHFUNKTION lösen?
Zur Vereinfachung hier noch mal ein anschauliches Beispiel.
Es gibt beispielsweise einen riesigen Buchkatalog – unterteilt in verschiedene Genres. Im ersten Menü soll nun also das Genre gezeigt werden und nach entsprechender Auswahl im zweiten Menü der dazugehörige Datensatz meiner DB.
Wenn es solch eine Funktion noch nicht als Mod geben sollte, ist das mein Beitrag dazu. Ansonsten hoffe ich, ihr da draußen könnt mir irgendwie helfen und ich bedanke mich dafür schon einmal. Andernfalls muss die Suche wohl weitergehen. Viele Grüße... LORBAS

Verfasst: 13.03.2004 10:03
von helluvaguy
Acid hat geschrieben:aso.. ich hatte gestern das mit den "Benutzergruppen" überlesen.
Bei Benutzergruppen müsstest du es etwas anders machen. Dazu könntest du die Gruppenverwaltung zum Schutz .. benutzen.

Die Änderungen an profile_add_body.tpl/profile_view_body.tpl sind wie gehabt..

Code: Alles auswählen

<!-- BEGIN switch_certain_users -->
    ...
<!-- END switch_certain_users -->
..anstatt den beschriebenen Änderungen an usercp_viewprofile.php und usercp_register.php includest du vor $template->pparse('body'); die name.php (Datei kann umbenannt werden, muss dann aber auch im include-Befehl angepasst werden) aus dem oben genannten MOD..

Code: Alles auswählen

include($phpbb_root_path . 'name.'.$phpEx);
..nun kopierst du noch eine etwas angepasste name.php in den phpBB-Ordner. Angepasst deshalb, da du die Datei ja in eine andere einbindest. Speichere folgendes als name.php ab..

Code: Alles auswählen

<?php 

// User die zugriff haben: es sind gruppen_ids, gruppennamen und user_ids  erlaubt wobei bei den gruppen namen und ids ein g am anfang angehängt werden muss. 
$allowed_u = array(); 
$allowed_u[] = 'g3'; //gruppe 

$access_allowed = false; 
if( in_array($userdata['user_id'],$allowed_u)) 
{ 
        $access_allowed = true; 
} 

else 
{ 
        $sql = "SELECT g.group_id, g.group_name 
                FROM " . USER_GROUP_TABLE . " ug, " . GROUPS_TABLE . " g 
                WHERE ug.user_id = '" . $userdata['user_id'] . "' 
                        AND g.group_id = ug.group_id"; 
        if ( !($result = $db->sql_query($sql)) ) 
        { 
                message_die(GENERAL_ERROR, 'Could not get user group.', '', __LINE__, __FILE__, $sql); 
        } 
        $access_allowed = false; 
        while( list($group_id, $group_name) = $db->sql_fetchrow($result) ) 
        { 
                if( in_array('g' . $group_id[group_id],$allowed_u )) 
                { 
                         $access_allowed = true; 
                         break; 
                } 
                if( in_array('g' . $group_name[group_name],$allowed_u))
                { 
                         $access_allowed = true; 
                         break; 
                } 
        } 
        if( $access_allowed ) 
        { 
	$template->assign_block_vars('switch_certain_users', array());
        } 
} 

?>
..bei //gruppe kannst du die GruppenID angeben (mit dem "g" davor). (s. info.txt des genannten MODs, wenn du mehrere Gruppen angeben willst)
Hallo Acid, diesen Tipp hast Du mir auf Seite 5 gegeben. Hatte damals alles wunderbar geklappt. Habe diesen Tipp einem Freund weiterempfolen , doch bei ihm gibt es leider eine Fehlermeldung , wenn sich jemand registrieren will

Code: Alles auswählen

Fatal error: Call to a member function on a non-object in /home/softball/public_html/phpBB2/exclusive.php on line 19
dort ist name.php in exclusive.php umbenannt worden. Zeile 19 ist das hier

Code: Alles auswählen

        if ( !($result = $db->sql_query($sql)) ) 
könntest Du sagen wo da nun der Fehler begründet liegt.

Ich selber kann es nicht mehr nachvollziehen, da ich es aus meinem Forum ausgebaut habe.

Verfasst: 14.03.2004 09:29
von Acid
Und wie/wo hat er die exclusive.php eingebunden.. so wie du damals in die usercp_viewprofile.php ?!

Verfasst: 14.03.2004 11:23
von helluvaguy
Ja, das ist exact so wie damals bei mir eingebaut, nur halt der Dateiname nun anders, und es ist nun ein 2.0.6er Board. Bei mir war es ein 2.0.0er

Verfasst: 15.03.2004 11:33
von helluvaguy
Das Problem ist zunächst mal wie es scheint aus der Welt, dadurch dass

Code: Alles auswählen

include($phpbb_root_path . 'exclusive.'.$phpEx);
aus der usercp_register.php genommen wurde.

Verfasst: 18.03.2004 10:10
von helluvaguy
Jetzt weiß ich auch, wo das Problem lag.
Ich habe nur nach dem ersten Vorkommen von

Code: Alles auswählen

$template->pparse('body'); 
gesucht, dann aber nicht bemerkt, dass es 2x in der usercp_register.php drin ist. Es muß natürlich vor das Zweite, ans Ende der Datei.

Nun funzt alles so wie es soll - man kann sich registrieren, berechtigte Personen, können Infos eingeben und betrachten.

danke nochmal