İyinet'e Hoşgeldiniz!

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

Kayıt Ol!

replace hatası acil yardım lütfen

Cagatay

0
İyinet Üyesi
Katılım
10 Mart 2006
Mesajlar
2,789
Reaction score
1
bir sorunum var arkadaşlar.
aranan kelimeleri listeliyorum sayfada, arananlar.php 'de
replace kodlarını vereyim

PHP:
<?php
function duzen ($kelime){

$kelime= strtolower($kelime);
$kelime = str_replace("ı","i",$kelime);
$kelime = str_replace("ç","c",$kelime);
$kelime = str_replace("ö","o",$kelime);
$kelime = str_replace("ş","s",$kelime);
$kelime = str_replace("ğ","g",$kelime);
$kelime = str_replace("ü","u",$kelime);

$kelime = str_replace("I","i",$kelime);
$kelime = str_replace(" ","+",$kelime);
$kelime = str_replace("/","",$kelime);
$kelime = str_replace("&","",$kelime);
$kelime = str_replace("'","-",$kelime);
$kelime = str_replace(".","-",$kelime);
$kelime = str_replace("amp;","-",$kelime);
$kelime = str_replace("-","-",$kelime);
$kelime = str_replace("İ","i",$kelime);
$kelime = str_replace("Ğ","g",$kelime);

$kelime = str_replace("Ş","s",$kelime);
$kelime = str_replace("İ","i",$kelime);
$kelime = str_replace("Ö","o",$kelime);
$kelime = str_replace("Ç","c",$kelime);
$kelime = str_replace("#305;","i",$kelime);


$kelime = str_replace("#350;","s",$kelime);
$kelime = str_replace("#287;","g",$kelime);
$kelime = str_replace("?;","i",$kelime);
$kelime = str_replace("#199;","c",$kelime);
$kelime = str_replace("ş","s",$kelime);
return($kelime);
}
?>

bu yukarıdaki
PHP:
$kelime = str_replace(" ","+",$kelime);
bu satırda boşlugu + olarak almış tamam ama linklerin arasındaki boşluğu da + olarak koyuyor..
Benim istedigim sadece url'de boşluklar için + kullanacak, yazıyı normal şekilde sayfada listelerken boşluğu boşluk olarak algılayacak.
Deneme yaptım boşluğu boşluk olrak algılatmak istedim ancak listelenen yazıda boşluk bırakıyor tamam tam istedigim gibi ancak bukez de url'de 2. kelimeyi cıkarmıyor.

mesele sayfada şöyle görüntüyü örnekleyeyim

link : esra balamir
url : arama.php?aranan=esra

yani gerisini almıyor boşlugu replacede boşluk olarak algılatınca.
ama boşlugu + olarak algılatınca da şöyle bir sonuç var

link : esra+balamir
url : arama.php?aranan=esra+balamir

ben şunu yapmak istiyorum yani :

link : esra balamir
url : arama.php?aranan=esra+balamir




bir arkadaş yardımcı olursa cok sevinirim, çok aradım ama sonuç bulamadım ne google nede php sitelerinde net bir cevap bulamadım.
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
duzen() çağırdığın yeri pastele. $kelime ne, nereden geliyor?
 

Cagatay

0
İyinet Üyesi
Katılım
10 Mart 2006
Mesajlar
2,789
Reaction score
1
PHP:
<?

$limit 	=50;
$sira	=$_GET['Sayfa'];
if(($sira=="") or !is_numeric($sira)){
$sira=1;
}

$satirlar 	=mysql_num_rows(mysql_query("select * from arananlar"));
$toplam		=ceil($satirlar/$limit);
$baslangic	=($sira-1)*$limit;

echo "<table border=\"1\" width=\"741\" cellspacing=\"0\" cellpadding=\"0\">
	<tr>
		<td align=\"center\" height=\"30\">Aranan bütün kelimeler</td>
	</tr>
	<tr>
		<td width=\"50%\" valign=\"top\">";
	
		
echo "<table border=\"1\" width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" bordercolor=\"#F2F0DC\">";

$aranansor = mysql_query("SELECT * FROM arananlar ORDER BY id DESC LIMIT $baslangic,$limit");
	
