Mhh die Fehlermeldung hilft nicht viel weiter.
Ich habs mal versucht so zu schreiben, das man mit der Fehlermeldung mehr anfangen kann.
<?php
error_reporting(E_All);
set_time_limit(0);
// Bitte alles ausfuellen, bei unklarheiten auf ilch.de fragen!
// Bitte die Werte zwischen die Anfuehrungszeichen schreiben
// also zwischen '' so das es dann so aussieht: 'localhost' ok?
$phpbb_database = 'phpbb2';
$phpbb_server = 'localhost';
$phpbb_username = '****';
$phpbb_password = '****';
$phpbb_prefix = 'phpbb';
$ilch_database = 'ilch';
$ilch_server = 'localhost';
$ilch_username = '****';
$ilch_password = '****';
$ilch_prefix = 'ic1';
// !! ENDE !! ENDE !! , bitte nichts mehr ausfuellen!! :-)
$phpbb_users = array();
$ilch_users = array();
$ilch_to_phpbb = array();
$lastquery = '';
function query($sql, $conn = null){
$GLOBALS['lastquery'] = $sql;
return mysql_query($sql, $conn);
}
function icuna ($id, $name) {
global $ilch_users, $ilch_to_phpbb;
$icid = array_search($id, $ilch_to_phpbb);
if ($icid !== false) {
return $ilch_users[$icid];
}
return $name;
}
function icuid ($id) {
global $ilch_to_phpbb;
$icid = array_search($id, $ilch_to_phpbb);
if ($icid !== false) {
return $icid;
}
if ($id == -1) {
$id = 0;
}
return $id;
}
function set_users_ar () {
global $ilch_con, $phpbb_con, $phpbb_users, $ilch_users, $ilch_prefix, $phpbb_prefix;
$q = "SELECT user_id, username FROM ".$phpbb_prefix."_users ORDER BY username";
$e = query($q, $phpbb_con);
while ($r = mysql_fetch_assoc($e)) {
$phpbb_users[$r['user_id']] = $r['username'];
}
$q = "SELECT id, name FROM ".$ilch_prefix."_user ORDER BY name";
$e = query($q, $ilch_con);
while ($r = mysql_fetch_assoc($e)) {
$ilch_users[$r['id']] = $r['name'];
}
}
?>
<style type="text/css">
td,tr,select,input,table,b,h2,h3,h1 {
font-family: verdana;
}
</style>
<h1>Convert from phpbb 2.0 to ilchClan 1.1 X</h1>
<h3>written by Manuel Stächele from <a href="http://www.ilch.de/">ilch.de</a></h3>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<?php
if (!empty($_POST['phpbb_database']) AND !isset($_POST['x'])) {
$phpbb_database = $_POST['phpbb_database'];
$phpbb_server = $_POST['phpbb_server'];
$phpbb_username = $_POST['phpbb_username'];
$phpbb_password = $_POST['phpbb_password'];
$phpbb_prefix = $_POST['phpbb_prefix'];
$ilch_database = $_POST['ilch_database'];
$ilch_server = $_POST['ilch_server'];
$ilch_username = $_POST['ilch_username'];
$ilch_password = $_POST['ilch_password'];
$ilch_prefix = $_POST['ilch_prefix'];
$ilch_con = mysql_connect($ilch_server, $ilch_username, $ilch_password);
$phpbb_con = mysql_connect($phpbb_server, $phpbb_username, $phpbb_password);
mysql_select_db($phpbb_database, $phpbb_con);
mysql_select_db($ilch_database, $ilch_con);
query("TRUNCATE ".$ilch_prefix."_forumcats", $ilch_con);
query("TRUNCATE ".$ilch_prefix."_forums", $ilch_con);
query("TRUNCATE ".$ilch_prefix."_topics", $ilch_con);
query("TRUNCATE ".$ilch_prefix."_posts", $ilch_con);
query("DELETE FROM ".$ilch_prefix."_user WHERE spezrank = -111", $ilch_con);
set_users_ar();
echo '<h2>Benutzer</h2><input type="hidden" name="x" value="x" />';
echo '<table><tr><th>ilch Benutzer</th><th>phpbb Benutzer</th></tr>';
foreach ($ilch_users as $id => $name) {
echo '<tr><td>'.$name.':</td><td><select name="ilch_to_phpbb['.$id.']">';
echo '<option value="0">nicht beachten</option>';
foreach ($phpbb_users as $pid => $pname) {
echo '<option value="'.$pid.'">'.$pname.'</option>';
}
echo '</select></td></tr>';
}
echo '</table><br /><br /><b>Bitte senden Sie das Formular unten erneut ab!</b><br /><br />';
}
if (!empty($_POST['phpbb_database']) AND !empty($_POST['x'])) {
$phpbb_database = $_POST['phpbb_database'];
$phpbb_server = $_POST['phpbb_server'];
$phpbb_username = $_POST['phpbb_username'];
$phpbb_password = $_POST['phpbb_password'];
$phpbb_prefix = $_POST['phpbb_prefix'];
$ilch_database = $_POST['ilch_database'];
$ilch_server = $_POST['ilch_server'];
$ilch_username = $_POST['ilch_username'];
$ilch_password = $_POST['ilch_password'];
$ilch_prefix = $_POST['ilch_prefix'];
$ilch_to_phpbb = $_POST['ilch_to_phpbb'];
$ilch_con = mysql_connect($ilch_server, $ilch_username, $ilch_password);
$phpbb_con = mysql_connect($phpbb_server, $phpbb_username, $phpbb_password);
mysql_select_db($phpbb_database, $phpbb_con);
mysql_select_db($ilch_database, $ilch_con);
query("TRUNCATE ".$ilch_prefix."_forumcats", $ilch_con);
query("TRUNCATE ".$ilch_prefix."_forums", $ilch_con);
query("TRUNCATE ".$ilch_prefix."_topics", $ilch_con);
query("TRUNCATE ".$ilch_prefix."_posts", $ilch_con);
query("DELETE FROM ".$ilch_prefix."_user WHERE spezrank = -111", $ilch_con);
foreach ($ilch_to_phpbb as $k => $v) {
if ($v == 0) {
unset($ilch_to_phpbb[$k]);
}
}
$e0 = query("SELECT * FROM ".$phpbb_prefix."_users
WHERE user_active = 1 AND user_id NOT IN (".implode(',', $ilch_to_phpbb).")", $phpbb_con)
or die('Fehler in '. __LINE__ . ' - '.mysql_errno($phpbb_con) . ' : '. mysql_error($phpbb_con).'<br /> Query war : ' . $lastquery . '<hr />');
while ($ur = mysql_fetch_assoc($e0)) {
query("INSERT INTO ".$ilch_prefix."_user (
name, pass, recht, posts, regist, email, llogin, spezrank, opt_pm, opt_mail, status,
wohnort, homepage, icq, msn, yahoo, aim, sig
) VALUES (
'".mysql_real_escape_string($ur['username'])."',
'".$ur['user_password']."',
-1,
".$ur['user_posts'].",
".$ur['user_regdate'].",
'".$ur['user_email']."',
".$ur['user_lastvisit'].",
-111,
1,
1,
1,
'".mysql_real_escape_string($ur['user_from'])."',
'".mysql_real_escape_string($ur['user_website'])."',
'".$ur['user_icq']."',
'".$ur['user_msnm']."',
'".$ur['user_yim']."',
'".$ur['user_aim']."',
'".mysql_real_escape_string(str_replace(':'.$ur['user_sig_bbcode_uid'], '', $ur['user_sig']))."'
)", $ilch_con)
or die('Fehler in '. __LINE__ . ' - '.mysql_errno($phpbb_con) . ' : '. mysql_error($phpbb_con).'<br /> Query war : ' . $lastquery . '<hr />');
$uid = mysql_insert_id($ilch_con);
$ilch_to_phpbb[$uid] = $ur['user_id'];
}
set_users_ar();
$e1 = query("SELECT * FROM ".$phpbb_prefix."_categories ORDER BY cat_order", $phpbb_con);
$ci = 0;
while ($cr = mysql_fetch_assoc($e1)) {
query("INSERT INTO ".$ilch_prefix."_forumcats (name, pos) VALUES ('".$cr['cat_title']."', ".$ci.")")
or die('Fehler in '. __LINE__ . ' - '.mysql_errno($ilch_con) . ' : '. mysql_error($ilch_con).'<br /> Query war : ' . $lastquery . '<hr />');
$cid = mysql_insert_id($ilch_con);
$e2 = query("SELECT * FROM ".$phpbb_prefix."_forums
WHERE cat_id = ".$cr['cat_id']." ORDER BY forum_order", $phpbb_con);
$fi = 0;
while ($fr = mysql_fetch_assoc($e2)) {
query("INSERT INTO ".$ilch_prefix."_forums (cid,pos,posts,topics,name,besch) VALUES (
".$cid.",
".$fi.",
".$fr['forum_posts'].",
".$fr['forum_topics'].",
'".mysql_real_escape_string($fr['forum_name'])."',
'".mysql_real_escape_string($fr['forum_desc'])."'
)", $ilch_con)
or die('Fehler in '. __LINE__ . ' - '.mysql_errno($ilch_con) . ' : '. mysql_error($ilch_con).'<br /> Query war : ' . $lastquery . '<hr />');
$fid = mysql_insert_id($ilch_con);
$pid = null;
$e3 = query("SELECT *
FROM ".$phpbb_prefix."_topics as a
JOIN ".$phpbb_prefix."_posts as b ON a.topic_first_post_id = b.post_id
WHERE a.forum_id = ".$fr['forum_id']."
ORDER BY topic_time DESC", $phpbb_con)
or die('Fehler in '. __LINE__ . ' - '.mysql_errno($phpbb_con) . ' : '. mysql_error($phpbb_con).'<br /> Query war : ' . $lastquery . '<hr />');
while ($tr = mysql_fetch_assoc($e3)) {
query("INSERT INTO ".$ilch_prefix."_topics (fid, name, erst, art, stat, rep, hit) VALUES (
".$fid.",
'".mysql_real_escape_string($tr['topic_title'])."',
'".mysql_real_escape_string(icuna($tr['poster_id'], $tr['post_username']))."',
".$tr['topic_type'].",
".$tr['topic_status'].",
".$tr['topic_replies'].",
".$tr['topic_views']."
)", $ilch_con)
or die('Fehler in '. __LINE__ . ' - '.mysql_errno($ilch_con) . ' : '. mysql_error($ilch_con).'<br /> Query war : ' . $lastquery . '<hr />');
$tid = mysql_insert_id($ilch_con);
$e4 = query("SELECT *
FROM ".$phpbb_prefix."_posts as a
INNER JOIN ".$phpbb_prefix."_posts_text as b ON a.post_id = b.post_id
WHERE topic_id = ".$tr['topic_id']."
ORDER BY post_time DESC", $phpbb_con)
or die('Fehler in '. __LINE__ . ' - '.mysql_errno($phpbb_con) . ' : '. mysql_error($phpbb_con).'<br /> Query war : ' . $lastquery . '<hr />');
while ($pr = mysql_fetch_assoc($e4)) {
query("INSERT INTO ".$ilch_prefix."_posts (tid, fid, erst, erstid, time, txt) VALUES (
".$tid.",
".$fid.",
'".mysql_real_escape_string(icuna($pr['poster_id'], $pr['post_username']))."',
'".icuid($pr['poster_id'])."',
'".$pr['post_time']."',
'".mysql_real_escape_string(str_replace(':'.$pr['bbcode_uid'], '', $pr['post_text']))."'
)", $ilch_con)
or die('Fehler in '. __LINE__ . ' - '.mysql_errno($ilch_con) . ' : '. mysql_error($ilch_con).'<br /> Query war : ' . $lastquery . '<hr />');
$pid = mysql_insert_id($ilch_con);
}
query("UPDATE ".$ilch_prefix."_topics SET last_post_id = ".$pid." WHERE id = ".$tid, $ilch_con)
or die('Fehler in '. __LINE__ . ' - '.mysql_errno($ilch_con) . ' : '. mysql_error($ilch_con).'<br /> Query war : ' . $lastquery . '<hr />');
}
if (! is_null($pid)) {
query("UPDATE ".$ilch_prefix."_forums SET last_post_id = ".$pid." WHERE id = ".$fid, $ilch_con)
or die('Fehler in '. __LINE__ . ' - '.mysql_errno($ilch_con) . ' : '. mysql_error($ilch_con).'<br /> Query war : ' . $lastquery . '<hr />');
}
$fi++;
}
$ci++;
}
echo '<h1>ENDE!!, erfolgreich??!!</h1>';
}
?>
<table>
<tr>
<th colspan="2">phpbb Database (only MySQL)</th>
</tr>
<tr>
<td>Server:</td>
<td><input name="phpbb_server" value="<?php echo $phpbb_server; ?>" /></td>
</tr>
<tr>
<td>Database:</td>
<td><input name="phpbb_database" value="<?php echo $phpbb_database; ?>" /></td>
</tr>
<tr>
<td>Username:</td>
<td><input name="phpbb_username" value="<?php echo $phpbb_username; ?>" /></td>
</tr>
<tr>
<td>Password:</td>
<td><input name="phpbb_password" value="<?php echo $phpbb_password; ?>" /></td>
</tr>
<tr>
<td>Prefix:</td>
<td><input name="phpbb_prefix" value="<?php echo $phpbb_prefix; ?>" /></td>
</tr>
<tr>
<th colspan="2">ilchClan Database</th>
</tr>
<tr>
<td>Server:</td>
<td><input name="ilch_server" value="<?php echo $ilch_server; ?>" /></td>
</tr>
<tr>
<td>Database:</td>
<td><input name="ilch_database" value="<?php echo $ilch_database; ?>" /></td>
</tr>
<tr>
<td>Username:</td>
<td><input name="ilch_username" value="<?php echo $ilch_username; ?>" /></td>
</tr>
<tr>
<td>Password:</td>
<td><input name="ilch_password" value="<?php echo $ilch_password; ?>" /></td>
</tr>
<tr>
<td>Prefix:</td>
<td><input name="ilch_prefix" value="<?php echo $ilch_prefix; ?>" /></td>
</tr>
</table>
<ul>
<li>Es werden alle ilchClan Foren, Themen und Beiträge gelöscht.</li>
<li>Es werden alle Foren, Themen und Beitränge aus phpbb übernommen.</li>
<li>Es werden alle phpbb Benutzer übernommen.</li>
<li>Es gibt die Möglichkeit bestehenden ilchClan Benutzer einem phpbb Benutzer zuzuweisen.
Dabei werden dann die ilchClan Benutzer unverändert beibehalten und die zugewiesenen phpbb Benutzer
nicht übernommen.</li>
<li>Das verwenden dieses Converters ist absolut freiwillig und geschieht auf eigene Gefahr.</li>
</ul>
<input type="submit" value="Ich hab alles gelesen, verstanden und hab von allen wichtigen Daten eine Sicherung!" />
</form>