-<?php\r
-/*\r
- * Connexion à la base de donnée + résolutiondu participant.\r
- * Produit une variable globale nommée '$le_participant'.\r
- */
-\r
-include_once("config_bd.php");
-include_once("class_participant.php");\r
+<?php # coding: utf-8
-$lien_mysql = mysql_connect($SQL_HOTE, $SQL_LOGIN, $SQL_PASS);
-mysql_select_db($NOM_BASE);\r
-mysql_set_charset("UTF8");\r
-mysql_query('SET AUTOCOMMIT=0');
+include_once("participant.php");
-if (isset($_POST['effacer_cookie'])) # le membre se délogue
+/*
+ * Connexion à la base de données et création du participant courant.
+ */
+class Connexion
{
- setcookie("COOKIE_INFO_PATICIPANT", "", time() - 100); # 'efface' le cookie membre
- unset($HTTP_COOKIE_VARS["COOKIE_INFO_PATICIPANT"]);
- unset($log);
-}
+ # Message à destination de l'utilisateur, par exemple pour lui indiquer une erreur.
+ public $message_utilisateur = NULL;
-if (isset($_POST['log'])) # le membre se logue
-{
- $le_participant = new Participant($_POST['pseudo'], $_POST['password']);
- if ($le_participant->valide)
+ public $participant;
+
+ function Connexion()
{
- setcookie ("COOKIE_INFO_PATICIPANT", $le_participant->info->id, time() + 31104000);
+ if (!file_exists("php/config_bd.php"))
+ {
+ echo "Le fichier 'php/config_bd.php' n'existe pas, création en cours...\n";
+ if (!is_writable("."))
+ {
+ echo "Le dossier 'php' n'est pas accessible en écriture, veuillez changer les droits et recommencer.";
+ exit();
+ }
+ $f = fopen("php/config_bd.php", "w");
+ fwrite($f, '<?php # encoding:utf-8
+ # Parametres de connexion à la BD
+ $SQL_HOTE = "localhost";
+ $SQL_LOGIN = "";
+ $SQL_PASS = "";
+ $NOM_BASE = "corcelles_lan_7";?>'
+ );
+ fclose($f);
+ echo "Le fichier a été créé, veuillez le compléter et recommencer.";
+ exit();
+ }
+
+ include_once("config_bd.php");
+
+ $conn_bd = pg_connect(sprintf("host=%s dbname=%s user=%s password=%s", $SQL_HOTE, $NOM_BASE, $SQL_LOGIN, $SQL_PASS));
+ if (!$conn_bd)
+ {
+ echo "Connexion à la base de données impossible. Voir le fichier 'php/config_bd.php'";
+ exit();
+ }
+
+ //mysql_set_charset("UTF8");
+ //mysql_query('SET AUTOCOMMIT=0');
+
+ if (isset($_POST['effacer_cookie'])) # le membre se délogue
+ {
+ setcookie("COOKIE_INFO_PARTICIPANT", "", time() - 100); # 'efface' le cookie membre
+ unset($_COOKIE["COOKIE_INFO_PARTICIPANT"]);
+ }
+
+ if (isset($_POST['log'])) # le membre se logue
+ {
+ $this->participant = new Participant($_POST['pseudo'], $_POST['password']);
+ if ($this->participant->valide)
+ {
+ setcookie("COOKIE_INFO_PARTICIPANT", $this->participant->info->id, time() + 31104000);
+ $this->message_utilisateur = "Loggation ok";
+ }
+ else
+ $this->message_utilisateur = "Erreur de loggation";
+ }
+ else if (isset($_COOKIE["COOKIE_INFO_PARTICIPANT"])) # le cookie existe deja chez le participant
+ {
+ $this->participant = new Participant($_COOKIE["COOKIE_INFO_PARTICIPANT"]);
+ }
+ else
+ {
+ $this->participant = new Participant();
+ }
}
}
-else if (isset($HTTP_COOKIE_VARS["COOKIE_INFO_PATICIPANT"])) # le cookie existe deja chez le participant\r
-{
- $le_participant = new Participant($HTTP_COOKIE_VARS["COOKIE_INFO_PATICIPANT"]);\r
-}
-else\r
-{
- $le_participant = new Participant();\r
-}
?>
\ No newline at end of file