Profilfelder (nicht aus dem ACP)

spielefreak
Hallo,
ich hab ein kleines oder aus größeres Problem.
Ich wollte in meinem Forum neue Profilfelder für ein Browsergame machen was dann so aussehen sollte:

Name: spielefreak
Welt: 20
Punkte: ...
Stamm: ...
etc.

Den Namen und die Welt soll man bei der Registrierung angeben und im CP ändern können. Allerdings sollen die Profilfelder nicht in userfields sondern in users gespeichert werden. Und bevor die Profilfelder des Browsergames kommen eine Trennlinie, was ich schon geschafft hab.

Die Daten wie Punkte, Stamm, etc. , sollen dann aus einer anderen Tabelle (bspw. de20_tribe für Spielerinfos und de20_ally für Stämmeinfos) ausgelesen werden. Dazu müsste erst in users geschaut werden, in welcher Welt man ist und wie er dort heißt. Die welt wird dann für die tabelle genommen, bei welt 20 -> de20_tribe. Dort werden dann alle Daten in ner Variable gespeichert und die ally daten aus de20_ally, hierfür müsste man dann schauen welche ally id der spieler hat $tribe[ally] und auch diese alle in ner variable abspeichern. Das hab ich alles schon als ein extra Tool geschrieben und es funkt auch prima, nur will ich das jetzt auch ins Forum einbauen und weiß nicht wie. Die ausgelesen Daten sollen dann für die Profilfelder (außer Welt und Name) automatisch eingetragen und nicht vom User editierbar sein. Dazu müsste ich dann in der profil.tpl Profilfelder machen die ich auch schon hinbekommen hab und dann als Wert $tribe[points] etc. schreiben. aber als ich in der global.php mysql_fetch_array oder auch assoc benutzt hab um die Daten aus den tribe und ally Tabellen auslesen wollte, gab er mir die Fehlermeldung aus das es kein richtiger Wert sei. Ich weiß leider auch nicht ob ich die Daten richtig aus users ausgelesen hab.

Also müsste ich eigentlich wissen wie ich aus users den Namen und Welt auslese und dann die Daten aus der Tribe und Ally Tabelle und wo es reinkommt also in global oder profile.php. Weil als Skript hab ich es mit mysql_fetch_assoc gemacht, aber das lässt mich wbb nicht machen oder ich hab was falsch gemacht.

Wenn mir da einer Helfen könnte damit ich des hinbekomme, wäre ich euch sehr dankbar.

Gruß,
spielefreak
kunsel
Ich weiß zwar nicht, ob Du überhaupt noch mit einer Antwort rechnest oder nicht...aber wir wollen mal sehen.

Schreibe mal Deinen Query den Du ausführen möchtest und die Fehlermeldung. ^^

Übrigens musst Du für die Daten die Du in der bbx_users verändern willst, einfach mal in der usercp.php gucken, sowie in der ./acp/users.php (fürs ACP).
spielefreak
Juhu! Es hat jemand geantwortet^^.
Also inzwischen hat sich das ein wenig verändert. Das was ich in den Templates machen musste hab ich jetzt schon gemacht und auch in der profile.php hab ich einiges gemacht. Das einzige Problem was ich jetzt noch habe wie des funkt mit dem Auslesen der Felder bei profil bearbeiten. Da die User beim registrieren den Nick eingeben und unter Profil bearbeiteb ihn ändern können sollten. Hab dazu auch schon nen Beitrag auf mywbb.de geschrieben aber auch keine Antwort. Hier mal den Beitrag von mywbb:

Zitat:
Hallo,
ich will bei mir im Forum im Profil ein paar Daten zu nem Browsergame anzeigen, die in einer extra Tabelle gespeichert werden. In der Tabelle user hab ich ne neue Spalte angelegt, wo drin gespeichert wird wie er in dem game heißt.
Mein Problem ist jedoch wie kann der User jetzt bei der Reg. oder auch unter Profil ändern, seine Daten in die Spalte von users hinzufügen/ändern. Die Eingabefelder unter Profiländern hab ich schon angelegt, aber ich weiß jetzt nicht wie ich das in der usercp.php abändern muss. Das Skript hab ich schon fertig auf meiner Webseite, aber ich bin mir nicht sicher ob ich das jetzt einfach so einbauen kann, da bei Wbb immer spezielle variablen für sowas benutzt wird. Ich hab zum Beispiel kein Schimmer was hier passiert:

php:
1:
2:
3:
4:
5:
$r_gender wbb_trim($_POST['r_gender']);

