İyinet'e Hoşgeldiniz!

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

Kayıt Ol!

file(implode, ...) hatası

hakimi

0
İyinet Üyesi
Katılım
1 Temmuz 2006
Mesajlar
1,356
Reaction score
0
server ayarlarından dolayı şu hatayı alıyorum şu kodlardan nasıl aşabilirim acaba.
hata :URL file-access is disabled in the server configuration
PHP:
PHP Kodu:
if(!file_exists($path)) { 
      
$data = strip_tags(implode('', file($path)));

şu şekle getirdimmi de
PHP:
if(!file_exists($path)) {

			
 $ch = curl_init($path);
  curl_setopt($ch, CURLOPT_TIMEOUT, 30); //timeout after 30 seconds
  curl_setopt($ch, CURLOPT_REFERER, "http://www.molo.com/");
  curl_setopt($ch, CURLOPT_USERAGENT, "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)");
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  $kaynak = curl_exec($ch);
  curl_close($ch);

				$data = strip_tags(implode('', $kaynak));

implode() [function.implode]: Bad arguments hatasını alıyorum.
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
implode 2. parametre dizi olmalıdır. Curl'den aldığın ise string.
buradan okuyabilirsin.
 

hakimi

0
İyinet Üyesi
Katılım
1 Temmuz 2006
Mesajlar
1,356
Reaction score
0
Burada bir fonksiyon olarak çalışıyor : aslında script sorunsuz çalışıyor ancak daha öncede dediğim gibi benim serverr ayarlarından dolayı hata veriyor. fonksiyonun tümü şu şekilde. mesela file_get_contents kullanamıyorum c_url kullanabiliyorum gibi.


PHP:
function dmoz($url) {

			

			$path = 'http://search.dmoz.org/cgi-bin/search?search=' . str_replace(array('http://', 'www.'), '', $url);

			

			if(!file_exists($path)) {

			

				$data = strip_tags(implode('', file($path)));

				

				if(strpos($data, 'No Open Directory Project results found')) {

				

					$output['dmoz'] = 'No';

					

				} else {

				

					$output['dmoz'] = 'Yes';

					

				}

				

			} else {

			

				$output['dmoz'] = 'No';

				

			}

			

			return $output['dmoz'];

			

		}
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
cURL ile al, strip_tags yaparsın sonra, implode yapmana gerek yok ki. Implode dizi elemanlarının arasına belirli bir karakter koyarak string'e birleştirir. Örnekte file() ile satır satır diziye dökülüp sonra implode ile yeniden string yapılmış. Gereksiz.
 

hakimi

0
İyinet Üyesi
Katılım
1 Temmuz 2006
Mesajlar
1,356
Reaction score
0
haklısın.
sorguyu değiştirdim:
PHP:
  if(preg_match('#<center>No <b><a href="http://dmoz.org/">Open Directory Project</a></b> results found</center>#si', $kaynak)) {
yaptım ve çalışıyor gayet güzel teşekkürler
 

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.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

Üst