authentification en php orienté objet

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : authentification en php orienté objet

par ouckileou » 18 mars 2006, 14:15

Ben si tous les fichiers sont dans le même répertoire effectivement il ne devrait pas y avoir de problème

Vérifie si tu n'as pas fait une faute dans le nom par exemple, regarde bien... c'est souvent bête ce genre d'erreur

par sasg » 18 mars 2006, 09:03

J'aimerais savoir qu'est-ce qui ne va pas dans le code.
est-ce que mes fichiers sont au bon endroit?

par sasg » 17 mars 2006, 19:28

tous les fichiers .class sont ds le meme dossier que le fichier.php qui fait appel a eux dc je ne comprend pas bien. d'ou viendrai l'erreur.

par Ryle » 17 mars 2006, 18:02

failed to open stream: No such file or directory in f:\www\easyphp1-8\www\...\auth-OO.php on line 2
Fichier : auth-OO.php
Ligne : line 2
Erreur : failed to open stream: No such file or directory

Et si l'on regarde à la ligne 2 du fichier en question :
require_once("passwordprompter.class");

Conclusion : le fichier passwordprompter.class n'existe pas ou ne se trouve pas dans ce dossier. Peut être une erreur dans le chemin ? :) (je ne sais jamais si les inclusions relatives se font toutes à partir du premier fichier qui appel les autres ou à partir de chaque fichier indépendament de celui qui l'appel.. en plus je crois que ca a changé selon la version de php)

par sasg » 17 mars 2006, 17:33

Merci maintenant que j'ai installe tt ca, je vois mes erreurs :?
Warning: require_once(passwordprompter.class) [function.require-once]: failed to open stream: No such file or directory in F:\www\wamp\www\...\auth-OO.php on line 2

Fatal error: require_once() [function.require]: Failed opening required 'passwordprompter.class' (include_path='.;C:\php5\pear') in F:\www\wamp\www\...\auth-OO.php on line 2

PS: on sait installer php5 a eazyphp je viens d'essayer
http://www.easyphp.org/faq.php3#53
J'ai le meme message d'erreur:
Warning: require_once(passwordprompter.class) [function.require-once]: failed to open stream: No such file or directory in f:\www\easyphp1-8\www\...\auth-OO.php on line 2

Fatal error: require_once() [function.require]: Failed opening required 'passwordprompter.class' (include_path='.;F:/www/EasyPHP1-8\php\pear\') in f:\www\easyphp1-8\www\...\auth-OO.php on line 2
:)

par ouckileou » 17 mars 2006, 17:04

oui j'ai rien change a easyphp donc je vais le faire de ce pas
A priori cela implique d'installer toi-même PHP 5, car easyPHP ne le permet pas encore

l'utilitaire WAMP, équivalent à easyPHP, installe les 2 et permet de switcher de l'un à l'autre
=> www.wampserver.com ;)

par sasg » 17 mars 2006, 17:02

oui j'ai rien change a easyphp donc je vais le faire de ce pas

merci! :D

par ouckileou » 17 mars 2006, 16:59

try/catch c'est en PHP5, apparament tu utilises easyPHP, si tu n'as rien changé c'est du PHP4 non ?

authentification en php orienté objet

par sasg » 17 mars 2006, 16:54

Bonjour,
j'ai une erreur :
Parse error: parse error in f:\www\easyphp1-8\www....\auth-oo.php on line 11
<?php
require_once("passwordprompter.class");
require_once("database.class");
require_once("account.class");
require_once("webpage.class");

//Regarde si l'utilisateur a ete invite a entrer son nom
if (isset($_SERVER['PHP_AUTH_USER']))
{
	try
	{
		$prompter = new passwordprompter("Partie secrète");
		$prompter->displayprompt();
	}
	catch(Exception $e)
	{
		echo $e->getmessage();
		exit();
	}
}
.....
et voila l'autre fichier :
<?php
class passwordprompter
{
	private $realm;

	function __construct($realm)
	{
		if (is_string($realm))
		{
			$this->realm = $realm;
		}
		else
		{
			throw new Exception ("Cet argument doit etre un chaine");
		}
	}

function displayprompt()
{
	header("WWW-Authenticate : Basic realm=\"$this->realm\"");
	header("HTTP/1.1 401 Unauthaurized");
	exit("Cette page nécessite une authentification!");
}
}
?>
il me semble de ne pas avoir oublie un point virgule ou une parenthese
:?: HELP ME , PLEASE!