oder hier:

$r_aim $wbbuserdata['aim'];


Weil in der Profil.php hab ich die Variable $user_info[''] benutzt. Zu was ist also jetzt die wbbuserdata?
Und was muss ich da nun beachten?

Hoffe das ich das einigermaßen verständlich geschrieben hab, falls was nicht verständlich war könnt ihr mir auch per ICQ oder MSN schreiben.

Hier noch 2 Bilder:

Profil ändern
[IMG]http://img3.imagebanana.com/img/u53yrc4f/thumb/bild1.png[/IMG]

Profil ausgabe
[IMG]http://img3.imagebanana.com/img/l7ewecyy/thumb/bild2.png[/IMG]

MfG
spielefreak



Hoffe das hier jemand weiß was ich will^^. Hauptsächlich muss ich halt wissen wie die Daten in die Datenbank gelangen, da ich nicht weiß wie des beim Wbb funkt, weil es da noch spezielle Variablen gibt mit denen ich nix anfangen kann.

MfG
spielefreak
kunsel
Guck in die usercp.php und guck mal dort, welches die Abfrage ist, die diese Daten ändert. Steht meist sogar mit Kommentar drüber, ca so.

php:
1:
2:
3:
4:
/* update user profile */
...
...
$xy=$db->query_first("INSERT INTO...

oder so ähnlich. Und genau da fügst Du das, was Du auch "updaten" willst hinzu.
Ich glaube, dass das
php:
1:
if(isset($_POST['r_aim'])) $r_aim trim($_POST['r_aim']);

auch gesetzt werden muss. ^^

Noch mal zu oben genanntem, als Beispiel in der register.php
Wir haben hinter "password" noch die Zeile "geheimwort" erstellt.
Diese wollen wir bei der Registrierung ebenfalls ausfüllen. Das .TPL haben wir soweit schon angepasst.
Jetzt machen wir aus:
php:
1:
$db->query("INSERT INTO bb".$n."_users (userid,username,password,

php:
1:
$db->query("INSERT INTO bb".$n."_users (userid,username,password,geheimwort

und weiter hinten in der Abfrage setzen wir hinter
php:
1:
VALUES (NULL,'".addslashes(htmlspecialchars($r_username))."','".md5($r_password)."',

php:
1:
'".md5($r_geheimwort)."',

Natürlich als md5-Hash. Augenzwinkern
Du musst jetzt wie gesagt aber auch $r_geheimwort anpassen etc. etc. ^^


PS: Nicht ärgern, ich gebe mit Absicht nicht alles vor. Wenn Du es nicht hinbekommst, kannst ja noch mal bescheid sagen. Aber vielleicht bekommste es ja hin und kannst sowas dann selbst. Musste ich auch so lernen. xD
spielefreak
Zitat:
Original von kunselIch glaube, dass das
php:
1:
if(isset($_POST['r_aim'])) $r_aim trim($_POST['r_aim']);

auch gesetzt werden muss. ^^


Genau so sachen weiß ich net^^. Weil es wird zwar überprüft, bla, bla, bla, aber ich weiß net was des trim ist. Deswegen wusste ich auch net ob ich es brauche.
Zum Updaten der Datenbank, dass ist mir schon klar. Ich les, wie auf dem 2. Bild auch zu sehen, die Daten schon aus der Datenbank. In dem Beispiel unten hab ich "The Lords of Wars" in die erstelle Spalte(staemme name oder so) bei Users eingefügt und lasse es mit der profile.php auslesen. Was ja wie man sieht gut klappt.
Mein Problem ist eben wie die Variablen in Wbb2 heißen und wo ich das einfügen muss. Weil als extra Skript, nicht im Wbb2, hab ich es so ähnlich schon fertig.
Aber ich schau mir deine Beispiele mal an und schau ob das dann funkt. Wenn nicht hörste nochmal von mir und wenns klappt auch, für nen fettes DANKE. Aber erst wenns klappt großes Grinsen
kunsel
Also, dass Du $r_geheimwort brauchst, siehst Du ja schon am Query den Du ausführen willst. xD

Außerdem ist das auslesen nicht schwer, weil die Abfrage im Profil eh SELECT * ist. ^^
Du also nur Deine Spalte für user_info["deinespalte"]; reinschreiben musst. xD
spielefreak
Jo, auslesen ist kein Problem. Nur das Schreiben in die Datenbank, da ich die Wbb2 Variablen net kenn. Aber ich werds dieses WE nochmal probieren.