Merhaba, veritabanına upload işlemi yapıyorum fakat hata alıyorum.
Kodlar;
<?
if($_POST){
if ($_FILES["port_resim"]["size"]<1024*1024){//Dosya boyutu 1Mb tan az olsun
if ($_FILES["port_resim"]["type"]=="image/png"){ //dosya tipi jpeg olsun
$port_link = $_POST["port_link"];
$port_filter = $_POST["port_filter"];
$dosya_adi = $_FILES["port_resim"]["name"];
//Resimi kayıt ederken yeni bir isim oluşturalım
$uret=array("as","rt","ty","yu","fg");
$uzanti=substr($dosya_adi,-4,4);
$sayi_tut=rand(1,10000);
$yeni_ad="../image/".$uret[rand(0,4)].$sayi_tut.$uzanti;
//Dosya yeni adıyla uploadklasorune kaydedilecek
if (move_uploaded_file($_FILES["port_resim"]["tmp_name"],$yeni_ad)){
echo 'Dosya başarıyla yüklendi.';
//Bilgileri veritabanına kayıt ediyoruz..
$sorgu = $db->prepare("INSERT INTO portfoy SET port_resim=:port_resim,port_link=:port_link,port_filter=:port_filter");
143. Satır -> $sorgu->execute(array(':port_resim'=> $yeni_ad,':port_link'=>$port_link));
if ($sorgu){
echo 'Veritabanına kaydedildi.';
}else{
echo 'Kayıt sırasında hata oluştu!';
}
}else{
echo 'Dosya Yüklenemedi!';
}
}else{
echo 'Dosya yalnızca jpeg formatında olabilir!';
}
}else{
echo 'Dosya boyutu 1 Mb ı geçemez!';
}
}
?>Aldığım hata;
Dosya başarıyla yüklendi.
Warning: PDOStatement::execute(): SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens in
C:AppServwwwsponsorpeksenpanelportfoy.php on line
143
Veritabanına kaydedildi.
Görseli klasöre vs. kaydediyor ama veritabanına kaydetmiyor.