Profil detayı eklendi, herkes profillerine girip bir gözatsın! Sevdiğiniz üyelerin cevaplarını takip edin! Tüm güncellemeler

@ kullanılarak; herhangi bir kullanıcıdan bahsetmek

Merhaba,

Yorumlarda herhangi bir kullanıcıdan bahsetmek için @ işaretini kullanarak belirtiyoruz. Tam da öğrenmek istediğim bunun mantığı? Nasıl yorumlarda @kullanıcıadı dediğimizde ayırt edebiliriz.

5

Cevaplar (5)

İşlem devam ediyor, lütfen bekleyin..
Tayfun Erbilen
Doğru Cevap
@tayfunerbilen
3 ay önce [Güncellendi]

@serkankuyu, şu şekilde üyeleri linklendirebilirsin;


$string = 'Merhaba @tayfunerbilen iyi misin? @hakan test ediyoruz';
$string = preg_replace('/@(\w+)/', '<a href="uye/$1">@$1</a>', $string);
echo $string;
Cevapla @serkankuyu3 ay önce
@tayfunerbilen, teşekkür ederim. Gayet basitmiş :)
Cevapla @exe6763 ay önce
@tayfunerbilen, ben bu konuda js kullanmanızı tavsiye ederim. bilmiyorum ama kullanıcı tarafından replace etmek bana daha performanslı geliyor. mesela sayfalama işlemini "şuanki sayfa, toplam sayfa değerlerini js fonksiyonuna vererek" js ile yapıyorum.

@tayfunerbilen bu konuda ki görüşünü merak ediyorum.
Cevapla @tayfunerbilen3 ay önce
@exe676, toplam sayfa değeri için sql sorgusu yaptıktan sonra jquery ile sayfalama oluşturmanın ne anlamı kalıyor zaten :) ha olabilir mi? olabilir neden olmasın. Ancak "bu" konuda ben server-side yapmaktan yanayım. En güzeli kimsenin müdahale edemediği yerdir bence :)
İşlem devam ediyor, lütfen bekleyin..
Abdulbaki Zırıh
@abdulbaki
3 ay önce [Güncellendi]
function userSelect($str){


	$count = strpos($str, "@");
	$spaceCount = strpos(substr($str,$count), " ");
	
	$user = "<a href='#' style='color: #2ea2ba; text-decoration: none'>" . substr($str,$count, $spaceCount) . "</a>";
	
	
	
	
	return substr($str,0 ,$count) . $user . substr($str, $count + $spaceCount);
	 
}




$text = "Merhaba @kullanici bu deneme yazısıdır.";


echo userSelect($text);

Birden daha fazla @ kullanılarak işaretleme yapılırsa onuda bir döngü yardımı ile yapabiliriz.


Son olarak çıktı şu şekilde olur.

Merhaba @kullanici bu deneme yazısıdır.
Cevapla @serkankuyu3 ay önce
@abdulbaki, bu fonksiyonu deneyeceğim. Burada sadece @ sonrasıdaki veriyi çektik sanırım. Peki o metinin içerisindeki kullanıcıyı nasıl eşleştireceğim?
Cevapla @abdulbaki3 ay önce
@abdulbaki, Fonksiyon içerisindeki $user değişkeninin değeri seçilen kullanıcıdır. Burada kullanıcının olup olmadığını kontrol edip eğer var ise ona bildirim yollayabilir veya link href özelliği ile kullanıcı profil linki yapabilirsiniz. Yani burada ben temel mantığı anlattım kullanıcı bu şekilde seçilebilir gibisinden. Tabi burada senin ne yapmak istediğin önemli ister bildirim yolla ister başka bir şey bu mantığı kavrayıp geliştirebilirsin. Kolay gelsin. Başarılar.
Cevapla @serkankuyu3 ay önce
@abdulbaki, teşekkür ederim.
Cevapla @serkankuyu3 ay önce
@abdulbaki, fonksiyonu denediğimde şöyle bir şey oluyor. Eğer @ ile etiketlenmiş kullanıcı yoksa metinin başındaki kelimeyi etiket olarak görüyor.
Cevapla @abdulbaki3 ay önce
@serkankuyu, Kullanımı şu şekilde yapabiliriz.
if($count){
return substr($str,0 ,$count) . $user . substr($str, $count + $spaceCount);
}else{
return $str;
}
Cevapla @serkankuyu3 ay önce
@abdulbaki, bu bilgiler işime yaradı. Uygun bir zaman da bunlar üzerinde bir çalışma yapacağım ;)
İşlem devam ediyor, lütfen bekleyin..
Bayram Arif
@Bayramito
3 ay önce

Ya teorik olarak fikir beyan etmem gerekirse, aslında fazla zor bi iş değil sadece olay biraz senin yaratıcılığına kalmış...

yani bir input a @ işaretinden sonra girilen değerleri yakalayıp ajaxla dinamik olarak php tarafına gönderebilir, php kısmında da parçalatabilir ve kalan değeri ki bu da kullanıcı adı olur zaten, üyeler tablosunda kullanıcı adı kısmında aratabilirsin. ve bu şekilde bir kullanımdan sonra post edilmişse söz konusu kullanıcıya bir mesaj gönderebilirsin.... bu mesaj sistemide bildiğin facebooktaki bildirim sistemi gibi bişey olabilir işte

biraz ingilizce gerektiren aşağıdaki videodaki gibi bişey,


https://www.youtube.com/watch?v=IvagmRhTG4w


Yada daha fonksiyonel bişey olsun dersen mesela, buna ilave olarak, bir harf basıldığında @yazdıktan sonra tabi, girilen harfleri jquery de yakalatıp her harf ten sonra yine ajaxla dinamik olarak o konuda yorum yapanlar arasında ufak bir arama yaparak direkt olarak kullanıcının işini kolaylaştırabilirsin. tabi bunun için o konuya ait tabloda veritabanında, konuya yorumyapanların da kullanıcı adlarını tutman gerekir ki o sütunda arama yap. dedim ya senin hayal gücüne bakıyor iş :)

İşlem devam ediyor, lütfen bekleyin..
Tayfun Erbilen
@tayfunerbilen
3 ay önce [Güncellendi]

kullanıcı adları sadece harf ve sayıdan ibaret oldukları için ve etiketlerken @ işareti ile etiketlendikleri için şu şekilde yakalayabilirsin;


$string = 'Merhaba @tayfunerbilen iyi misin? @hakan test ediyoruz';
preg_match_all('/@(\w+)/', $string, $users);
print_r($users);


Sonrada kullanıcı adlarına ait üyeleri bulup işlem yapabilirsin.

İşlem devam ediyor, lütfen bekleyin..
Serkan Kuyu
@serkankuyu
3 ay önce

@tayfunerbilen @ işaretli etiketi yakaladığımda; eğer birden fazla etiket varsa; ekran çıktısı olarak -> tayfunerbilen hakan olarak çıkıyor.


@ sonrası etiketteki kullanıcıya link vermek istesem metin içerisinde bunu nasıl yapabilirim?


// @ sonrası etiketi buluyoruz
 $string = 'Merhaba @tayfunerbilen iyi misin? @hakan test ediyoruz';
 preg_match_all('/@([0-9a-zA-Z]+)/', $string, $users); 
//print_r($users);
  foreach($users[1] as $key => $value){
      echo $value.' ';
    }
İşlem devam ediyor, lütfen bekleyin..

Cevap yaz Sadece sorunun cevabını yazın