While($sonarananyaz=mysql_fetch_array($aranansor)){

$ensoneklenen = duzen($sonarananyaz["aranan"]);

echo "<tr>
		<td><a href=ResimBul.php?aranan=$ensoneklenen>$ensoneklenen</a></td>
	</tr>";
}

echo "</table>";

//-- burası en son aranan bitiş
	
		
		
echo "	</td>
	</tr>
</table>";


?>
bahsettigin kısım bu kısım mı Angelo?
listeleyen bölüm burası kelimeleri
 

ploop

0
İyinet Üyesi
Katılım
11 Ekim 2004
Mesajlar
6,964
Reaction score
0
Konum
karavan
Kodlar çok düzensiz geldi, asağıdaki sekilde deneyebilir misin?
PHP:
<?

$limit     =50;
$sira    =$_GET['Sayfa'];
if(($sira=="") or !is_numeric($sira)){
$sira=1;
}

$satirlar     =mysql_num_rows(mysql_query("select * from arananlar"));
$toplam        =ceil($satirlar/$limit);
$baslangic    =($sira-1)*$limit;

echo "<table border=\"1\" width=\"741\" cellspacing=\"0\" cellpadding=\"0\">
    <tr>
        <td align=\"center\" height=\"30\">Aranan bütün kelimeler</td>
    </tr>
    <tr>
        <td width=\"50%\" valign=\"top\">";
    
        
echo "<table border=\"1\" width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" bordercolor=\"#F2F0DC\">";

$aranansor = mysql_query("SELECT * FROM arananlar ORDER BY id DESC LIMIT $baslangic,$limit");
    
While($sonarananyaz=mysql_fetch_array($aranansor)){

$ensoneklenen = duzen($sonarananyaz["aranan"]);

echo "<tr>
        <td><a href=ResimBul.php?aranan=$ensoneklenen>$sonarananyaz[aranan]</a></td>
    </tr>";
}

echo "</table>";

//-- burası en son aranan bitiş
    
        
        
echo "    </td>
    </tr>
</table>";


?>
 

Cagatay

0
İyinet Üyesi
Katılım
10 Mart 2006
Mesajlar
2,789
Reaction score
1
ploop teşekkürler, sorun tamamdır verdigin kodlar normale dönderdi.


ancak bir sorun daha var.

2 kelimelik arananları arama sonucunda listelemiyor.

mevcut kod bu ancak tek kelimelik arananlar için sonuç veriyor
PHP:
$dosya=file_get_contents("http://images.google.com.tr/images?svnum=10&hl=tr&gbv=2&q=".$_GET['aranan']);

2 kelimeli aramalarda verdigi sorun ise :
PHP:
Warning: file_get_contents(http://images.google.com.tr/images?svnum=10&hl=tr&gbv=2&q=candan erçetin) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.0 400 Bad Request

buna da bir çözüm varmıdır aceba?
 

Cagatay

0
İyinet Üyesi
Katılım
10 Mart 2006
Mesajlar
2,789
Reaction score
1
bu kısım arananlarda degilde aranan kelimede ploop.
yani arananlar.php klasöründe degil bu kod, arama formundan gelen veriye göre resim listeliyor ancak verdigin kod ile hata vermedi ama Sonuçlarıda listelemedi nedense
 

ploop

0
İyinet Üyesi
Katılım
11 Ekim 2004
Mesajlar
6,964
Reaction score
0
Konum
karavan
o zaman verdiğin tek satırı su sekilde değistir:
$aranan = $_GET['aranan'];
$aranankelime = str_replace(" ","+",$aranan);
$dosya=file_get_contents("http://images.google.com.tr/images?svnum=10&hl=tr&gbv=2&q=".$aranankelime);
 

Cagatay

0
İyinet Üyesi
Katılım
10 Mart 2006
Mesajlar
2,789
Reaction score
1
ploop sen bir dahisin :)

Allah razı olsun, sagolasın.
 

Cagatay

0
İyinet Üyesi
Katılım
10 Mart 2006
Mesajlar
2,789
Reaction score
1
bana diyor heralde.
Ferdi vermisti kodu ama aynısımıydı bilmiyorum calıstıramamıstım.
Senin verdiginle çalıştı sagol tekrar ploop, sonuç olarak sorun halloldu :)
 

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