Hej.
Jag har en kodsnutt som ser ut enligt nedan. Jag får felmeddelande när jag försöker skriva till databasen, någon som kan hjälpa mig med felet?
Felmeddelandet ser ut så här:
Du har laddat upp filen driving_licens.jpg
Glöm inte att spara när du återvänder till sidan!
Warning: odbc_exec() [function.odbc-exec]: SQL error: [Microsoft][Drivrutin för ODBC Microsoft Access] För få parametrar angavs. 1 förväntades., SQL state 07001 in SQLExecDirect in c:\Inetpub\wwwroot\kapeadmin\insertImage.php on line 35
move_uploaded_file($\_FILES\['fil'\]\['tmp_name'\],"uploaded/".$\_FILES\['fil'\]\['name'\]);
echo "\<font face='verdana' color='#ffffff' size='1'\>Du har laddat upp filen ".$\_FILES\['fil'\]\['name'\]."\</font\>\<br\>\<font face='verdana' color='#ffffff' size='2'\>\<b\>Glöm inte att spara när du återvänder till sidan!\</b\>\</font\>";
// Här ska kod för databasen in
$tmp_id = $\_REQUEST\['id'\];
echo $tmp_id;
$filnamn = $\_FILES\['fil'\]\['name'\];
$conn_id=odbc_connect("sla","","") or
die("Kunde inte spara till databasen");
$sql = "Update StatusInfo Set image = ($filnamn) where id = ('$tmp_id')";
$run = odbc_exec($conn_id,$sql);
odbc_close($conn_id);
}
}
}
Om jag gör tvärt om med apostroferna får jag istället:
"Warning: odbc_exec() [function.odbc-exec]: SQL error: [Microsoft][Drivrutin för ODBC Microsoft Access] Syntaxfel (operator saknas) i frågeuttrycket 'id = ()'., SQL state 37000 in SQLExecDirect in c:\Inetpub\wwwroot\kapeadmin\insertImage.php on line 36"
Jag kan däremot skriva ut tmp_id med echo $tmp_id;
Hämtar från en länk. Och jag kan ta med värdet in och skriva ut det högst upp men sen verkar det inte hänga med längre. Och jag får samma resultat oavsett om jag använder $_GET eller $_REQUEST.
<html>
<head>
<title>Ladda upp fil</title>
</head>
<body bgcolor="#666666">
<? php
$tmp_id = $_GET['id'];
echo $tmp_id;
if(isset($_POST['skicka'])) {
if(!($_FILES['fil']['name']==""||$_FILES['fil']['name']=="none")){
if(is_uploaded_file($_FILES['fil']['tmp_name'])){
move_uploaded_file($_FILES['fil']['tmp_name'],"uploaded/".$_FILES['fil']['name']);
echo "<font face='verdana' color='#ffffff' size='1'>Du har laddat upp filen ".$_FILES['fil']['name']."</font><br><font face='verdana' color='#ffffff' size='2'><b>Glöm inte att spara när du återvänder till sidan!</b></font>";
// Här ska kod för databasen in
$filnamn = $_FILES['fil']['name'];
$conn_id=odbc_connect("sla","","") or
die("Kunde inte spara till databasen");
$sql = "Update StatusInfo Set image = '$filnamn' where id = $tmp_id";
echo $sql;
//echo $tmp_id;
//$run = odbc_exec($conn_id,$sql);
odbc_close($conn_id);
}
}
}
?>