syntax error na insert
ik gebruik volgend regeltje om een naam van een foto die geupload is in een record te steken in een database
mysql_query("INSERT INTO ffa_screens (imgname,match) VALUES($img,$id)") or die(mysql_error());
eerst print het de twee vars die ik wil inserten, en daarna deze error
4f7f29208bbcb.jpg66You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'match) VALUES(4f7f29208bbcb.jpg,66)' at line 1
ik heb al vanalles geprobeerd, enkele haakjes ', dubbele " en backticks `
niets blijkt te werken
ik voeg de code toe in volgend script
Code (php)
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
29
30
31
32
33
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
29
30
31
32
33
<?php
// INCLUDE THE CLASS FILE
include('ImageLib.Class.php');
include("./includes/egl_inc.php");
$displayMessage = '';
if($_POST){
if(isset($_FILES['image_file'])){
// SEE THE MAGIC HAPPEN
$destination_path = 'uploads/';
$post_file_name = 'image_file';
$width = 600;
$height = 400;
$scale = false;
$trim = true;
$uniqueName = true;
$img = ImageLib::getInstance()->upload($post_file_name, $destination_path, $uniqueName)->resize($width, $height, $scale, $trim)->save();
$fileName = $_FILES['image_file']['name'];
$displayMessage = '<div class="image"><img src="'.$destination_path.$fileName.'" /><br />Uploaded And Resized...With new file name : "'.$img.'"</div><br /><br />';
print $img;
$playerid=$_SESSION['tid'];
$matchdetails = mysql_fetch_array(mysql_query("SELECT * FROM ffa_matches WHERE status=2 and admin=$playerid"));
$id = $matchdetails[id];
print $id;
mysql_query("INSERT INTO ffa_screens (imgname,match) VALUES($img,$id)") or die(mysql_error());
}}
?>
// INCLUDE THE CLASS FILE
include('ImageLib.Class.php');
include("./includes/egl_inc.php");
$displayMessage = '';
if($_POST){
if(isset($_FILES['image_file'])){
// SEE THE MAGIC HAPPEN
$destination_path = 'uploads/';
$post_file_name = 'image_file';
$width = 600;
$height = 400;
$scale = false;
$trim = true;
$uniqueName = true;
$img = ImageLib::getInstance()->upload($post_file_name, $destination_path, $uniqueName)->resize($width, $height, $scale, $trim)->save();
$fileName = $_FILES['image_file']['name'];
$displayMessage = '<div class="image"><img src="'.$destination_path.$fileName.'" /><br />Uploaded And Resized...With new file name : "'.$img.'"</div><br /><br />';
print $img;
$playerid=$_SESSION['tid'];
$matchdetails = mysql_fetch_array(mysql_query("SELECT * FROM ffa_matches WHERE status=2 and admin=$playerid"));
$id = $matchdetails[id];
print $id;
mysql_query("INSERT INTO ffa_screens (imgname,match) VALUES($img,$id)") or die(mysql_error());
}}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>ImageLib Samples By Rahul Kate</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style>
body{font-family: arial; font-size:12px; color:#444444; padding:20px;}
li{margin-top:10px;}
.image{color:green;}
.image img{margin-bottom:5px;}
</style>
</head>
<body>
<h1>ImageLib | Upload Image, move it to Uploads folder and Resize it and Trim</h1>
<form method="post" enctype="multipart/form-data">
Select Image<br />
<input type="file" name="image_file" id="image_file" />
<br />
<br />
<input type="submit" name="submit" value="Submit" />
<br />
<br />
<a href="index.html">Back TO Home</a>
</form>
</body>
</html>
wie kan mij helpen?
bedankt alvast
Gewijzigd op 06/04/2012 19:39:06 door Groovez acid
Bouw goede foutafhandeling in ipv die- constructie.
Als je alleen een id ophaalt, waarom dan * gebruiken in je select?
Je query's zijn lek --> gebruik mysql_real_escape_string
maar wat bedoel je juist met puntje 1?
zo ziet men code er nu uit
Code (php)
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
29
30
31
32
33
34
35
36
37
38
39
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
29
30
31
32
33
34
35
36
37
38
39
<?php
error_reporting(E_ALL);
ini_set("display_errors", 1);
// INCLUDE THE CLASS FILE
include('ImageLib.Class.php');
include("./includes/egl_inc.php");
$displayMessage = '';
if($_POST){
if(isset($_FILES['image_file'])){
// SEE THE MAGIC HAPPEN
$destination_path = 'uploads/';
$post_file_name = 'image_file';
$width = 600;
$height = 400;
$scale = false;
$trim = true;
$uniqueName = true;
$img = ImageLib::getInstance()->upload($post_file_name, $destination_path, $uniqueName)->resize($width, $height, $scale, $trim)->save();
$imgstr = mysql_real_escape_string ($img);
$fileName = $_FILES['image_file']['name'];
$displayMessage = '<div class="image"><img src="'.$destination_path.$fileName.'" /><br />Uploaded And Resized...With new file name : "'.$img.'"</div><br /><br />';
$playerid=$_SESSION['tid'];
$matchdetails = mysql_fetch_array(mysql_query("SELECT id FROM ffa_matches WHERE status=2 and admin=$playerid"));
$id = $matchdetails[id];
print $img;print $imgstr;
print $id;
mysql_query("INSERT INTO ffa_screens (imgname,match) VALUES('$imgstr',$id)") or die(mysql_error());
}}
?>
error_reporting(E_ALL);
ini_set("display_errors", 1);
// INCLUDE THE CLASS FILE
include('ImageLib.Class.php');
include("./includes/egl_inc.php");
$displayMessage = '';
if($_POST){
if(isset($_FILES['image_file'])){
// SEE THE MAGIC HAPPEN
$destination_path = 'uploads/';
$post_file_name = 'image_file';
$width = 600;
$height = 400;
$scale = false;
$trim = true;
$uniqueName = true;
$img = ImageLib::getInstance()->upload($post_file_name, $destination_path, $uniqueName)->resize($width, $height, $scale, $trim)->save();
$imgstr = mysql_real_escape_string ($img);
$fileName = $_FILES['image_file']['name'];
$displayMessage = '<div class="image"><img src="'.$destination_path.$fileName.'" /><br />Uploaded And Resized...With new file name : "'.$img.'"</div><br /><br />';
$playerid=$_SESSION['tid'];
$matchdetails = mysql_fetch_array(mysql_query("SELECT id FROM ffa_matches WHERE status=2 and admin=$playerid"));
$id = $matchdetails[id];
print $img;print $imgstr;
print $id;
mysql_query("INSERT INTO ffa_screens (imgname,match) VALUES('$imgstr',$id)") or die(mysql_error());
}}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>ImageLib Samples By Rahul Kate</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style>
body{font-family: arial; font-size:12px; color:#444444; padding:20px;}
li{margin-top:10px;}
.image{color:green;}
.image img{margin-bottom:5px;}
</style>
</head>
<body>
<h1>ImageLib | Upload Image, move it to Uploads folder and Resize it and Trim</h1>
<form method="post" enctype="multipart/form-data">
Select Image<br />
<input type="file" name="image_file" id="image_file" />
<br />
<br />
<input type="submit" name="submit" value="Submit" />
<br />
<br />
<a href="index.html">Back TO Home</a>
</form>
</body>
</html>
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?php
mysql_query("
INSERT INTO ffa_screens
(imgname,match)
VALUES(
'"mysql_real_escape_string($imgstr)"',
'"mysql_real_escape_string($id)"'
)")
?>
mysql_query("
INSERT INTO ffa_screens
(imgname,match)
VALUES(
'"mysql_real_escape_string($imgstr)"',
'"mysql_real_escape_string($id)"'
)")
?>
Parse error: syntax error, unexpected T_STRING in /home/acidleag/public_html/League/sample3.php on line 38
appreciate ur help !
Gewijzigd op 06/04/2012 22:01:37 door groovez acid
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?php
mysql_query("
INSERT INTO ffa_screens
(imgname,match)
VALUES(
'" . mysql_real_escape_string($imgstr) . "',
'" . mysql_real_escape_string($id) . "'
)");
?>
mysql_query("
INSERT INTO ffa_screens
(imgname,match)
VALUES(
'" . mysql_real_escape_string($imgstr) . "',
'" . mysql_real_escape_string($id) . "'
)");
?>
now its passing the insert query
but nothing is stored
and i had to ad a ; after the query, or i got this error
Parse error: syntax error, unexpected '}' in /home/acidleag/public_html/League/sample3.php on line 44
Inderdaad, ik was de : vergeten.. Verder heb ik alleen de query verbetert, niet het gehele script :)
ik probeer nu eender wat te inserten, maar zelfs dat lukt niet
mysql_query("
INSERT INTO ffa_screens
(match)
VALUES(1)");
Toevoeging op 06/04/2012 22:24:13:
1 id int(11) Nee Geen AUTO_INCREMENT
2 imgname varchar(30) latin1_general_ci Nee Geen
3 match int(11)
zo ziet men tabel eruit
Welke foutmelding krijg je dan? Query is in principe goed. Ik gebruik altijd spaties, ook na values, maar dat moet denk ik niet uitmaken.
als ik dit ff toevoeg
$insertSite_sql = "INSERT INTO ffa_screenshots (match) VALUES ($id)";
$insertSite= mysql_query($insertSite_sql);
gebeurd er niks
maar schrijf ik net hetzelfde in een andere tabel werkt het wel
en ik heb de tabel net hetzelfde opgesteld
heb ook een nieuwe tabel gemaakt, met net hetzelfde resultaat !
de naam van de tabel kan toch geen rol spelen eh? ffa_screenshots en ffa_screens doen het niet, ffa_signups wel ...
Toevoeging op 06/04/2012 22:54:47:
omg ik denk dat ik het gevonden heb
als ik een veld in mijn tabel de naam match geef, werkt de tabel niet
ik verander het veld in matchid, en nu schrijft ie wel weg
ga nu ff proberen de volledige data te inserten
Toevoeging op 06/04/2012 23:01:37:
het script werkt nu, maar ipv de fotonaam, zet ie 4 in de tabel :s
terwijl ik vlak voor de insert de var print, en hij geeft mij gewoon de fotonaam
vanwaar komt die 4 in hemelsnaam?
Toevoeging op 06/04/2012 23:05:38:
ok nu werkt het, geen idee waar die 4 vandaan kwam, maar het werkt !
bedankt !!
Groovez acid op 06/04/2012 22:51:19:
de naam van de tabel kan toch geen rol spelen eh? ffa_screenshots en ffa_screens doen het niet, ffa_signups wel ...
Toevoeging op 06/04/2012 22:54:47:
als ik een veld in mijn tabel de naam match geef, werkt de tabel niet
ik verander het veld in matchid, en nu schrijft ie wel weg
Toevoeging op 06/04/2012 22:54:47:
als ik een veld in mijn tabel de naam match geef, werkt de tabel niet
ik verander het veld in matchid, en nu schrijft ie wel weg
Sommige namen zijn niet toegestaan (reserved words). Match is daar 1 van. Zie bv http://dev.mysql.com/doc/refman/5.5/en/reserved-words.html
thx guys ! appreciate ur help