classe de connection

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 : classe de connection

par x@v » 14 févr. 2008, 00:28

Ce que je ne comprend pas, est que je fais d'autre include sur des fichiers, mais pour php une classe interne comme PDO c'est peut-être particulier ?
mes directives dans mon php.ini
jallow_url_fopen On On
allow_url_include On On
après une recharge sa ne fonctionne pas ?
sudo /etc/init.d/apache2 restart

par DocType » 13 févr. 2008, 23:41

Bonsoir,

Grande réponse en decryptant le message d'erreur et en fouillant dans la documentation PHP...

Code : Tout sélectionner

Warning: include() [function.include]: URL file-access is disabled in the server configuration in /var/www/agenda_d_or/lecture.php on line 2
ca veut plus ou moins dire que laccès par url est desactivé.

Code : Tout sélectionner

Warning: include(http://localhost/agenda_d_or/connectionCLass.php) [function.include]: failed to open stream: no suitable wrapper could be found in /var/www/agenda_d_or/lecture.php on line 2
impossible d'ouvrir le flux

Code : Tout sélectionner

Warning: include() [function.include]: Failed opening 'http://localhost/agenda_d_or/connectionCLass.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/agenda_d_or/lecture.php on line 2
impossible d'ouvrir le fichier

Code : Tout sélectionner

Fatal error: Class 'ConnectionClass' not found in /var/www/agenda_d_or/lecture.php on line 3
Le fichier n'étant pas inclut, la class non plus...
L'appeller te provoque donc une erreur fatale

Extrait Documentation
Si les Gestionnaires d'URL sont activés dans PHP (ce qui est le cas par défaut), vous pouvez localiser le fichier avec une URL (via HTTP ou bien avec un gestionnaire adapté : voir Liste des protocoles supportés pour une liste des protocoles), au lieu d'un simple chemin local. Si le serveur distant interprète le fichier comme du code PHP, des variables peuvent être transmises au serveur distant via l'URL et la méthode GET. Ce n'est pas, à strictement parler, la même chose que d'hériter du contexte de variable. Le fichier inclus est en fait un script exécuté à distance, et son résultat est inclus dans le code courant.
Donc voir http://fr2.php.net/manual/fr/ref.filesy ... -url-fopen

classe de connection

par x@v » 13 févr. 2008, 23:23

Bonjour,
je voudrai faire une classe de connection à une db, mais paut être que sa existe déjà, aussi je pense que je pourrai l'amélioré en attendant j'ai des méchants warning ?

Code : Tout sélectionner

Warning: include() [function.include]: URL file-access is disabled in the server configuration in /var/www/agenda_d_or/lecture.php on line 2 Warning: include(http://localhost/agenda_d_or/connectionCLass.php) [function.include]: failed to open stream: no suitable wrapper could be found in /var/www/agenda_d_or/lecture.php on line 2 Warning: include() [function.include]: Failed opening 'http://localhost/agenda_d_or/connectionCLass.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/agenda_d_or/lecture.php on line 2 Fatal error: Class 'ConnectionClass' not found in /var/www/agenda_d_or/lecture.php on line 3
<?php
public class ConnectionClass 
{
	private $serveur='localhost';
	private $noms='root';
	private $passe='xav';
	private $base='agendaor';
	private $con;
	private $resultats;

	public __construct($con, $user, $pass) 
	{
		try {
		this->$con = new PDO('mysql:host=localhost;dbname=agendaor', this->$user, this->$pass, array(PDO::ATTR_PERSISTENT => true));
		}
		catch (PDOException $e) 
		{
		print 'Erreur ! : '.$e->getMessage().'<br/>';
		echo 'N° : '.$e->getCode();
		die();
		}
		return $con;
	}
	public req_select($req) 
	{
		try {	
		$resultats=$pdo->query($req);
		// on dit qu'on veut que le résultat soit récupérable sous forme d'objet
		$resultats->setFetchMode(PDO::FETCH_OBJ);
		//$affiche=$resultats->fetch() // on récupère la liste des membres
		}
		catch (PDOException $e) 
		{
		print 'Erreur ! : '.$e->getMessage().'<br/>';
		echo 'N° : '.$e->getCode();
		die();
		}
		return $resultats;
	}
	public req_ecriture($req) 
	{
		try {	
		$resultats=$pdo->exec($req);
		}
		catch (PDOException $e) 
		{
		print 'Erreur ! : '.$e->getMessage().'<br/>';
		echo 'N° : '.$e->getCode();
		die();
		}
		return $resultats;
	}
}
?>
C'est ma première classe en php
(ne pas tapez)
Merci :)
edit
je met le fichier qui crée l'objet...
<?php
include('http://localhost/agenda_d_or/connectionCLass.php');
$con=new ConnectionClass();
req_select('select * FROM agendaor');
while( $ligne = $resultats->fetch()) { // on récupère la liste des membres
echo 'Utilisateur : '.$ligne->mailH.'<br />';
echo 'Utilisateur : '.$ligne->mailF.'<br />';
echo 'Utilisateur : '.$ligne->idPersonne.'<br />';
}
?>