İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

virgül arasındaki kelimelere link vermek?

atay

0
İyinet Üyesi
Katılım
29 Ekim 2005
Mesajlar
3,592
Reaction score
37
öncelikle soracağım şey belki kafalarda "spam" çağrıştırabilir ama öyle bir niyetim yok, bir arkadaşlık sitesi hazırlıyorum ilgi alanları bölümü için kullanacağım.

soruma gelirsek,

php'deki değişken:

PHP:
$ilgi = "kitap, müzik, sinema, tiyatro";

benim sağlamaya çalıştığım html çıktısı:

HTML:
<a href="ilgi.php?ara=kitap">kitap<a>, <a href="ilgi.php?ara=müzik">müzik<a>, <a href="ilgi.php?ara=sinema">sinema<a>, <a href="ilgi.php?ara=tiyatro">tiyatro<a>
 

Caesar

0
İyinet Üyesi
Katılım
5 Haziran 2006
Mesajlar
1,894
Reaction score
7
PHP:
$ilgi="merhaba, selam, ehehe";
$bol=explode(", ",$ilgi);
$say=count($bol);
for ($i=0; $i<=$say; $i++) {
 echo "<a href='link'>$bol[$i]</a>, ";
}
 

atay

0
İyinet Üyesi
Katılım
29 Ekim 2005
Mesajlar
3,592
Reaction score
37
teşekkürler angelo ve ceasar...

ceasar: kodda ", " olarak ayırıyor peki kullanıcı müzik,resim,sanat vb. gibi boşluk girmeden girerse nasıl aynı işlemi sağlayabilirim ?
 

atay

0
İyinet Üyesi
Katılım
29 Ekim 2005
Mesajlar
3,592
Reaction score
37
onu düşündüm teşekkürler yinede ama öyle yaparsamda ", " kabul etmez hem "," hem ", " hemde " ," kabul edebilecek bir kod yaratılabilse çok güzel olur, çok mu şey istedim ne ;)
 

Turkmucit

0
İyinet Üyesi
Katılım
18 Ocak 2006
Mesajlar
1,523
Reaction score
0
ben PHP bilmem ama her dilde vardır muhakkak boşluk atma işlemi vardır.Önce boşlukları atar sonra "," şeklide bölersiniz.Basicde trim ile atılıyor PHP yi bilmem.
saygılar..
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
$text = str_replace(' ','',$text);

Trim baştan sondan atar. Alternatif olarak virgule gore explode edilir, for içinde dönerken her bir eleman trimlenir.

Yol ve örnekler çok, bence burada vakit kaybedeceğine, php.net deki örneklerden zaten çözersin.
 

zahmaci

0
İyinet Üyesi
Katılım
19 Ekim 2003
Mesajlar
549
Reaction score
0
Konum
Antalya
PHP:
$ilgi="merhaba, selam, ehehe";
$bol=explode(",",$ilgi);
$say=count($bol);
for ($i=0; $i<=$say; $i++) {
 echo "<a href='link.php?aranan=".trim($bol[$i])."'>". trim($bol[$i]). "</a>, ";
}

Ceasarın verdiği kod ve Angelonun verdiği ip ucunun birleşimi

Sanırım işini görür
 

*siber*

0
İyinet Üyesi
Katılım
20 Temmuz 2005
Mesajlar
2,014
Reaction score
1
Konum
about:blank
yada
PHP:
$ilgi="merhaba, selam, ehehe";
$ilgi = ereg_replace(" ", "",$ilgi); // boşlukları alarak
$bol=explode(",",$ilgi);

yapabilirsin.
 

atay

0
İyinet Üyesi
Katılım
29 Ekim 2005
Mesajlar
3,592
Reaction score
37
istediğimi tam olarak yapabilen bi kodu yarattım cevaplar sayesinde, teşekkür ederim.
 

atay

0
İyinet Üyesi
Katılım
29 Ekim 2005
Mesajlar
3,592
Reaction score
37
kodu en son bu hale getirdim:

