Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour,
en apprentissage du Zend Framework, je me retrouve devant une exception que je n'arrive pas à résoudre.
en tapant ce code :
<?php
// mettre vos constantes ici...
define("WEBAPP_DIR","D:/EasyPHP 2.0b1/www/feeds");
define("PHP_INF_DIR",WEBAPP_DIR."/PHP-INF");
define("ROOT_URL","http://localhost/feeds");
define("INCLUDE_PATH_SEPARATOR",";");
define("ZEND_FRAMEWORK_DIR","D:/ZendFramework/library");
set_include_path(
".".INCLUDE_PATH_SEPARATOR.
PHP_INF_DIR.INCLUDE_PATH_SEPARATOR.
ZEND_FRAMEWORK_DIR.INCLUDE_PATH_SEPARATOR.
get_include_path()
);
require_once 'Zend/Feed.php';
require_once 'Zend/Http/Client/Adapter/Exception.php';
// on va chercher les dernières news de Slashdot
try {
$rssSlashdot =
Zend_Feed::import('http://rss.slashdot.org/Slashdot/slashdot');
} catch (Zend_Http_Client_Adapter_Exception $ex) {
echo "TOTO:".$ex->getMessage();
} catch (Zend_Feed_Exception $e) {
// l'importation du flux a échoué
echo "Une exception a été interceptée lors de l'importation du flux :
{$e->getMessage()}\n";
exit;
}
// on initialise un tableau contenant les données du canal RSS
$canal = array(
'titre' => $rssSlashdot->title(),
'lien' => $rssSlashdot->link(),
'description' => $rssSlashdot->description(),
'elements' => array()
);
// on itère sur chaque élément du canal et on stocke les données qui nous intéressent
foreach ($rssSlashdot as $elem) {
$canal['elements'][] = array(
'titre' => $elem->title(),
'lien' => $elem->link(),
'description' => $elem->description()
);
}
?>
je me retrouve avec cette erreur :
TOTO:Unable to Connect to rss.slashdot.org:80. Error #10060: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.
Notice: Undefined variable: rssSlashdot in D:\EasyPHP 2.0b1\www\feeds\index.php on line 32
Fatal error: Call to a member function title() on a non-object in D:\EasyPHP 2.0b1\www\feeds\index.php on line 32
côté environnement, je travaille en local avec EasyPHP 2.01
Cela viendrait-il de la configuration de mon serveur Apache ?
Merci.
Hors ligne
Apparement il n'arrive pas à se connecter à l'adresse que tu indiques.
Vérifies si elle existe bien, si tu es connecté au web et que tu n'as pas de souci de proxy ou de firewall pour y accéder.
Hors ligne
Isilgawen a écrit:
Apparement il n'arrive pas à se connecter à l'adresse que tu indiques.
Vérifies si elle existe bien, si tu es connecté au web et que tu n'as pas de souci de proxy ou de firewall pour y accéder.
Merci. c'etait bien ça le problème...
Hors ligne
pour completer cette discussion,
on peut utiliser 'Zend_Feed::import' avec un Proxy comme ça:
require_once 'Zend/Http/Client.php'; $proxyConfig = array( 'adapter' => 'Zend_Http_Client_Adapter_Proxy', 'proxy_host' => $proxyHost, 'proxy_port' => $proxyPort, 'proxy_user' => $proxyUser, 'proxy_pass' => $proxyPass ); // ici, pour créer $httpClient je utilise n'import quel URL. c'est dans Zend_Feed::import ou j'utilise un vrai URL $httpClient = new Zend_Http_Client('http://www.example.com', $proxyConfig); Zend_Feed::setHttpClient($httpClient); $rssFeed = Zend_Feed::import('http://news.google.com/?output=rss');
Hors ligne