FonfonBlog, CMS Blog - version 1.0 Alpha

Eléphant du PHP | 397 Messages

20 août 2010, 10:05

Mais pourquoi ne pas utiliser PDO ou d'autres classes d'abstraction de bases de données?
Les drivers PDO ne sont pas forcement installés sur un serveur (en l'occurence, c'est installé sur celui qui m'héberge), donc si je passe par PDO et que ce n'est pas installé, ça ne fonctionnera pas.
J'ai vu que PEAR avait un package pour le faire aussi. Mais l'idée d'essayer de programmer quelque chose que je en sais pas faire me plait, j'aime beaucoup apprendre et là, j'ai le choix de programmer quelque chose de costaud donc j'ai énormement envie d'essayer de le faire : une sorte de challenge quoi :).
----------------------------------------------------------------------------------
www.april.org - Promouvoir et défendre le logiciel libre

Eléphant du PHP | 397 Messages

20 août 2010, 16:49

J ai résolu mon problème avec le mysqli_real_escape_string :D . C etait effectivement bien que sur une requete SQL : celle de vérification des login et mot de passe lors de la connexion. Je faisais appel à ma méthode contenant le mysqli_real_escape_string avant toute connexion, donc le premier parametre ne passait pas.

Je fournis ce soir une version Beta 0.9.1

Pour faire une mise à jour sans problème, il vous suffit de sauvegarder le dossier app/inc/config (contenant les parametres de config), ainsi que le css.ini si vous avez appliqué d'autres styles CSS que vous auriez créé. Le reste doit être écrasé (voir tout éffacé puis les nouveaux ficheirs remis) car j ai éffacé pas mal de trucs en optimisant l'application.

J'aimerai que soit test un point particulier : l'upload d'un zip contenant les CSS. Car je fais une vérification du type MIME des fichiers avec le package MIME-Type de PEAR, en local ça fonctionne nickel, mais sur mon serveur, ça plante royalement et je ne captes pas trop pourquoi.

Merci d'avance :)

EDIT :
Voila le lien pour la version 0.9.1 : https://sourceforge.net/projects/fonfonblog/
----------------------------------------------------------------------------------
www.april.org - Promouvoir et défendre le logiciel libre

ViPHP
ViPHP | 5462 Messages

21 août 2010, 00:32

cool, :D
par contre faut changé les droit d'accès de tes fichiers, la tu dois être en 700, ducoup je le télécharge mon user prend les droits mais le serveur peux pas le lire, passe au moins en 755

EDIT 1 : toujours pas de gestion du sous dossier ? c'est embêtant de devoir créer un virtual directory juste pour ca
EDIT 2 : t'as pas changé le $_SERVER['DOCUMENT_ROOT'] dans les require de verifinstall.php
EDIT 3 : si on choisie mysqli ca ne marche pas
$this->hostDB		= $_POST['hostDB'];
$this->nomDB 		= $_POST['nomDB'];
$this->loginDB 		= $_POST['loginDB'];
$this->passDB		= $_POST['passwordDB'];
						
$mysqli = new mysqli($this->psHost, $this->psUserName, $this->psMdp, $this->psDB);
les psTruc n'existe pas, tu les définie juste au dessus en plus :wink:
c'est plutôt
$mysqli = new mysqli($this->hostDB, $this->loginDB, $this->passDB, $this->nomDB);
EDIT 4 : pareil si le fichier .ini ne peu pas etre ecrit il dis que l'install est OK quand même
EDIT 5 : en ajoutant les droit d'écriture au fichier .ini et en relancant l'install (donc la base etait la) j'ai eu
<div class="msg_err"><strong>Resultat de requete vide !!</strong><br/></div>
Warning: Invalid argument supplied for foreach() in /Library/WebServer/Documents/fonfonblog/app/classes/rTypeTable.class.php on line 87

Call Stack:
    0.0001     645536   1. {main}() /Library/WebServer/Documents/fonfonblog/app/index.php:0
    0.0394    1207912   2. include('/Library/WebServer/Documents/fonfonblog/app/views/rtype.php') /Library/WebServer/Documents/fonfonblog/app/index.php:46
    0.0412    1229808   3. RType->affichTable() /Library/WebServer/Documents/fonfonblog/app/views/rtype.php:40

<div class="msg_err"><strong>Resultat de requete vide !!</strong><br/></div>
Warning: Invalid argument supplied for foreach() in /Library/WebServer/Documents/fonfonblog/app/classes/rTypeTable.class.php on line 87

Call Stack:
    0.0001     645536   1. {main}() /Library/WebServer/Documents/fonfonblog/app/index.php:0
    0.0394    1207912   2. include('/Library/WebServer/Documents/fonfonblog/app/views/rtype.php') /Library/WebServer/Documents/fonfonblog/app/index.php:46
    0.6592    1244824   3. RType->affichTable() /Library/WebServer/Documents/fonfonblog/app/views/rtype.php:52

<div class="msg_err"><strong>Resultat de requete vide !!</strong><br/></div>
Warning: Invalid argument supplied for foreach() in /Library/WebServer/Documents/fonfonblog/app/classes/rTypeTable.class.php on line 87

Call Stack:
    0.0001     645536   1. {main}() /Library/WebServer/Documents/fonfonblog/app/index.php:0
    0.0394    1207912   2. include('/Library/WebServer/Documents/fonfonblog/app/views/rtype.php') /Library/WebServer/Documents/fonfonblog/app/index.php:46
    0.6606    1241912   3. RType->affichTable() /Library/WebServer/Documents/fonfonblog/app/views/rtype.php:58
EDIT 6 : l'install est finie aucune erreur, par contre aucun fichier ini n'a été remplis
EDIT 7 : je veux ecrire mon premier article et j'ai une erreur comme quoi il peu pas ecrir le fichier de log (faut vraiment que tu règles les droit sur ton projet :wink: )
EDIT 8 : probleme de path au niveau de ton editeur wysiwyg (j'arrive pas trop a voir ou c'est visiblement de va le chercher 2 fois)
EDIT 9 : arf du coup impossible d'écrire un article puisque l'éditeur n'est pas la
EDIT 10 : y'a quand meme pas trop de logique au niveau de tes paths, des fois les adresse sont séparées par des tirets et des fois des slashes, pour débugé c'est galère aussi, je suis obligé d'allé voir dans le fichier .htaccess le numéro du fichier et ensuite allé dans le fichier index.php voir a quoi correspond le numero
EDIT 11 : y'a aussi un probleme d'encodage dans tes fichiers, je te conseil de tout passé en utf-8, et en plus de viré les &eacute et compagnie
EDIT 12 : j'ai reussi a remettre l'éditeur, ta mis le path en dur dans le CSS, d'ailleurs tu les redéfinie beaucoup trop de fois
EDIT 13 : j'ai enfin pu écrire un article, par contre (je mis attendais vu le code) ta mis les entité dans la basé et ca c'est pas bien, si j'écris "héhé coucou" dans ma base je veux "héhé coucou" et pas "h&eacuteh&eacute coucou", ca c'est au moment de l'affichage qu'il faut le faire (en plus ta fais ca en javascript en php ca aurai été plus simple)
EDIT 14 : si on met pas de tag dans un article on a une erreur
EDIT 15 : en me baladant, je suis allé dans statistique et j'ai vu 'Date d'inscription : 01/01/1970'
EDIT 16 : euh on peu pas éditer les article ? :shock:
EDIT 17 : je peux voter autant de fois que je veux, (on peu pas cliquer 2 fois sur + ou -, par contre je peu cliquer sur + et -) si je fais rafraichir, je peux recliquer (mais bon c'est pas simple a géré ces choses la)
EDIT 18 : toujours pas de convention de code ?
EDIT 19 : faudra m'expliquer un jour le coup des 'json_encode' pour protégé tes champs mysql :wink:
EDIT 20 : les redirection 404 marche pas (chez moi) j'ai du mettre l'adresse en absolue
EDIT 21 : j'ai eu l'EDIT 20 en cliquant sur le lien RSS : http://localhost/fonfonblog/rss-article-1.html et ca n'existe pas, d'ailleur pourquoi t'as mis des input ave des onclick dessus au lieu de mettre des lien ?
EDIT 22 : dans ton .htaccess

Code : Tout sélectionner

RewriteRule ^article/([0-9]+)/([0-9]+)/([0-9]+)/([0-9]+)_([A-Za-z0-9_-]+).html app/index.php?page=4&id_article=$4&url_article=$5 [L]
ca sert a rien de faire des groupe (pour les dates) si tu t'en sert pas :wink:
EDIT 23 : pour les autres liens c'est pareil
EDIT 24 : comme je disais dans l'autre comm, c'est pas un rss mais un atom que ta fais, enfin ta mélangé les 2 normes, ca risque de pas passé dans certain agrégateur)
EDIT 25 : en effet au niveau de l'agrégateur ca passe pas (celui de firefox)
EDIT 26 : travail bien en E_ALL | E_STRICT y'a quelque surprise dans certaines pages
EDIT 27 : le calendrier n'est pas fonctionnel
EDIT 28 : en allant dans les log j'ai vu 21/08/2010 01:47Ajout dans table ffb_tags alors que j'ai pas mis de tags
EDIT 29 : dans sites amis le tableau depasse un peu, et quand on appuie sur activer on peu plus le déactivé
EDIT 30 : le jQuery Menu by Apycom on peux s'en passer :wink:
EDIT 31 : y'a encore des mélange pour les try..catch par exemple :
connexionDB.php
public function connexion(){
		try{
			$this->DB->connexion($this->psHost, $this->psDB, $this->psUserName,$this->psMdp);
		}catch(MyException $e){
			echo $e->getError();
		}//fin try/catch*/
	}
dbmysqli.php
public function connexion($host, $db, $loginDB, $passDB){
		try{
			$this->m_nConnect = mysqli_connect($host, $loginDB, $passDB, $db);
			//$this->m_nConnect = new mysqli($this->psHost, $this->psUserName, $this->psMdp, $this->psDB);
			if(!$this->m_nConnect){
				throw new MyException ('<div class="msg_err">Probleme de connexion '.$this->psConnect.'<br />Resultat connexion :  '.$this->m_nConnect.'</div>');
				$date = date("Ymd",time());
				$logDestination = LOGS . 'log_' . $date . '.txt';
				$message = date("d/m/Y H:i", time()) . ' Probleme connexion BD MySQLi' . chr(10);
				error_log($message,3,$logDestination);

			}//fin if

		}catch(MyException $e){
			echo $e->getError();
		}
	}
dans le premier fichier tu fais un try mais elle est deja attrapé par celui de mysqli, il faut enlevé le bloque try...catch de mysqli

EDIT 32 : au niveau de la gestion de tes connexions regarde du coté de factory
EDIT 33 : j'ai cliqué sur déconnexion (faut bien que je dorme quand même) et pareil erreur de path, tu definie INC mais tu l'utilise pas, (je comprend toujours pas pourquoi tu redefinie tout ca dans tes fichiers...), il etait pas bon t'as mis define("INC", $_SERVER['DOCUMENT_ROOT'] . $dir); au lieu de define("INC", $_SERVER['DOCUMENT_ROOT'] . '/' . $dir);
EDIT 34 : un peu bizarre la facon dont t'as remodifié le verifLoginBD, pourquoi avoir rajouté 1 champs et faire un test dessus, le but était de faire un test sur la requête et non pas le résultat
EDIT 35 : faire isset et empty a la suite ca sert a rien, empty fais déjà office de isset
EDIT 36 : c'est pas trop grave mais dans ton errorUpload tu mets case 1: // UPLOAD_ERR_INI_SIZE autant mettre case UPLOAD_ERR_INI_SIZE:, y'a d'ailleurs d'autres erreurs a prendre en compte
EDIT 37 : dans ta classe MyException dans getError tu met <div class="msg_err"> alors que tu le met deja quand tu fais un appelle, d'ailleurs tu le fais a chaque appelles, autant faire :
 public function __construct($msg) {
        $message = '<div class="msg_err"><strong>' . $msg . '</strong></div>';
        parent :: __construct($message);
    }
EDIT 38 : pour bosser en E_STRICT ce que je te recommande vivement, t'as une erreur au niveau du package MIME_Type il suffis de changé (Type.php)
$_fileCmd = &PEAR::getStaticProperty('MIME_Type', 'fileCmd');
//en
$_fileCmd = PEAR5::getStaticProperty('MIME_Type', 'fileCmd');
d'ailleurs pourquoi il se charge alors qu'on en a pas besoin ? tu peu utilise fileinfo sinon (de toute façon le MIME c'est bidon)

ViPHP
AB
ViPHP | 5818 Messages

21 août 2010, 04:33

EDIT 35 : faire isset et empty a la suite ca sert a rien, empty fais déjà office de isset
Tu veux sans doute dire "faire isset et !empty a la suite ca sert a rien, !empty fais déjà office de isset :wink:
tu peu utilise fileinfo
C'est peut-être un peu tôt pour utiliser file_info, d'une part ce n'est implémenté qu'à partir de php 5.3, et d'autre part sur ma version wampserver 2.0 pourtant en php 5.3 je ne suis pas arrivé à le faire fonctionner :-k

ViPHP
ViPHP | 5462 Messages

21 août 2010, 04:57

EDIT 35 : faire isset et empty a la suite ca sert a rien, empty fais déjà office de isset
Tu veux sans doute dire "faire isset et !empty a la suite ca sert a rien, !empty fais déjà office de isset :wink:
oui :wink:
tu peu utilise fileinfo
C'est peut-être un peu tôt pour utiliser file_info, d'une part ce n'est implémenté qu'à partir de php 5.3, et d'autre part sur ma version wampserver 2.0 pourtant en php 5.3 je ne suis pas arrivé à le faire fonctionner :-k
depuis un moment elle est dans le package de php (reelement inclus par défaut dans php 5.3)
sous windows c'est un peu particulier il faut récupérer le magic.mime (ou l'inverse mime.magic je sais pu), qui se trouve que dans les ancienne source de php, en plus il le cherche dans un chemin unix (ca a peu être changé depuis quelque version), de toute facon pour les fichiers texte c'est pas important le mime (voir pour les autres aussi..., on peu trompé le MIME avec n'importe quel contenu) mais ca l'avantage d'être plus poussé que de faire la vérifie uniquement sur l'extension (comme le font toutes les autres lib)