PHP:
<?						
$ilgi=$bilgiben[ilgi];					
$ilgi = ereg_replace(", ", ",",$ilgi);
$ilgi = ereg_replace(" ,", ",",$ilgi);
$ilgi = ereg_replace(" , ", ",",$ilgi);
$bol=explode(",",$ilgi);
$say=count($bol);
for ($i=0; $i<=$say; $i++) {
echo "<a href='ilgiara.php?kelime=$bol[$i]'>$bol[$i]</a>, ";
}  
?>

belki benden sonra başka biride takılır...
 

DamgaNet

0
İyinet Üyesi
Katılım
28 Şubat 2005
Mesajlar
188
Reaction score
0
PHP:
<?                        
$ilgi=$bilgiben[ilgi];                    
$ilgi = ereg_replace(", ", ",",$ilgi);
$ilgi = ereg_replace(" ,", ",",$ilgi);
$ilgi = ereg_replace(" , ", ",",$ilgi);
$bol=explode(",",$ilgi);
$say=count($bol);
for ($i=0; $i<=$say; $i++) {
echo "<a href='ilgiara.php?kelime=$bol[$i]'>$bol[$i]</a>, ";
}  
?>

burdaki kodu yazdırmak yerine tüm linklerin okulumunu birtek degişkene atamamız mümkünmü. mümkünse nasıl yapabiliriz. saygılar.
 

Caesar

0
İyinet Üyesi
Katılım
5 Haziran 2006
Mesajlar
1,894
Reaction score
7
kodu en son bu hale getirdim:

PHP:
<?						
$ilgi=$bilgiben[ilgi];					
$ilgi = ereg_replace(", ", ",",$ilgi);
$ilgi = ereg_replace(" ,", ",",$ilgi);
$ilgi = ereg_replace(" , ", ",",$ilgi);
$bol=explode(",",$ilgi);
$say=count($bol);
for ($i=0; $i<=$say; $i++) {
echo "<a href='ilgiara.php?kelime=$bol[$i]'>$bol[$i]</a>, ";
}  
?>

belki benden sonra başka biride takılır...


3 farklı ereg replace ye gerek yok

PHP:
$bol=explode(",",$metin);
$say=count($bol);

if ($i=0; $i<$say; $i++) {
  $deneme = trim($bol[$i]);
}
trim fonksiyonu baştaki ve sondaki boşlukları keser zaten.
 

iyinet

Root
Admin
Hosting Firması
Katılım
2 Eylül 2002
Mesajlar
5,028
Reaction score
66
Konum
Sakarya
Ben de soyle bir kod dusundum.
Ancak ilgi degiskeninin sonunda ek bir virgul olmasi sarti ile.

PHP:
$ilgi = "kitap, müzik, sinema, tiyatro,";  
$linkler = preg_replace_callback('/(.*),\s?/U', create_function('$matches', 'return "<a href=\"ilgi.php?ara=".trim($matches[1])."\">$matches[1]</a>,";'), $ilgi);
echo $linkler;
 

ankara

0
İyinet Üyesi
Katılım
27 Ekim 2006
Mesajlar
397
Reaction score
0
Konum
Gemlik - Bursa
Ben de soyle bir kod dusundum.
Ancak ilgi degiskeninin sonunda ek bir virgul olmasi sarti ile.

PHP:
$ilgi = "kitap, müzik, sinema, tiyatro,";  
$linkler = preg_replace_callback('/(.*),\s?/U', create_function('$matches', 'return "<a href=\"ilgi.php?ara=".trim($matches[1])."\">$matches[1]</a>,";'), $ilgi);
echo $linkler;

iyinet admin abim kelimelere " kitap müzik sinema tiyatro "

virgul nasıl koyduruz $kelime değişkeni aralarına yani site açıklama var sitemde aralarına , koymak istiyorum keywords için
 

metadige

0
İyinet Üyesi
Katılım
23 Aralık 2005
Mesajlar
354
Reaction score
4
iyinet admin abim kelimelere " kitap müzik sinema tiyatro "

virgul nasıl koyduruz $kelime değişkeni aralarına yani site açıklama var sitemde aralarına , koymak istiyorum keywords için

PHP:
$kelime="kitap müzik sinema tiyatro";
$kelime=str_replace(' ',',',$kelime);
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Üst