Les critiques permettent d'avoir des avis objectifs et constructifs surtout sur ton produit. C'est comme ça qu'on avance.
Après avoir regardé le code de plus près, il est dommage d'utiliser du français avec de l'anglais.
Par exemple:
/class/admin/class.candidaturemodels.php
@line 63: public function get(){
@line 71: public function voir($id)
@line 103: public function listing($par=20){
@line 160: public function formSupprimer($id)
Il faut choisir une langue. Je te conseillerais quand même l'anglais.
Pour les requêtes SQL pour te faire gagner du temps et en lisibilité, tu peux utiliser des alias.
Ex:
/class/admin/class.gensitemapxml.php
$sqlT = "
SELECT _categories_traduction.uri, _categories_traduction.id,_categories.uri_module , _categories.id, _categories_traduction.nom
FROM _categories, _categories_traduction
WHERE _categories_traduction.langue = '$lgActu'
AND _categories.id = _categories_traduction.id_cat
AND _categories.uri_module = '$name'
ORDER BY _categories.ordre ASC
LIMIT 0 , 30";
devient:
$sqlT = "
SELECT c.uri, t.id, c.uri_module , c.id, t.nom
FROM _categories AS c, _categories_traduction AS t
WHERE t.langue = '$lgActu'
AND c.id = t.id_cat
AND c.uri_module = '$name'
ORDER BY c.ordre ASC
LIMIT 0 , 30";
Attention sur ton site est vulnérable aux injections SQL, il n'y a aucun contrôle sur les données injectées.
/class/core/CRUD.php
@line 196
public function dbQI($data,$table){
$d = "INSERT INTO ".$table." (";
foreach($data as $k=>$v){
$d .= $k.',';
}
$d = substr($d,0,-1);
$d .= ") VALUES (";
foreach($data as $k=>$v){
$d .= '\''.$v.'\',';
}
$d = substr($d,0,-1);
$d .= ")";
$this->dbpdo->query($d);
$id = $this->dbpdo->lastInsertId();
return $id;
}
Pour les langues, au lieu de créer plein de répertoires et fichiers /lang/index.php utilises plutôt ceci:
1- un fichier /.htaccess avec ceci:
RewriteEngine on
RewriteRule ^t/([a-z]{2})/$ t/index.php?lang=1ドル [QSA]
2- un fichier /t/index.php avec le contenu de /t/fr/index.php modifié comme ceci:
@line 34 $isLgForce = 'fr';
à remplacer par:
@line 34 $isLgForce = $_GET['lang'];
Pour la détection automatique de la langue voici un petit coup de pouce, il faut utiliser dans l'ordre si disponible:
1. $_GET['lang']
2. $_SESSION['lang']
3. $_COOKIE['lang']
4. $_SERVER['HTTP_ACCEPT_LANGUAGE']
5. langue par défaut.
Voici une implémentation (libre de droit ;)):
$default_language = 'en';
$languages = array('fr','en','de','ru','nl');
function get_array_true_lang($array){
global $languages;
if (!array_key_exists('lang', $array)) return false;
$lang = strtolower($array['lang']);
if (in_array($lang, $languages)) return $lang;
return false;
}
function get_lang(){
global $default_language;
foreach (array($_GET, $_SESSION, $_COOKIE) as $array){
$lang = get_array_true_lang($_GET);
if ($lang) return $lang;
}
//il faut créer une fonction pour analyser $_SERVER['HTTP_ACCEPT_LANGUAGE']
return $default_language;
}
Pas oublier de sauver la valeur après avoir identifié la langue.
[^] # Re: Merci pour vos critiques
Posté par zyphos . En réponse à la dépêche doorGets CMS, très jeune CMS Open Source français. Évalué à 10.
Les critiques permettent d'avoir des avis objectifs et constructifs surtout sur ton produit. C'est comme ça qu'on avance.
Après avoir regardé le code de plus près, il est dommage d'utiliser du français avec de l'anglais.
Par exemple:
/class/admin/class.candidaturemodels.php
@line 63:
public function get(){@line 71:
public function voir($id)@line 103:
public function listing($par=20){@line 160:
public function formSupprimer($id)Il faut choisir une langue. Je te conseillerais quand même l'anglais.
Pour les requêtes SQL pour te faire gagner du temps et en lisibilité, tu peux utiliser des alias.
Ex:
/class/admin/class.gensitemapxml.php
devient:
Attention sur ton site est vulnérable aux injections SQL, il n'y a aucun contrôle sur les données injectées.
/class/core/CRUD.php
@line 196
à remplacer par:
Il y en a sûrement d'autres, je n'ai pas tout lu.
Pour les langues, au lieu de créer plein de répertoires et fichiers /lang/index.php utilises plutôt ceci:
1- un fichier /.htaccess avec ceci:
2- un fichier /t/index.php avec le contenu de /t/fr/index.php modifié comme ceci:
@line 34
$isLgForce = 'fr';à remplacer par:
@line 34
$isLgForce = $_GET['lang'];Pour la détection automatique de la langue voici un petit coup de pouce, il faut utiliser dans l'ordre si disponible:
1.
$_GET['lang']2.
$_SESSION['lang']3.
$_COOKIE['lang']4.
$_SERVER['HTTP_ACCEPT_LANGUAGE']5. langue par défaut.
Voici une implémentation (libre de droit ;)):
Pas oublier de sauver la valeur après avoir identifié la langue.
PS: c'est inutilisable la syntaxe Wiki de LinuxFR. Ils auraient dû prendre la syntaxe Wiki de wikimedia (ça bug non stop).