Thread Author: djhurz
Thread ID: 151
Thread Info
Es gibt 42 Beiträge zu diesem Thema, und es wurde 6545 mal angesehen.  Es gibt auch Dateianhänge.
Wer ist hier? 1 Gäste

 Thema drucken
Gibt es einen Importer fürs WBB?
djhurz
Hi

Ich wollte gerne das PHP-Fusion mit dem WBB-Board zusammenlaufen lassen.
Da ich mich nochnicht solange mit PHP beschäftige und noch so meine Probleme mit dem Scripten hab wollte ich gerne wissen ob es sowas wie einen Importer gibt das sich das WBB-Board die userdaten aus der Fusiondatenbank holt oder auch umgekehrt.

Wäre jedenfals geil wenn es sowas geben würde...


Gruß: Markus
-|__________|-
This is Nudelholz.
Copy Nudelholz in your Signature to make better Kuchens and other Teigprodukte.
 
SC-Ad-Bot
 
emblinux
Soweit ich weiß gibt es da keinen Importer. Und ich denke mal, du suchst auch keinen Importer sondern eher eine Bridge, oder willst du jedesmal die Daten aus dem Wbb nach Fusion importieren oder umgedreht. Da ist es doch einfacher, man baut fusion so um , dass bei einer registrierung die daten auch in die Datenbanktabellen des wbb boards gespeichert werden. Zumindest die Userdaten.
Das Lernen ist wie ein Meer ohne Ufer. Konfuzius

Alles wird Gut!

KEIN Support per Mail, ICQ oder PN !
www.heiseclan.de/fusion/sig.gif

www.heiseclan.de/geosig.gif
 
djhurz
Da hast du recht.
Nur leider weiß ich nicht wie ich das bewrksteligen soll.
Meine PHPkenntnisse sind noch zu gering das durchzusetzen.
Vorallem sieht die Tabellenstruktur vom WBB ganz anders aus als die von PHP-Fusion.
Es sind zwar keine großen unterschiede zwischen den Tabellen aba die reichen schon um durchzudrehen^^
Ne Bridge wäre von vorteil da haste schon recht aba eine zu schreiben bzw drauf zu warten bis jemand eine zur verfügung stellt is auch wieder doof, weil PHP-Fusion schon ein Forum mitbringt und ich bisher niemanden kenne der 2 Systeme instaliert hat.

Gruß: Markus
-|__________|-
This is Nudelholz.
Copy Nudelholz in your Signature to make better Kuchens and other Teigprodukte.
 
emblinux
Warum willst du unbedingt ein WBB in PHP-Fusion einbauen? Boards wie WBB. phpBB oder vBulleten sind reine Boardscrippte. PHP-Fusion ist ein CMS, vor allem für Communities. Ist also nicht auf das Forum alleine spezialisiert.

Wenn dir das Forum nicht ausreicht, warum nimmst du nicht das ExtBoard. Dabei handelt es sich um eine Erweiterung für das Standardforum von Fusion und hat einen großen Funktionsumfang, welcher auch dir genügen sollte. Live kannst du es auf der dt. Supportseite sehen.
Das Lernen ist wie ein Meer ohne Ufer. Konfuzius

Alles wird Gut!

KEIN Support per Mail, ICQ oder PN !
www.heiseclan.de/fusion/sig.gif

www.heiseclan.de/geosig.gif
 
ObiWan
Außerdem kann man das wbb Board nicht so einfach integrieren in ein php-fusion. Weil das ja wie gesagt eine eigenständige Boardversion ist. Das ist dafür einfach nicht geschaffen.

Ich erlebe das ja selber gerade, womit ich aber keine Probleme habe, da ehh das Boardesign von mir und das Seitendesign 1zu1 bei mir ist. Wink
 
djhurz
Ich wollte das Board auf eine Subdomain setzen und nicht direkt mit PHP-Fusion zusammenführen.
WBB soll sich dann einfach nur die Userdaten aus der Tabelle von PHP-Fusion holen oder auch umgekehrt.
Das registrierungsformular fürs WBB wollte ich dann abschalten so das sich die User nur über PHP-Fusion registrieren können.

-|__________|-
This is Nudelholz.
Copy Nudelholz in your Signature to make better Kuchens and other Teigprodukte.
 
firemike
Tja, wie sieht den die Users Tabelle von WBB aus ?
Also wie heissen die Felder dieser Tabelle ?
 
