Ik ben niet zo goed met deze talen, ben begonnen met het leren van dit.
Toen ik mijn MyBB 1.6x board naar SMF2.0 wilde converten, kreeg ik deze error.
Wat moet ik hiermee?
Converting...
Converting members... Unsuccessful!
This query:
if(!preg_match('/\d{4}-\d{2}-\d{2}/', $row['birthdate']))
$row['birthdate'] = '0001-01-01';
Caused the error:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'if(!preg_match('/\d{4}-\d{2}-\d{2}/', $row['birthdate']))
$row['birthdate'] = '' at line 1
Waarmee ben je MyBB 1.6x board naar SMF2.0 aan het converteren? Is dat meegeleverde code of heb je zelf iets geschreven? Als het meegeleverde code is dan kan je misschien bij de bron cq de makers wat navragen?
Heb een converter gedownload vanaf de SMF2.0 website, en heb daar ook op de forums gevraagt hoe en wat, maar ik ben (schijnbaar) de enige met deze error, en niemand kan me vertellen wat het is, daarom maar hier.
Ik kan eventueel de complete .sql file posten, of de download posten, als iemand even voor mij wil kijken :)
Zal even kijken of ik die er uit kan halen, want ik ben nog niet zo goed met de taal.
Eens even kijken welke dingen ik dan moet posten, geef me een minuutje.
EDIT:
/* fix invalid birthdates */
if(!preg_match('/\d{4}-\d{2}-\d{2}/', $row['birthdate']))
$row['birthdate'] = '0001-01-01';
__
---* {$to_prefix}members
SELECT
uid AS id_member, SUBSTRING(username, 1, 255) AS member_name,
SUBSTRING(username, 1, 255) AS real_name, email AS email_address,
SUBSTRING(password, 1, 64) AS passwd, SUBSTRING(salt, 1, 8) AS password_salt,
postnum AS posts, SUBSTRING(usertitle, 1, 255) AS usertitle,
lastvisit AS last_login, IF(usergroup = 4, 1, 0) AS id_group,
regdate AS date_registered, SUBSTRING(website, 1, 255) AS website_url,
SUBSTRING(website, 1, 255) AS website_title,
SUBSTRING(icq, 1, 255) AS icq, SUBSTRING(aim, 1, 16) AS aim,
SUBSTRING(yahoo, 1, 32) AS yim, SUBSTRING(msn, 1, 255) AS msn,
SUBSTRING(signature, 1, 65534) AS signature, hideemail AS hide_email,
SUBSTRING(buddylist, 1, 255) AS buddy_list,
SUBSTRING(regip, 1, 255) AS member_ip, SUBSTRING(regip, 1, 255) AS member_ip2,
SUBSTRING(ignorelist, 1, 255) AS pm_ignore_list,
timeonline AS total_time_logged_in,
CASE
WHEN birthday = '' THEN '0001-01-01'
ELSE CONCAT_WS('-', RIGHT(birthday, 4), SUBSTRING(birthday, LOCATE('-', birthday) + 1, LOCATE('-', birthday, LOCATE('-', birthday) + 1) - LOCATE('-', birthday) - 1), LEFT(birthday, LOCATE('-', birthday) - 1))
END AS birthdate
FROM {$from_prefix}users;
---*