syntax error na insert

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior, Medior and Junior SAP HANA Developer

Vacature details Vakgebied: Software/IT Opleiding: Medior Werklocatie: Veldhoven Vacature ID: 12696 Introductie Our client is the world's leading provider of lithography systems for the semiconductor industry, manufacturing complex machines that are critical to the production of integrated circuits or chips. Our purpose is “unlocking the potential of people and society by pushing technology to new limits”. We do this guided by the principles “Challenge”, “Collaborate” and “Care”. Wat verwachten we van jou? SAP Certified Application Associate - SAP HANA Cloud Modeling (training and/or certification) Bachelor degree or higher Excellent understanding of SAP HANA (2.0 / Cloud), Data Modelling and writing

Bekijk vacature »

Groovez acid

groovez acid

06/04/2012 19:36:52
Quote Anchor link
hallo,

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)
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
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());


        
    }}

?>

<!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>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $displayMessage; ?>

<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
 
PHP hulp

PHP hulp

23/04/2024 21:35:06
 
Obelix Idefix

Obelix Idefix

06/04/2012 19:50:34
Quote Anchor link
Haal je variabelen buiten quotes.
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
 
Groovez acid

groovez acid

06/04/2012 21:45:24
Quote Anchor link
puntje 2 3 en 4 heb ik opgelost denk ik

maar wat bedoel je juist met puntje 1?

zo ziet men code er nu uit

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
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());


        
    }}

?>

<!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>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $displayMessage; ?>

<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>
 

06/04/2012 21:54:53
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
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)"'
    )"
)
?>
Gewijzigd op 06/04/2012 21:57:04 door
 
Groovez acid

groovez acid

06/04/2012 22:00:43
Quote Anchor link
gives me another error

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
 

06/04/2012 22:03:17
Quote Anchor link
sorry, puntjes vergeten :)

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
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) . "'
    )"
);
?>
Gewijzigd op 06/04/2012 22:10:42 door
 
Groovez acid

groovez acid

06/04/2012 22:07:41
Quote Anchor link
hmm
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
 

06/04/2012 22:17:10
Quote Anchor link
Inderdaad, ik was de : vergeten.. Verder heb ik alleen de query verbetert, niet het gehele script :)
 
Groovez acid

groovez acid

06/04/2012 22:23:09
Quote Anchor link
ja bedankt daarvoor

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
 
D Herre

D Herre

06/04/2012 22:36:06
Quote Anchor link
Welke foutmelding krijg je dan? Query is in principe goed. Ik gebruik altijd spaties, ook na values, maar dat moet denk ik niet uitmaken.
 
Groovez acid

groovez acid

06/04/2012 22:51:19
Quote Anchor link
wow man hoe raar is dit

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 !!
 
Obelix Idefix

Obelix Idefix

06/04/2012 23:10:45
Quote Anchor link
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


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
 
D Herre

D Herre

06/04/2012 23:11:31
Quote Anchor link
Match is de oorzaak, match is een selectiefunctie is in MYSQL, dus je kan het inderdaad beter gewoon een andere naam geven. Waarschijnlijk had je 4 rijen die matchten dus werd de waarde 4 ingevoerd

edit: Obelix was me voor
Gewijzigd op 06/04/2012 23:12:56 door D Herre
 
Groovez acid

groovez acid

07/04/2012 13:32:57
Quote Anchor link
ah ok daar kwam die vier vandaag

thx guys ! appreciate ur help
 



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.