Probleem met een entry..

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Djurre Visser

Djurre Visser

14/09/2011 09:47:05
Quote Anchor link
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
 
PHP hulp

PHP hulp

06/11/2024 04:01:01
 
- SanThe -

- SanThe -

14/09/2011 10:13:43
Quote Anchor link
Volgens de error staat die if() regel midden in de query.
 
Djurre Visser

Djurre Visser

14/09/2011 10:36:25
Quote Anchor link
En hoe is dit dan op te lossen, of moeten jullie de complete sourcecode daar voor hebben?
 
- SanThe -

- SanThe -

14/09/2011 10:40:05
Quote Anchor link
Niet compleet. Alleen het stukje rond die query.
 
- Ariën  -
Beheerder

- Ariën -

14/09/2011 10:40:37
Quote Anchor link
die if hoort denk ik niet in de query.
 
Aad B

Aad B

14/09/2011 10:48:48
Quote Anchor link
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?
 
Djurre Visser

Djurre Visser

14/09/2011 11:15:23
Quote Anchor link
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 :)
 
- Ariën  -
Beheerder

- Ariën -

14/09/2011 11:19:11
Quote Anchor link
Djurre Visser op 14/09/2011 11:15:23:
Ik kan eventueel de complete .sql file posten..




Liever de relevante delen.
Gewijzigd op 14/09/2011 11:19:38 door - Ariën -
 
Djurre Visser

Djurre Visser

14/09/2011 11:31:48
Quote Anchor link
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:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/* 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;
---*
Gewijzigd op 14/09/2011 11:34:31 door Djurre Visser
 
- Ariën  -
Beheerder

- Ariën -

14/09/2011 11:38:07
Quote Anchor link
Het lijkt erop dat dit geen onderdeel van die query is, dus comment die regel 1 t/m 3 maar gewoon helemaal.
 
Djurre Visser

Djurre Visser

14/09/2011 11:40:04
Quote Anchor link
Zal eens kijken, even testen.

Toevoeging op 14/09/2011 11:43:35:

Nu ik dat gedaan heb krijg ik deze error..

Converting...
Converting members...Wrong value type sent to the database. Date expected. (birthdate)
 
- Ariën  -
Beheerder

- Ariën -

14/09/2011 11:52:29
Quote Anchor link
Hoe voer je die convert uit, als ik vragen mag?
 
Djurre Visser

Djurre Visser

14/09/2011 11:54:53
Quote Anchor link
Doormiddel van Convert.php.

Deze zou alles aan moeten roepen, denk ik.

convert.php is te vinden op http://www.mijnwebsite.net/smf/convert.php
Het moest in de SMF map staan, en dat doet het.

De SMF database en MyBB database staan in dezelfde datbase, dat wat ook moest.
Dus het zou goud moeten zijn.

Toevoeging op 15/09/2011 09:01:00:

Allemaal bedankt voor de hulp..
Het het probleem gevonden. Iemand had zijn geboorte datum verkeerd in gevuld, hij had geen jaar opgegeven, heb de databases met DBKiss doorgelopen :)

Bedankt allemaal, het is gelukt!

Er mag n slotje op :)
Gewijzigd op 14/09/2011 11:56:01 door Djurre Visser
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.