I am getting error from inserting array into the database.
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 ‘visiting students should consult thestudents should refer to the relevant sectio’ at line 23 .
Here is the array below
array
'Choose by Subject Category or Module Code' => string '' (length=0)
'
Back to Home page' => string '' (length=0)
'International' => string 'visiting students should consult the' (length=36)
'Undergraduate' => string 'students should refer to the relevant section of the UCC' (length=56)
'Postgraduate' => string 'students should refer to the relevant section of the UCC' (length=56)
'Credit Weighting' => string '5' (length=1)
'Teaching Period(s)' => string 'Teaching Period 1.' (length=18)
'No. of Students' => string 'Min 15, Max 30.' (length=15)
'Pre-requisite(s)' => string 'None' (length=4)
'Co-requisite(s)' => string 'None' (length=4)
'Teaching Methods' => string '1 x 4hr(s) Lectures; Other (Distance Education Module - Up to 146hrs Self Directed Study).' (length=90)
'Module Co-ordinator' => string 'Dr Peter Cleary, Department of Accounting, Finance and Information Systems.' (length=75)
'Lecturer(s)' => string 'Staff, Department of Accounting, Finance and Information Systems.' (length=65)
'Module Objective' => string 'To examine the management uses of accounting information and to enhance students ability to exert effective managerial control.' (length=127)
'Module Content' => string 'Topics include; the accounting information needs of management, costs and pricing; estimating costs; the identification of key performance indicators; budgeting for control; capital investment appraisal and implications for strategic planning and control.' (length=256)
'Learning Outcomes' => string 'On successful completion of this module, students should be able to:' (length=68)
'Assessment' => string 'Total Marks 100: Continuous Assessment 100 marks (Project/ Essay. Approximately 1500 words.).' (length=93)
'Compulsory Elements' => string 'Continuous Assessment.' (length=22)
'Penalties (for late submission of Course/Project Work etc.)' => string 'Where work is submitted up to and including 7 days late, 10% of the total marks available shall be deducted from the mark achieved. Where work is submitted up to and including 14 days late, 20% of the total marks available shall be deducted from the mark achieved. Work submitted 15 days late or more shall be assigned a mark of zero.' (length=336)
'Pass Standard and any Special Requirements for Passing Module' => string '40%.' (length=4)
'End of Year Written Examination Profile' => string 'No End of Year Written Examination.' (length=35)
'Requirements for Supplemental Examination' => string 'Marks in passed element(s) of Continuous Assessment are carried forward, Failed element(s) of Continuous Assessment must be repeated (Resubmission of revised Continuous Assessment).' (length=181)
Below is the query.
//============== INSERT QUERY================//
$result = array();
foreach($result as $snode){
$query = sprintf("INSERT INTO save_array
(ModuleCode,
Homepage,
International,
......) VALUES ('%s')",mysql_real_escape_string($snode));
foreach ($result as $key => $value)
$query = $query . "$value";
echo '<br /><br />';
mysql_query($query) or die($query."<br/><br/>".mysql_error());
echo $snode. '<br />';
}
echo '<br /><br /><br />';
Any help would be appreciated to figure this out.
//================== New Updated Query Using Mysqli =============================
$result = array();
foreach($result as $snode){
$snode = mysql_real_escape_string($snode);
$query = sprintf("INSERT INTO save_array
(ModuleCode,Homepage,International,.......)VALUES ('%s')",implode("','",$result));
echo $query. '<br />';
foreach ($result as $key => $value)
$query = $query . "$value";
$result = mysql_query($query) or die (mysql_error());
}
I echo the query and seems to be inserting the right value into the right column but not executing into the database.
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 ‘visiting students should consult thestudents should refer to the relevant sectio’ at line 23
you’re trying to save into multiple columns:
with a single value
('%s')also note that
mysql_real_escape_stringtakes a SINGLE value, not an array (i assume $snode is an array).Also consider using
PDOormysqli.You could do (just for example; dont know the $snode structure) and check the output:
UPDATED:
I cant find a problem; the query should be working.
I even created a structure of your table in my system (assuming VARCHAR(256) of every column) and your query-output worked (inserted) as expected..
run the above snippet as it is; dont change anything.