ViPHP
ViPHP | 5462 Messages

21 août 2010, 05:54

tien pour ton openid un petit script vite fais (attention y'a pas de gestion d'erreur ni rien c'est vraiment la base)
define('OPENID', 'tonopenid');

switch(@$_GET['action'])
{
    case 'auth':
        $get = $_GET;
        $get['openid.mode'] = 'check_authentication';
        
        $keys = array_keys($get);
        foreach($keys as &$key)
        {
            $key = str_replace('openid_', 'openid.', $key);
        }
        
        $query = array_combine($keys, $get);
        $openid_url = $get['openid_op_endpoint'] . '?' . http_build_query($query);
        
        print_r($get);
        echo file_get_contents($openid_url);
        
        break;
    default:    
        $doc = new DOMDocument();
        $doc->loadHTMLFile(OPENID);
                
        $xpath = new DOMXPath($doc);
        $query = $xpath->query('//link[@rel="openid.server"]/@href'); 
                
        $openid_server = $query->item(0)->nodeValue;
                    
        $http_query = http_build_query(array(
                    'openid.mode' => 'checkid_setup',
                    'openid.identity' => OPENID,
                    'openid.return_to' => 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['SCRIPT_NAME'] . '?action=auth',
                    'openid.ns.sreg' => 'http://openid.net/extensions/sreg/1.1',
                    'openid.sreg.required' => 'nickname,email,fullname',
                    'openid.sreg.optional' => 'country',
        ));        
        
        $openid_url = $openid_server . '?' . $http_query;
        
        echo "<a href=\"$openid_url\">Connexion</a><br />";
        break;
}

ViPHP
AB
ViPHP | 5818 Messages

21 août 2010, 12:09

... de toute facon pour les fichiers texte c'est pas important le mime (voir pour les autres aussi..., on peu trompé le MIME avec n'importe quel contenu) mais ca l'avantage d'être plus poussé que de faire la vérifie uniquement sur l'extension (comme le font toutes les autres lib)
Ben y'a une logique à ce que les autres lib ne vérifient que l'extension. Parce qu'entre utiliser une fonction obsolète comme mime_content_type qu'on peut tromper avec n'importe quel contenu et fileinfo qui ne fonctionne par défaut qu'à partir de php5.3, tant qu'à faire autant pas se prendre le choux et ne vérifier que l'extension :wink:

