Discussion:
Fatal error: Class 'HttpRequest' not found
(trop ancien pour répondre)
Francisco
2012-08-07 16:15:47 UTC
Permalink
Bonjour,

Je veux utiliser l'extension php_http.dll mais je n'y arrive pas.
D'abord en utilisant easyPHP12, puis en utlisant les installs separées
de PHP, Apache.

J'obtiens toujours la meme erreur:

Fatal error: Class 'HttpRequest' not found in
C:\Apache2\htdocs\testPHP\authenticate2.php on line 26

C'est comme ci l'extension php_http ne fonctionne pas sur ma conf.

Lorsque j'utilise le code suivant j'obtiens toujours des erreurs :

<?php
$application = '/titi/api/login';

// get input parameters
$login = $_POST['login'];
$password = $_POST['password'];
$server = $_POST['server'];
$port = $_POST['port'];

// store this in a cookie like this(for now)
$_SESSION['login'] = $login;
$_SESSION['password'] = $password;
$_SESSION['server'] = $server;
$_SESSION['port'] = $port;

$credentials = $login.':'.$password;

$options = array(
'httpauth' => base64_encode ($credentials),
'httpauthtype' => HTTP_AUTH_BASIC, // auth basic type
'protocol' => HTTP_VERSION_1_1
);
// print_r($options);
$url = 'http://'. $server. ':' . $port . $application;
//echo $url;
$request = new HttpRequest($url,HttpRequest::METH_POST );
$request->setContentType('Content-Type: text/xml');
$request->setOptions($options);
$result = $httpRequest->send();

//print out the result
echo "<pre>"; print_r($result); echo "</pre>";
echo $resp;

?>

Ma conf :

---------------APACHE-------------------------------------
J'ai installé Apache 2.2.22 depuis http://www.apachelounge.com/ pour
obtenir des binaires pour windows.
j'ai utilisé
http://www.apachelounge.com/download/win32/binaries/httpd-2.2.22-win32-VC9.zip

J'ai installé les binaires de windows necessaires, referencés par
apache : http://www.microsoft.com/download/en/details.aspx?id=5582

--------------PHP-----------------------------------------
J'ai installé php depuis : http://windows.php.net/download/
J'ai pris la version suivante :
http://windows.php.net/downloads/releases/php-5.3.15-Win32-VC9-x86.msi

L'extension php_http.dll a été recupérée sur
http://downloads.php.net/pierre/
J'ai pris la version suivante :
http://downloads.php.net/pierre/php_http-5.3-svn20091125-vc9-x86.zip
Je l'ai mise dans le respertoire [PHP_INSTALL]\ext
----------conf APache et
PHP-------------------------------------------------
J'ai modifié le fichier httpd.conf pour Apache en ajoutant :


PHPIniDir "C:\Program Files (x86)\PHP\"
LoadModule php5_module "C:\Program Files (x86)\PHP\php5apache2_2.dll"
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>


J'ai donc bien fait attention de respecter les binaires (VC9, x86,
win32) de windows, les versions.

Ca a l'air de marcher car j'ai testé : php-m
et j'obtiens :

[PHP Modules]
bcmath
bz2
calendar
Core
ctype
curl
date
dom
ereg
exif
filter
ftp
gd
gettext
gmp
hash
http
iconv
imap
json
libxml
mbstring
mcrypt
mhash
mysql
mysqli
mysqlnd
odbc
openssl
pcre
PDO
pdo_mysql
PDO_ODBC
pdo_sqlite
pgsql
Phar
Reflection
session
SimpleXML
soap
sockets
SPL
sqlite3
standard
tidy
tokenizer
wddx
xml
xmlreader
xmlrpc
xmlwriter
zip
zlib

Je suis a court d'idées, je debute ici en PHP. Quelqu'un a t'il des
suggestions pour m'aider ?
Merci!
Clément
2012-08-09 09:50:17 UTC
Permalink
Merci de voir si vous avez bien pris en compte :

http://fr2.php.net/manual/fr/http.requirements.php
et
http://fr2.php.net/manual/fr/http.install.php
Post by Francisco
Bonjour,
Je veux utiliser l'extension php_http.dll mais je n'y arrive pas.
D'abord en utilisant easyPHP12, puis en utlisant les installs separées
de PHP, Apache.
Fatal error: Class 'HttpRequest' not found in
C:\Apache2\htdocs\testPHP\authenticate2.php on line 26
C'est comme ci l'extension php_http ne fonctionne pas sur ma conf.
<?php
$application = '/titi/api/login';
// get input parameters
$login = $_POST['login'];
$password = $_POST['password'];
$server = $_POST['server'];
$port = $_POST['port'];
// store this in a cookie like this(for now)
$_SESSION['login'] = $login;
$_SESSION['password'] = $password;
$_SESSION['server'] = $server;
$_SESSION['port'] = $port;
$credentials = $login.':'.$password;
$options = array(
'httpauth' => base64_encode ($credentials),
'httpauthtype' => HTTP_AUTH_BASIC, // auth basic type
'protocol' => HTTP_VERSION_1_1
);
// print_r($options);
$url = 'http://'. $server. ':' . $port . $application;
//echo $url;
$request = new HttpRequest($url,HttpRequest::METH_POST );
$request->setContentType('Content-Type: text/xml');
$request->setOptions($options);
$result = $httpRequest->send();
//print out the result
echo "<pre>"; print_r($result); echo "</pre>";
echo $resp;
?>
---------------APACHE-------------------------------------
J'ai installé Apache 2.2.22 depuis http://www.apachelounge.com/ pour
obtenir des binaires pour windows.
j'ai utilisé
http://www.apachelounge.com/download/win32/binaries/httpd-2.2.22-win32-VC9.zip
J'ai installé les binaires de windows necessaires, referencés par apache
: http://www.microsoft.com/download/en/details.aspx?id=5582
--------------PHP-----------------------------------------
J'ai installé php depuis : http://windows.php.net/download/
http://windows.php.net/downloads/releases/php-5.3.15-Win32-VC9-x86.msi
L'extension php_http.dll a été recupérée sur
http://downloads.php.net/pierre/
http://downloads.php.net/pierre/php_http-5.3-svn20091125-vc9-x86.zip
Je l'ai mise dans le respertoire [PHP_INSTALL]\ext
----------conf APache et
PHP-------------------------------------------------
PHPIniDir "C:\Program Files (x86)\PHP\"
LoadModule php5_module "C:\Program Files (x86)\PHP\php5apache2_2.dll"
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>
J'ai donc bien fait attention de respecter les binaires (VC9, x86,
win32) de windows, les versions.
Ca a l'air de marcher car j'ai testé : php-m
[PHP Modules]
bcmath
bz2
calendar
Core
ctype
curl
date
dom
ereg
exif
filter
ftp
gd
gettext
gmp
hash
http
iconv
imap
json
libxml
mbstring
mcrypt
mhash
mysql
mysqli
mysqlnd
odbc
openssl
pcre
PDO
pdo_mysql
PDO_ODBC
pdo_sqlite
pgsql
Phar
Reflection
session
SimpleXML
soap
sockets
SPL
sqlite3
standard
tidy
tokenizer
wddx
xml
xmlreader
xmlrpc
xmlwriter
zip
zlib
Je suis a court d'idées, je debute ici en PHP. Quelqu'un a t'il des
suggestions pour m'aider ?
Merci!
Continuer la lecture sur narkive:
Loading...