ObiWan
Die Usertabelle heisst wcf1_user

Und die Felder:
- userID
- username
- email
- password
- salt
und noch weitere (Felder sind ohne Bindestrich)

Ist sowohl für wbb3 als auch für wbb lite 2.
 
djhurz
Hab mal die im PHP my admin geluxt also folgende daten spuckt er aus

Code 

`bb1_users` (
  `userid` int(11) unsigned NOT NULL auto_increment,
  `username` varchar(50) NOT NULL default '',
  `password` varchar(50) NOT NULL default '',
  `sha1_password` varchar(40) NOT NULL default '',
  `email` varchar(150) NOT NULL default '',
  `userposts` mediumint(7) unsigned NOT NULL default '0',
  `groupcombinationid` int(11) unsigned NOT NULL default '0',
  `rankid` int(11) unsigned NOT NULL default '0',
  `title` varchar(50) NOT NULL default '',
  `regdate` int(11) unsigned NOT NULL default '0',
  `lastvisit` int(11) unsigned NOT NULL default '0',
  `lastactivity` int(11) unsigned NOT NULL default '0',
  `usertext` text,
  `signature` text,
  `disablesignature` tinyint(1) NOT NULL default '0',
  `icq` varchar(30) NOT NULL default '',
  `aim` varchar(30) NOT NULL default '',
  `yim` varchar(30) NOT NULL default '',
  `msn` varchar(30) NOT NULL default '',
  `homepage` varchar(250) NOT NULL default '',
  `birthday` date NOT NULL default '0000-00-00',
  `avatarid` int(11) unsigned NOT NULL default '0',
  `gender` tinyint(1) NOT NULL default '0',
  `showemail` tinyint(1) NOT NULL default '0',
  `admincanemail` tinyint(1) NOT NULL default '1',
  `usercanemail` tinyint(1) NOT NULL default '1',
  `invisible` tinyint(1) NOT NULL default '0',
  `usecookies` tinyint(1) NOT NULL default '1',
  `styleid` int(11) unsigned NOT NULL default '0',
  `langid` int(11) NOT NULL default '0',
  `activation` int(11) unsigned NOT NULL default '0',
  `blocked` tinyint(1) NOT NULL default '0',
  `daysprune` smallint(5) unsigned NOT NULL default '0',
  `timezoneoffset` char(3) NOT NULL default '',
  `startweek` tinyint(1) NOT NULL default '0',
  `dateformat` varchar(10) NOT NULL default '',
  `timeformat` varchar(10) NOT NULL default '',
  `emailnotify` tinyint(1) NOT NULL default '0',
  `notificationperpm` tinyint(1) NOT NULL default '0',
  `buddylist` text,
  `ignorelist` text,
  `receivepm` tinyint(1) NOT NULL default '1',
  `emailonpm` tinyint(1) NOT NULL default '0',
  `pmpopup` tinyint(1) NOT NULL default '0',
  `umaxposts` smallint(5) unsigned NOT NULL default '0',
  `showsignatures` tinyint(1) NOT NULL default '1',
  `showavatars` tinyint(1) NOT NULL default '1',
  `showimages` tinyint(1) NOT NULL default '1',
  `ratingcount` smallint(5) unsigned NOT NULL default '0',
  `ratingpoints` mediumint(7) unsigned NOT NULL default '0',
  `threadview` tinyint(1) NOT NULL default '0',
  `useuseraccess` tinyint(1) NOT NULL default '0',
  `isgroupleader` tinyint(1) NOT NULL default '0',
  `rankgroupid` int(11) NOT NULL default '0',
  `useronlinegroupid` int(11) NOT NULL default '0',
  `allowsigsmilies` tinyint(1) NOT NULL default '1',
  `allowsightml` tinyint(1) NOT NULL default '0',
  `allowsigbbcode` tinyint(1) NOT NULL default '1',
  `allowsigimages` tinyint(1) NOT NULL default '1',
  `emailonapplication` tinyint(1) NOT NULL default '0',
  `acpmode` tinyint(3) NOT NULL default '1',
  `acppersonalmenu` tinyint(1) NOT NULL default '0',
  `acpmenumarkfirst` tinyint(3) NOT NULL default '0',
  `acpmenuhidelast` tinyint(3) NOT NULL default '0',
  `usewysiwyg` tinyint(1) unsigned NOT NULL default '0',
  `pmtotalcount` int(11) unsigned NOT NULL default '0',
  `pminboxcount` int(11) unsigned NOT NULL default '0',
  `pmnewcount` int(11) unsigned NOT NULL default '0',
  `pmunreadcount` int(11) unsigned NOT NULL default '0',
  `reg_ipaddress` varchar(15) NOT NULL default '',
  PRIMARY KEY  (`userid`),
  KEY `username` (`username`),
  KEY `rankid` (`rankid`),
  KEY `avatarid` (`avatarid`),
  KEY `activation` (`activation`),
  KEY `groupcombinationid` (`groupcombinationid`),
  KEY `reg_ipaddress` (`reg_ipaddress`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;


Hoffe das man damit was anfangen kann ;)
-|__________|-
This is Nudelholz.
Copy Nudelholz in your Signature to make better Kuchens and other Teigprodukte.
 
firemike
OK, ich würde folgendermassen vorgehen:

- Finde heraus welche Datenbankfelder bei der Anmeldung in WBB gefüllt werden und welche Pflichtfelder sind.

Nachdem DU das über die Fusion Anmeldung machen willst, musst Du Dir Deine register.php so anpassen das an der Stelle an der die DB Einträge für Fusion geschrieben werden auch gleichzeitig die Einträge für WBB geschrieben werden.

Dazu sollte WBB und Fusion sich in der selben Datenbank befinden.

Gruss Mike
 
ObiWan
Hmm, ich hab mir jetzt mal die setuser.php angeschaut und irgendwie weiss ich grad nicht wie der mitbekommt das der auf die fusion_users Datenbank zugreifen soll?

Hier mal der Code:

Code 


if (isset($_REQUEST['logout']) && $_REQUEST['logout'] == "yes") {
   header("P3P: CP='NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM'");
   setcookie("fusion_user", "", time() - 7200, "/", "", "0");
   setcookie("fusion_lastvisit", "", time() - 7200, "/", "", "0");
   $result = dbquery("DELETE FROM ".$db_prefix."online WHERE online_ip='".USER_IP."'");
   echo "<b>".$locale['192'].$userdata['user_name']."</b><br><br>\n";
} else {
   if (!isset($error)) $error = "";
   if ($error == 1) {
      echo "<b>".$locale['194']."</b><br><br>\n";
   } elseif ($error == 2) {
      echo "<b>".$locale['195']."</b><br><br>\n";
   } elseif ($error == 3) {
      echo "<b>".$locale['196']."</b><br><br>\n";
   } else {
      if (isset($_COOKIE['fusion_user'])) {
         $cookie_vars = explode(".", $_COOKIE['fusion_user']);
         $user_pass = (preg_match("/^[0-9a-z]{32}$/", $cookie_vars['1']) ? $cookie_vars['1'] : "");
         $user_name = preg_replace(array("/\=/","/\#/","/\sOR\s/"), "", stripinput($user));
         if (!dbcount("(user_id)", "users", "user_name='".$user_name."' AND user_password='".md5($user_pass)."'")) {
            echo "<b>".$locale['196']."</b><br><br>\n";
         } else {
            $result = dbquery("DELETE FROM ".$db_prefix."online WHERE online_user='0' AND online_ip='".USER_IP."'");
            echo "<b>".$locale['193'].$user."</b><br><br>\n";
         }
      }
   }
}



Man müsste dem doch nur sagen das der auf diese wcf_user Tabelle zugreifen soll und das über username, userid, userpassword usw. läuft, anstatt der user_id, user_name, user_password

Oder?
Bearbeitet von ObiWan am 02.11.2008 um 12:03
 
firemike
Mit dbcount($field, $table, [$conditions]);

$field = das abzufragende Feld (Spalte)
$table = in welcher Tabelle gesucht werden soll
$conditions = Bedingungen, die zu beachten sind. Dieser Parameter muß nicht zwingend angegeben werden

Die ganze function dbcount sieht so aus und befindet sich in maincore.php:

Code 

function dbcount($field, $table, $conditions = "") {
   $cond = ($conditions ? " WHERE ".$conditions : "");
   $result = @mysql_query("SELECT Count".$field." FROM ".$table.$cond);
   if (!$result) {
      echo mysql_error();
      return false;
   } else {
      $rows = mysql_result($result, 0);
      return $rows;
   }
}


Bearbeitet von firemike am 02.11.2008 um 12:39
 
djhurz
Also pflichtfelder sind
Nutzername, Passwort, E-Mail

Optionale Felder sind:
Homepage, ICQ, AIM, YIM, MSN, Signatur, Benutzertext, Herkunft, Interessen und Beruf

Geburtsdatum kan man mit nem Auswahlfeld wählen

Gruß: Markus
-|__________|-
This is Nudelholz.
Copy Nudelholz in your Signature to make better Kuchens and other Teigprodukte.
 
firemike
Hi,
so aus dem Stehgreif, kannst Du mal folgendes versuchen, aber bitte vorher Backup der Dateiern machen.

In der register.php von Fusion direkt nach denFusion INSERT INTO Befehlen das hier schreiben:

Code 

$result = dbquery("INSERT INTO bb1_users (username, password, email) VALUES('".$user_info['user_name']."', '".$user_info['user_password']."', '".$user_info['user_email']."')");



Ist ungetestet einfach mal versuchen.

Mike
 
ObiWan
Zitat firemike schrieb:
Hi,
so aus dem Stehgreif, kannst Du mal folgendes versuchen, aber bitte vorher Backup der Dateiern machen.

In der register.php von Fusion direkt nach denFusion INSERT INTO Befehlen das hier schreiben:

Code 

$result = dbquery("INSERT INTO bb1_users (username, password, email) VALUES('".$user_info['user_name']."', '".$user_info['user_password']."', '".$user_info['user_email']."')");



Ist ungetestet einfach mal versuchen.

Mike


Hab das mal getestet. Also der hat den 89 User zwar bei mir angelegt aber ohne Name und Passwort und Email. Hatte das auch abgeändert zu wcf1_user. Hmmm
 
firemike
hmm ich werd mir das wbb lite mal auf meinem xampp installieren um das nachvollziehen zu können.....
 
djhurz
hab nicht die liteversion ich schicke dir mal meine
Hab dir den Link per PN geschickt Wink
Bearbeitet von djhurz am 02.11.2008 um 21:10
-|__________|-
This is Nudelholz.
Copy Nudelholz in your Signature to make better Kuchens and other Teigprodukte.
 
firemike
So, erstmal das die register.php im Anhbang funzt bei mir mit der Lite Version.
Es ist die register.php aus Fusion V7.

Die andere WBB Version muss ich mir eben mal ansehen.

Mike
firemike hat folgende Datei angehängt:

register.zip [3.22kB / 314 mal Heruntergeladen]


Downloaded by:
 
firemike
So dann hier mal die register.php aus Fusion 7 für WBB2.
Funzt bei mir einwandfrei.
firemike hat folgende Datei angehängt:

register_1.zip [3.22kB / 301 mal Heruntergeladen]


Downloaded by:
 
ObiWan
Zitat firemike schrieb:
So, erstmal das die register.php im Anhbang funzt bei mir mit der Lite Version.
Es ist die register.php aus Fusion V7.

Die andere WBB Version muss ich mir eben mal ansehen.

Mike


Komisch. Ich hab mir jetzt von der v7 diesen code rauskopiert und die register.php von v6 an die richtige Stelle geschoben. Naja nach dem registrieren bekomm ich folgende Fehlermeldung: INSERT command denied to user 'web831'@'localhost' for table 'wcf1_user'


Versteh auch nicht warum bei dir zweimal wcf.wcf1_user steht? Bei mir heisst die Tabelle da ganz links in der Spalte von phpmyadmin nur wcf1_user. Aber das geht ja auch nicht. Sad
Bearbeitet von ObiWan am 02.11.2008 um 22:58
 

Springe ins Forum:

 Ähnliche Themen 

TEST
Thema Forum Antworten Letzter Beitrag
Rss fürs Forum Allgemeine Support Fragen 3 09.02.2012 um 17:33
gibt keine scores für einloggen und breiträge Allgemeine Support Fragen 16 10.12.2011 um 17:53
Fehler im Profil (wer weiß einen rat ???) Allgemeine Support Fragen 4 21.08.2010 um 18:55
Allgeimein Spiele fürs Scoresystem Games, Spiele & Co. 5 27.07.2010 um 15:53
Gibt es so eine Shoutbox für PHPfuison ? Allgemeine Support Fragen 7 26.07.2010 um 21:48
Gr@n@dE