Eléphant du PHP | 397 Messages

21 août 2010, 12:18

Je vais commencer à répondre à quelques points :)

1 - Heu non pas encore ^^
2 / 3 - Je suis passé en vitesse sur l'install cette semaine mais merci de le signaler
4 - Pour les droits, je codes à mon taff quand j ai un peu de temps (oui c est po bien ^^) et je suis sur un PC windows. Sur mon pc perso (sous linux) je vois qu'ils sont en 644. Plutot les passer en 755 ?
7 - J ai bcp bougé hier le systeme de log vu que j ai refais la couche Model, donc oui, à regarder de plus prêt
8 - Bizarre concernant l'editeur, c est a premiere fois que je tombes sur ce probleme.
11 - J ai passé la plpuart des fichier en utf-8 en le mettant comme encodage par defaut sous Eclipse
13 - J ai opté pour le stockage en HTML des données dans les tables, c est une préférence que j'ai, puis quand je veux l'afficher, pas pas de htmlentities() ou autre fonction de ce genre à appliquer.
14 -
15 - Un soucis mineur laissé en attente :)
16 - Si si bien sur !! Dans l'administration, Articles->Liste des articles : clique sur la petite fleche bas sur la ligne
17 - On ne peut voter qu'une fois car un de mes pote à eu la bonne idée de cliquer 100 fois sur le + et 99 fois sur le - x)
19 - ça remonte aux premiers essais de develppement du model. En même temps pdt mon taf je découvrais le JSON, donc j ai essayé d'appliquer et vu que ça fonctionnait, j ai laissé.
20 - Pas eu le temps de regler le soucis
21 - Les RRS des articles ne sont pas encore développé
22 -
24 - Modifier la ligne $xml .= '<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">'; en $xml .= '<rss version="2.0">'; donc ?
26 - error_reporting(E_ALL);// & ~(E_DEPRECATED|E_NOTICE)); : tout depend si je suis en local ou sur le serveur, des fois j'oublie de remetre le bon truc (je suis un peu étourdi...j'oublie plein de trucs à faire, pas de panique ^^)
27 - Le calendrier fais juste "calendrier". Je voudrai bien le modifier pour surligner les jour ou des articles ont été écris
30 - J ai téléchargé la version Free du Menu, et la condition pour l'utiliser gratuitement est de laisser le lien. Je respectais juste leur demande :)
31 - Oui, entierement daccord, j ai tout simplement pas bien fini de mettre en ordre ma nouvelle gestion BdD

