Hoi,

Ik ga ergens de fout in maar zie niet direct waar..

Als iemand een hint/duw kan geven richting de goede manier dan ben ik een tevreden mens :).


foutmelding:
INSERT INTO clients(username, password, fil, phone, email) SELECT '1', '2', id FROM fils WHERE fils.postalcode = '3', '4', '5'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 ' '4', '5'' at line 2


--> Ik heb een aantal dingen weggedaan met nr's omdat er gevoelige info in staat.

Mijn stukje code dat dit zou moeten doen:

$import = "INSERT INTO clients(username, password, fil_id, phone, email)
						SELECT '$data[3]', '$data[4]', id FROM fils WHERE fils.postalcode = '$data[0]', '$data[1]', '$data[2]'";


Gegevens worden uit een .csv bestand geladen..

Kolom 1 uit de csv = postcode's
Kolom 2 uit de csv = telnr's
Kolom 3 uit de csv = emails
Kolom 4 uit de csv = usernamen
Kolom 5 uit de csv = paswoorden


Het gaat fout ergens om dat ik reeds een table heb in mysql waar alle postcodes in staan met elk hun uniek ID, en dat uniek ID wil ik in deze tabel krijgen..

Waarschijnlijk doe ik iets stoms ergens maar ik zie het niet direct..

Als iemand kan/wil helpen -> zeer geapprecieerd.


Vriendelijke Groeten!
Dan ken je dus ook niet de ins en outs van SELECT, zoals je beweerd.
Zie het voorbeeld wat ik heb gegeven.
Je kunt dus gewoon vaste waarden definiëren in de select, strings tussen quotes, integers zonder quotes.
Wil je een veld uit die tabel, dan doe je die veldnaam zonder quotes opgeven.
Achter de where (met =) mag maar één waarde komen.
Kheb het al opgelost..

Oh zo dom van mij.. tjonge jonge..

gewoon de waarde waar die where clausule was laatst geplaatst..

dus dit is de query die het wel perfect doet..

$import = "INSERT INTO clients(username, password, phone, email, fil)
						SELECT '$data[3]', '$data[4]', '$data[1]', '$data[2]', fils.id FROM fils WHERE fils.postalcode = $data[0]";


Ik heb dus die "fil" laatst gezet, die stond daarvoor achter 'password' dus middenin de select.. en dat werkte dus niet..


Bij deze = het opgelost.


Hartelijk dank voor je assistensie Karl!


Vriendelijke Groeten!

Reageren