Kodları lütfen aşağıdaki butonları kullanarak renklendirin. Örnek: <php> echo "Selam Dünya"; </php>
Yardım
karakter kaldı

Unknown column

Local hostumda çok garip ve mantığını kuramadığım bir hata alıyorum. (PHP 5.3 MySQL 5.1.36)

Önce kodlara bakalım;

<?php header('content-type: text/html; charset: utf-8');
include ("degiskenler.php");
if (!$_POST["f_baslik"])
{
	echo "başlık boş";
	}else{
		$baslik = $_POST["f_baslik"];
		echo $baslik;
		
if (!$_POST["f_alt_baslik"])
{
	echo "alt başlık boş";
	}else{
		$alt_baslik = $_POST["f_alt_baslik"];
		echo $alt_baslik;		
		
if (!$_POST["f_metin"])
{
	echo "metin boş";
	}else{
		$metin = $_POST["f_metin"];
		echo $metin;		
		

$vt_kural = mysql_connect($sun, $ka, $sif) OR die("baglanti başarısız ".mysql_error());
$vt_baglantisi = mysql_select_db($vt, $vt_kural) OR die("hatali vt ".mysql_error());
$vt_yolla = mysql_query("INSERT INTO makale (mbaslik, mabaslik, mmetin) VALUES(`$baslik`,`$alt_baslik`,`$metin`);") OR die("girdi yapılamadı ".mysql_error());
mysql_close(vt_kural);
};
};
};

bu da tablodaki tüm sütunlar;
mkn mbaslik mabaslik mmetin

Hata ise;

girdi yapılamadı Unknown column 'DDD' in 'field list'

Buradaki DDD post ile aldığım $baslik.

Kafam çok karışmış durumda. $baslik değişkeninin nasıl sütun olarak sorgulandığını anlamıyorum. Aklıma gelen her türlü tırnak virgül falan kombinasyonunu da denedim ama halen sorun devam ediyor. Aynı table dan veri çekmekte ise problem çıkmıyor.

Şimdiden teşekkürler.
+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Doğru Cevap

  • 2
    necmettin adlı üyenin fotoğrafı
    10 yıl önce yazılmış
    80 cevap - 0 soru
    ` yerine ' (düz tek tırnak) ile dene? Normalde ` kullanılmaz çünkü string değerini gösterirken..

    Ayrıca INSERT INTO... olan cümleyi ekrana bastır, ekrana basılan metni mysql'e doğrudan (konsoldan veya MySQL Query Browser gibi bir uygulamadan gönder veritabanına, böylece cümlede hiçbir şekilde bir hata olmadığına emin ol.

    Ha bir de şu var, $baslik vs içerisinde tek tırnak, ` veya normal çift tırnak kullanıldığında bu INSERT INTO pörtler, önce escape() fonksiyonundan geçirmelisin bu değerleri.
    • Lupus adlı üyenin fotoğrafı Lupus
      Teşekkür ederim `` yerine ' işe yaradı.
      10 yıl önce yazılmış
    • necmettin adlı üyenin fotoğrafı necmettin
      O zaman niye her türlü tırnak kombinasyonunu denedim diyorsun? ;)

      Dediğim gibi o cümleyi mysql'e doğrudan verseydin sana o ` larda sorun olduğunu söylerdi. Ayrıca PHP'den MySQL'e sorgu gönderirken sorgu sonuna ; konmaz (koyunca çalışması birşey ifade etmiyor, çünkü mesela eski PHP-MySQL ikililerinde çalışmıyordu bir ara). Kodlama standartlarına biraz daha dikkat lütfen. ;)
      10 yıl önce yazılmış

Cevaplar

  • iason adlı üyenin fotoğrafı
    10 yıl önce yazılmış
    6 cevap - 0 soru
    Merhaba.
    $baslik alanındaki değer ne?
    Sorguyu çalıştırmadan önce ekrana yazdırmayı denedin mi?
    • Lupus adlı üyenin fotoğrafı Lupus
      söylediğim gibi $baslik siye olladığım örnekte DDD idi form sayfasından geliyor ve ekrana sorunsuz yazıyor.
      10 yıl önce yazılmış
  • Kemal adlı üyenin fotoğrafı
    10 yıl önce yazılmış
    63 cevap - 10 soru
    necmettinin söylediği var birde
    VALUES(`$baslik`,`$alt_baslik`,`$metin`);")
    sorgun sonunda );" var buradaki noktalı virgül olmaması gerekmezmi
    • Lupus adlı üyenin fotoğrafı Lupus
      ; olsa da olmasa da çalışıyor bu arada.
      10 yıl önce yazılmış