33 - Je le redefinie dans certaines pages notamment pour utiliser la redirection automatique, donc je ne fais aucun code HTML dessus.
36 - Un peu sur cet exemple -> http://fr2.php.net/manual/fr/features.f ... .php#90522 ?
38 - Au debut je voulais utiliser fileinfo mais ça ne voulait pas marcher (dailleur le package file_info est toujours présent)


Pour le MIME, je ne fais pas confiance à la verification sur l'extension tout simplement :).

Merci pour le bout de code OpenId mais comme j'avais dis dans un ancien topic, c est que je ne vois pas comment le lien est fait entre la connexion openId et l'utilsiateur enregistré dans la base.

En tout cas, merci enormement pour avoir passé du temps à relever des bugs etc...ça me fais vmt plaisir :D .

Par conter, niveau correction, je vais faire ça plus sur 2 voir 3 semaines je penses.
----------------------------------------------------------------------------------
www.april.org - Promouvoir et défendre le logiciel libre

ViPHP
AB
ViPHP | 5818 Messages

21 août 2010, 15:22

13 - J ai opté pour le stockage en HTML des données dans les tables, c est une préférence que j'ai, puis quand je veux l'afficher, pas pas de htmlentities() ou autre fonction de ce genre à appliquer.
Pas bon comme plan. D'une part tu augmente le poids de tes tables inutilement avec toutes ces conversions et puis par exemple si j'ai envie d'exporter une de tes tables au format open office ou word... les conversions ne seront pas faites et j'aurai un joli bin's comme texte :(

