2011-01-17 12 views
0

ich eine Live-Aktienkurse mit $data = file_get_contents("http://quote.yahoo.com/d/quotes.csv?s=$symbol&f=sl1d1t1c1ohgv&e=.csv"); anzeigen, aber ich benutze Yahoo-Host. es erlaubt nicht, dass allow_url auch die .htaccess-Datei nicht uploadet. also wie kann ich Live-Börsenkurse in meiner webste anzeigen?file_get_contents() funktioniert nicht in yahoo host

+0

Wahrscheinlich deaktiviert sie 'allow_url_fopen' in ihrer php.ini. Gut für sie (es ist wirklich unsicher). – amphetamachine

+0

- Welche Fehler bekommen Sie genau? Bitte fügen Sie einige Codebeispiele ein - sie wurden möglicherweise umgeleitet, check headers. –

+0

immer diese Fehlermeldung Warning: file_get_contents(): URL Dateizugriff wird in der Serverkonfiguration in /index.php on line 168 Warnung deaktiviert: file_get_contents (http://quote.yahoo.com/d/quotes.csv ? s = AAPL & f = sl1d1t1c1ohgv & e = .csv): Fehler beim Öffnen des Streams: Es konnte kein passender Wrapper in /index.php in Zeile 168 gefunden werden # –

Antwort

2
<?php 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, 'http://quote.yahoo.com/d/quotes.csv?s=$symbol&f=sl1d1t1c1ohgv&e=.csv'); 
curl_setopt($ch, CURLOPT_HEADER, 1); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
$data = curl_exec(); 
curl_close($ch); 
?> 

Verwenden cURL :) Viel besser!

+0

Ich habe diesen Code benutzt, aber ich erhalte diesen Fehler.HTTP/1.1 301 Redirect Date : Mo, 17 Jan 2011 11:49:28 GMT Verbindung: schliessen Server: YTS/1.17.23.1 Cache-Steuerung: no-store Inhaltstyp: text/html Inhalt-Sprache: en Ort: http://finance.yahoo .com/d/quotes.csv? s = AAPL & f = sl1d1t1c1ohgv & e = .csv Inhaltslänge: 257 "http://finance.yahoo.com/d/quotes.csv?s=AAPL&f=sl1d1t1c1ohgv&e=.csv". Wenn Sie diesen Fehler erhalten –

+0

301 bedeutet normalerweise, dass Sie auch CURLOPT FOLLOWREDIRECT iirc setzen müssen? – edorian

+0

vielen dank. es funktioniert gut –

1

Sie können cURL wie in den anderen Antworten erwähnt verwenden, aber wenn sie URL-Dateizugriff deaktiviert haben, würde ich bezweifle, dass cURL auch funktionieren würde.

Die einzige Möglichkeit, wie Sie es tun können, ist, dass Ihr PHP-Skript woanders gehostet wird, das dies ermöglicht, und verwenden Sie Javascript, um die Daten mit AJAX abzurufen.

+0

Entschuldigung ich habe nicht verstanden. bitte erkläre . –

Verwandte Themen