Ibolac
#php #mysql #wordpress
Kullanıcı
-
Üyelik
13.11.2012
-
Yaş/Cinsiyet
33 / E
-
Meslek
Öğrenci
-
Konum
Eskişehir
-
Ad Soyad
** **
-
Mesajlar
294
-
Beğeniler
46 / 49
-
Ticaret
25, (%96)
$yazi = $_POST['yazi'];
$desen = preg_match_all('#[yazar](.*?)[/yazar]#si', $yazi, $veri);
for($i = 0; $i <= count($veri[1]); $i++)
{
$yazar = $veri[1][$i]; // yazarımınızın adı
// veritabanında yazarı arıyoruz
$yazarbul = mysql_fetch_assoc(mysql_query("SELECT * FROM yazarlar WHERE yazaradi = '$yazar'"));
$yazarID = $yazarbul['yazarid'];
// bulduğumuz veriyi değiştireceğiz.
$degistir = str_replace('[yazar]'.$yazar.'[/yazar]', "[yazar]$yazar[/yazar]", $yazi);
// veritabanına kayıt ediyoruz
$ekle = mysql_query("INSERT INTO yazi (baslik, icerik) VALUES ('$baslik', '$degistir')");
}
Kodu denemedim, hatalar varsa üzerinden geliştirebilirsin. Çalışacağını düşünüyorum :)
Ek Olarak: Yalnız benim verdiğim kod for döngüsünde insert sorgusu olduğundan dolayı her seferinde yeni kayıt oluşturacaktır. Yazıyı içeriği boş halde ekleyip tablodaki icerik kısmını update edersen istediğin şekle girecektir. Yapamazsan yardımcı olabilirim.
Tüm PHP İşleriniz Yapılır # BOT # SCRIPT # EDIT
Ibolac
#php #mysql #wordpress
Kullanıcı
-
Üyelik
13.11.2012
-
Yaş/Cinsiyet
33 / E
-
Meslek
Öğrenci
-
Konum
Eskişehir
-
Ad Soyad
** **
-
Mesajlar
294
-
Beğeniler
46 / 49
-
Ticaret
25, (%96)
Peki veritabanına eklenirken değilde yazıyı okumak için insanlar açtığında link versen olmaz mı?
Örneğin: Namık Kemal falanı yazdı. Şinasi şunu dedi.
gibi bir yazımız olsun.
İçeriği göstereceğimiz yerde yazarlar tablosundan kontrol yaparak eğer yazar adıyla eşleşen kelime veya kelime öbeği varsa bunu linkle diyebilirsin. Yine str_replace kullanarak yapabilirsin.
Tüm PHP İşleriniz Yapılır # BOT # SCRIPT # EDIT
Ibolac
#php #mysql #wordpress
Kullanıcı
-
Üyelik
13.11.2012
-
Yaş/Cinsiyet
33 / E
-
Meslek
Öğrenci
-
Konum
Eskişehir
-
Ad Soyad
** **
-
Mesajlar
294
-
Beğeniler
46 / 49
-
Ticaret
25, (%96)
Verdiğim kodlar ile olmaz zaten. Diyelim yazıyı çektin. Yazar isimlerini yazı içinde arayacaksın. Eğer varsa yazar ismine link vereceksin.
$yazi = "Namık Kemal falan dedi, Şinasi de bunu dedi.";
$q = mysql_query("SELECT * FROM yazarlar ORDER BY yazaradi ASC");
$r = mysql_fetch_assoc($q)
if(strstr($yazi, $r['yazaradi'])
{
$yazi = str_replace($r['yazaradi'], "$r['yazaradi']", $yazi);
echo $yazi;
}
Bu şekilde olmaz ise birde while döngüsüne alarak deneyebilirsin.
Tüm PHP İşleriniz Yapılır # BOT # SCRIPT # EDIT