ViPHP
ViPHP | 5462 Messages

21 août 2010, 15:45

... de toute facon pour les fichiers texte c'est pas important le mime (voir pour les autres aussi..., on peu trompé le MIME avec n'importe quel contenu) mais ca l'avantage d'être plus poussé que de faire la vérifie uniquement sur l'extension (comme le font toutes les autres lib)
Ben y'a une logique à ce que les autres lib ne vérifient que l'extension. Parce qu'entre utiliser une fonction obsolète comme mime_content_type qu'on peut tromper avec n'importe quel contenu et fileinfo qui ne fonctionne par défaut qu'à partir de php5.3, tant qu'à faire autant pas se prendre le choux et ne vérifier que l'extension :wink:
oh que oui, d'accord a 100%, de plus que le serveur interprète suivant l'extension du fichier, donc on peux avoir un gros hack php dans un fichier css, il sera lu version texte (a moins de faire un eval dessus mais la faut vraiment le cherché le hack) :wink:

ViPHP
ViPHP | 5462 Messages

21 août 2010, 15:54

Merci pour le bout de code OpenId mais comme j'avais dis dans un ancien topic, c est que je ne vois pas comment le lien est fait entre la connexion openId et l'utilsiateur enregistré dans la base.
inscription version openid :

1 : champs : openid
2 : on valide
3 : il va se connecté au site et faire la connexion, il revoie juste true ou false (ou error)
4 : la personne est connecter, il peu recupere quelque information (pseudo, email...) ou pas donc il faut faire des champs ou sois le server openid les remplis, sois tenpis la personne dois remplir les infos
5 : dans ta base il te faut un champs openid (seul le mot de passe ne sera pas remplis)

