Arama butonu
Bu konudaki kullanıcılar: 1 misafir
8
Cevap
541
Tıklama
0
Öne Çıkarma
cURL hata yardım
N
13 yıl
Yüzbaşı
Konu Sahibi

Merhabalar
curl ile bir siteden aldığım bilgini içindeki birkaç satırı silmem gerekiyor. Ben öncelikle bütün satırların arasındaki boşluğu silmek için
preg_replace("/\s+/","",$sonuc);

bunu kullanıyorum.
Ancak bu kod çalışmıyor. ve içerikteki diğer şeyleri değiştirmeyi çalıştığımda da başarı elde edemedim nerede hata yapıyorum?
cURL kodları
$ref=$ref; 
$curl=curl_init();

curl_setopt($curl,CURL_RETURNTRANSFER,1);
curl_setopt($curl,CURLOPT_URL,$url);
$sonuc=curl_exec($curl);
curl_close($curl);



Teşekkürler

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil





< Bu mesaj bu kişi tarafından değiştirildi Naples -- 19 Eylül 2012; 18:47:39 >

N
13 yıl
Yüzbaşı
Konu Sahibi

Guncel





< Bu mesaj bu kişi tarafından değiştirildi Naples -- 17 Eylül 2012; 18:01:36 >

< Bu ileti tablet sürüm kullanılarak atıldı >
Bu mesaja 1 cevap geldi.
N
13 yıl
Yüzbaşı
Konu Sahibi




N
13 yıl
Yüzbaşı
Konu Sahibi

quote:

Orijinalden alıntı: seyfi84

şöyle kullanacaksın
 
$yeni_sonuc=preg_replace(...,...,$sonuc);


yine bir sonuca ulaşamadım. preg match kullanayım dedim.
preg_match_all("/^<table cellpadding=\"4\" cellspacing=\"2\" border=\"0\" width=\"100%\" class=\"parcalar\">(.*?)<\/td>$/",$sonuc,$pp);

bu kodu yazdığım zaman bir şey bulamıyor ancak $sonucu yazıyor...



N
13 yıl
Yüzbaşı
Konu Sahibi

quote:

Orijinalden alıntı: seyfi84

aşağıdaki kod beklenen sonucu veriyor mu?
<?php 
$ss='aaa bbb
cccc dddd';
$tt=preg_replace("/s\+/", "", $ss);
echo $tt.PHP_EOL;
?>



Su anda deniyemiyorum. Ancak cURL kullaniyorum ve curl_exec dedigim zaman echo demis gibi yaziyor. Ben bunu bir degiskene atayip yukardaki islemleri yapmaya calsiyordum. Acaba Burada mi bir hata var?
Yardimlariniz icin tesekkurler



< Bu ileti tablet sürüm kullanılarak atıldı >

N
13 yıl
Yüzbaşı
Konu Sahibi

quote:

Orijinalden alıntı: seyfi84

kodun bir kısmını yollayıp sorununun çözülmesini umuyorsun. bilgisayarlar leb demeden leblebi anlamaz, ben de aynı mantıkta koda bakıyorum.
curl tarafında $url değişkeninde ne var görünmüyor, sonra yukarıda $ref=$ref; diye bir satır var, o da anlamsız nedir yani o... haliyle curl kısmı hakkında yorum bekleme benden (ya da eksiksiz tüm kodu gönder bakayım). şayet curl_exec() dediğinde $sonuc içine istediğin sayfa html olarak geliyorsa, tamam orda bir sorun yok.
zaten preg_replace diye başlık atmışsın

ne dediğimi anlamıyorsan anlamadığın yeri söyle, bilmiyorsan şunu şunu bilmiyorum de, böyle körler sağırlar birbirini ağırlar gibi devam etmeyelim benim zamanım kıymetli...

curl.php
<?php 

$curl=curl_init();
curl_setopt($curl,RETURN_TREANSFER,1);
curl_setopt($curl,CURLOPT_URL,"veri.php");
$sonuc=curl_exec($curl);
curl_close($curl);
preg_match_all("/<div>(.*?)<\/div>/",$sonuc,$yeni);
print_r($yeni);
?>


veri.php
 

<body>
<div>
test
</div>
123
</body>

preg_match_all("/<div>(.*?)<\/div>/",$sonuc,$yeni); bunu kullandığım takdirde dahi veri.phpyi ekrana veriyor ve herhangi bir şey bulamıyor preg match.
aldığım sonuç ise
Array ( [0] => Array ( ) [1] => Array ( ) ) 


sorunumu anlatabilmişimdir umarım



C
13 yıl
Er

Seyfi84 çok haklı. Bnece siz biraz daha PHP konusunda kendinizi geliştirmelisiniz. Ayrıca anladığım kadarıyla, istediğinizi şeyi explode ve array ile yapabilirsiniz...


Bu mesaja 1 cevap geldi.
L
13 yıl
Çavuş

curl_setopt($curl,RETURN_TREANSFER,1);

CURLOPT_RETURNTRANSFER olmasın o :D


Bu mesaja 1 cevap geldi.
O
13 yıl
Yarbay

Satırlar arasındaki boşluğu silmek istiyorsan aşağıdakini kullanabilirsin:
str_replace("\n", "", $sonuc);



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.