hallo..ik ben bezig met een upload script..waar je je eigen avatar kan uploaden...he tis dus gekoppeld aan de gebruiker maar krijg een foutmelding in me query...

namelijk:
FOUT: 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 'VALUES '257233dock.jpg' WHERE gebruikersnaam='aap'' at line 1

dit is me query:


				$query="UPDATE leden SET avatar = '$avatar,  VALUES '" . $name . "'
	   WHERE gebruikersnaam='" .$_SESSION['gebruikersnaam']."'";
	 $result = mysql_query($query) or die ("FOUT: " . mysql_error());



$name = naam van de plaatje
UPDATE .... SET ....=.... , .....=...... WHERE

Dus zonder VALUES er in.
INSERT:

INSERT INTO
  tabelnaam (
    kolomnaam
  )
VALUES (
  'waarde'
)

SELECT:

SELECT
  kolomnaam
FROM
  tabelnaam

UPDATE:

UPDATE
  tabelnaam
SET
  kolomnaam = 'nieuwe waarde'

DELETE

DELETE
FROM
  tabelnaam

Dat is wel de basis van SQL. zorg er voor dat je netjes inspringt, dan zie de fouten sneller bij het debuggen en wordt onderhoud 100x eenvoudiger.
Ik heb de values eruit gehaald heb nu de volgende code:


$query=
"UPDATE leden 
SET avatar = '" . $name . "',
WHERE gebruikersnaam='" .$_SESSION['gebruikersnaam']."'";
$result = mysql_query($query) or die ("FOUT: " . mysql_error());


Ik weet niet of ik de "SET" gedeelte goed codeer.... de $name ($name = strtolower($_FILES[$file_name]["name"]) ) :/
want krijg nog steeds een foutmelding

FOUT: 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 'WHERE gebruikersnaam='aap'' at line 3

De komma aan het eind van regel 3 moet weg...
Sorry ben slecht in dit soort diingen maar toch bedankt..krijg nu weer een error


$result = mysql_query($query) or die ("FOUT: " . mysql_error());


Parse error: syntax error, unexpected T_VARIABLE in C:\xampp\htdocs\test\test.php on line 50
NOu je SQL is iig goed, post nu de code rond regel 50 eens ? :P
Je zult waarschijnlijk ergens een ; of iets missen. Geef eens iets meer code, dus bijvoorbeeld de regels 45-55.

	$uploaddir = "uploaded_images/";

	$size_of_array = sizeof($_FILES);

	for($i=0; $i < $size_of_array; $i++)
	{
		$file_name = 'file_' . $i;
		$file_err_code = $_FILES[$file_name]["error"];
		if($file_err_code == UPLOAD_ERR_OK)
		{
			$tmp_name = $_FILES[$file_name]["tmp_name"];
			$name = strtolower($_FILES[$file_name]["name"]);
			if(afbeeldingen ($name) == true)
			{
				$name = rand(1, 1000000) . $name;
				move_uploaded_file($tmp_name, $uploaddir . "$name");
				echo "<center>Plaatje nummer " . $i . " is geupload...</center>";
				//mysql_query("UPDATE leden (avatar) VALUES('" . $name . "')") or die(mysql_error());
				$query=
				"UPDATE leden 
				SET avatar = '" . $name . "',
	   WHERE gebruikersnaam='" .$_SESSION['gebruikersnaam']."'"
	 $result = mysql_query($query) or die ("FOUT: " . mysql_error());
; vergeten achter je query:

['gebruikersnaam']."'";
Achteraan regel 22 (uit bovenstaand blok) ontbreekt een ; om de regel af te sluiten.

Tip: Gebruik een goede editor, die begint direct te piepen. Denk aan Eclipse of Zend Studio.

Edit: 3 dezelfde reacties in 1 minuut... Ik denk dat het wel duidelijk is waar de fout zit! ;)

Reageren