authentification :

1 : champs : openid
2 : on valide
3 : il va se connecté au site et faire la connexion, il revoie juste true ou false (ou error)
4 : la personne est connecter tu vas chercher ses infos par rapport au champs openid dans la base (WHERE openid = 'blabla')

ViPHP
ViPHP | 5462 Messages

21 août 2010, 16:12

1 - Heu non pas encore ^^
tu peux faire ca grâce a SERVER_NAME et SCRIPT_NAME (dans $_SERVER)
4 - Pour les droits, je codes à mon taff quand j ai un peu de temps (oui c est po bien ^^) et je suis sur un PC windows. Sur mon pc perso (sous linux) je vois qu'ils sont en 644. Plutot les passer en 755 ?
voir en 777, au au moment de l'install tu fais un 700 sur les fichier .inc
7 - J ai bcp bougé hier le systeme de log vu que j ai refais la couche Model, donc oui, à regarder de plus prêt
c'est lié au 4
8 - Bizarre concernant l'editeur, c est a premiere fois que je tombes sur ce probleme.
c'est lié au 1
11 - J ai passé la plpuart des fichier en utf-8 en le mettant comme encodage par defaut sous Eclipse
arf c'est pas bien, on a eu des contrib la dessus tu peu t'en servir vos-contributions/utf8izer-pour-convert ... 44096.html
13 - J ai opté pour le stockage en HTML des données dans les tables, c est une préférence que j'ai, puis quand je veux l'afficher, pas pas de htmlentities() ou autre fonction de ce genre à appliquer.
+1 pour AB
16 - Si si bien sur !! Dans l'administration, Articles->Liste des articles : clique sur la petite fleche bas sur la ligne
j'ai rien moi :( j'ai que la croix pour suprimé[/quote]
17 - On ne peut voter qu'une fois car un de mes pote à eu la bonne idée de cliquer 100 fois sur le + et 99 fois sur le - x)
non, chez moi si je rafraichie la page je peux encore voté
19 - ça remonte aux premiers essais de develppement du model. En même temps pdt mon taf je découvrais le JSON, donc j ai essayé d'appliquer et vu que ça fonctionnait, j ai laissé.
enleve ca c'est inutile :wink:
24 - Modifier la ligne $xml .= '<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">'; en $xml .= '<rss version="2.0">'; donc ?
sois ca : http://fr.wikipedia.org/wiki/RSS_%28format%29
sois ca : http://fr.wikipedia.org/wiki/Atom
26 - error_reporting(E_ALL);// & ~(E_DEPRECATED|E_NOTICE)); : tout depend si je suis en local ou sur le serveur, des fois j'oublie de remetre le bon truc (je suis un peu étourdi...j'oublie plein de trucs à faire, pas de panique ^^)
en dev c'est E_ALL | E_STRICT, en prod version php 5.3 c'est E_ALL & ~E_DEPRECATED, version avant E_ALL & ~E_NOTICE
moi même en prod je met E_STRICT de toute façon pour moi (E_STRICT = bug)
27 - Le calendrier fais juste "calendrier". Je voudrai bien le modifier pour surligner les jour ou des articles ont été écris
je regarderai
30 - J ai téléchargé la version Free du Menu, et la condition pour l'utiliser gratuitement est de laisser le lien. Je respectais juste leur demande :)
je comprend mieux, mais c'est moche quand même :mrgreen:
oui
38 - Au debut je voulais utiliser fileinfo mais ça ne voulait pas marcher (dailleur le package file_info est toujours présent)
Pour le MIME, je ne fais pas confiance à la verification sur l'extension tout simplement :).
on a expliqué plus haut :wink:



