http kimlik doğrulaması için kullanıcı adı ve şifrenizi geçirerek belirli bir URL'den php Download Dosya kullanarak

1 Cevap php

Ben php kodu kullanarak bir metin dosyası yüklemeniz gerekir. Dosya http kimlik doğrulaması yaşıyor. Bunun için kullanmanız gereken prosedür. Ben fsocketopen veya kıvırmak kullanın ya da bunu yapmak için başka bir yolu var mı gerekir?

Ben fsocketopen kullanıyorum ama çalışmak için görünmüyor.

$ Fp = fsockopen ("www.example.com", 80, errno $, $ errorstr);

= "GET abcdata / feed.txt HTTP/1.1 \ r \ n" $ out;

$ Out = "Kullanıcı: xyz \ r \ n".;

$out .= "Password: xyz \r\n\r\n"; fwrite($fp, $out);

while(!feof($fp)) {

echo fgets ($ fp, 1024);

}

fclose ($ fp);

İşte fgets false dönüyor.

Herhangi bir yardım!

1 Cevap

Eğer ben curl kullanmak olacağını sevmiyorum eğer kolay yolu muhtemelen (url korumalar etkinse) http://username:password@host/path/file fopen ile kullanırken, ama olacak. Test edilmiş, ancak muhtemelen gibi bir şey olmalı:

$out = fopen($localfilename, 'wb');
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FILE, $out);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_USERPWD, "username:password");
curl_exec($ch);
curl_close($ch);
fclose($out);

Şifre bir sütun (:) ayrılmış temel kimlik doğrulaması için kullanılan gerçek kullanıcı adı ve şifre ile değiştirilmesi gerekir: $ localfilename Eğer kullanıcı adı yazmak istediğiniz yerel dosyayı içermelidir.