bon courage, hésite pas a utiliser ton SVN

Eléphant du PHP | 397 Messages

22 août 2010, 20:44

Pour le 1/

Je dois donc prendre en compte les cas suivant :
- Site placé dans un dossier sur le serveur
- Site placé à la racine et/ou virtualhost

En cas de virtualhost, $_SERVER['DOCUMENT_ROOT'] fonctionne nickel (aussi bien en local que sur le serveur OVH).
Je viens de tester avec SERVER_NAME, et dans mon cas, je n'ai plus rien.
En modifiant de cette façon sur la page index, celà regle t-il le soucis ?
       //$dir est sensé retourner le nom du dossier dans lequel l'appli se trouve
	$dir = substr($_SERVER['PHP_SELF'], 1, strpos(substr($_SERVER['PHP_SELF'], 1), '/'));
	if(!preg_match('/app/', $dir)){
		//Si l adresse est http://www.site.com/nom_dossier/
		$path = $_SERVER['DOCUMENT_ROOT'] . '/' . $_SERVER['SERVER_NAME'];
		define("INC", $path);
	}else{		
		define("INC", $_SERVER['DOCUMENT_ROOT']);
	}
----------------------------------------------------------------------------------
www.april.org - Promouvoir et défendre le logiciel libre

ViPHP
ViPHP | 5462 Messages

22 août 2010, 21:15

c'est dans laquelle fichier celui la ?

Eléphant du PHP | 397 Messages

23 août 2010, 08:56

Principalement dans app/index.php :). C est à cet endroit que la variable INC est déclaré pour l'application
----------------------------------------------------------------------------------
www.april.org - Promouvoir et défendre le logiciel libre