Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1432 connectés 

 


Pour ou contre du changement sur le topic ?


 
35.7 %
 5 votes
1.  Oui, faq / bonnes pratiques + blabla@php
 
 
0.0 %
        0 vote
2.  Oui, blabla@php uniquement
 
 
7.1 %
 1 vote
3.  Ce topic mérite la poubelle. Pauvre poubelle
 
 
21.4 %
 3 votes
4.  Non, ce topic reste tel quel
 
 
35.7 %
 5 votes
5.  Obiwan n'aime pas le php
 

Total : 16 votes (2 votes blancs)
Ce sondage est clos, vous ne pouvez plus voter
 Mot :   Pseudo :  
  Aller à la page :
 
 Page :   1  2  3  4  5  ..  14  15  16  ..  64  65  66  67  68  69
Auteur Sujet :

blabla@php | faq et bonnes pratiques page 1

n°1849904
omega2
Posté le 11-02-2009 à 15:15:26  profilanswer
 

Reprise du message précédent :

flo850 a écrit :


je suis passé en php5/mysql5 que depuis 4 mois  
et IE6 depuis 6 mois  
 
alors IE8/php6mysql6 , ce sera pour mon remplaçant


Qu'importe, on va bien rigoler par ce que les hébergeurs pourront plus activer register_global et que du coup tous les mauvais programmeurs pleureront partout sur internet.
Ca va être la joie et la bonne humeur dans les chaumières .... :D et pleins de boulot pour les pros.  [:anathema]

mood
Publicité
Posté le 11-02-2009 à 15:15:26  profilanswer
 

n°1849906
omega2
Posté le 11-02-2009 à 15:16:12  profilanswer
 


Comme tu dis, t'as essayé une bidouille proposé par ton hébergeur. [:airforceone]

n°1849908
Profil sup​primé
Posté le 11-02-2009 à 15:18:21  answer
 

oui mais là j'ai le même htaccess qu'avant, et çà marche plus... C'est moche :heink:

n°1849910
flo850
moi je
Posté le 11-02-2009 à 15:23:19  profilanswer
 

il y a aussi l'historique
 
passer d'un site qui utilise register_global, les HTTP_POST_VARs , .... a un truc a peu pret correct m'a occupé 6 mois, sans faire de nouvelles fonctionnalité, juste pour maintenir l'existant


---------------

n°1849914
omega2
Posté le 11-02-2009 à 15:28:16  profilanswer
 

Ca représentait combien de lignes de code grosso modo?

n°1849922
flo850
moi je
Posté le 11-02-2009 à 15:33:47  profilanswer
 

avant refactoring: environ 120 000 lignes de code ( comptées avec sloccount)  
maintenant, un poil plus de 60 000 lignes, et il y a encore un peu de gras à enlever sur certains modules ( cible a 50 000 lignes avec plus de fonctionnalités )  
 


---------------

n°1849930
omega2
Posté le 11-02-2009 à 15:40:17  profilanswer
 

ok, donc tu t'es pas contenté d'un simple "$HTTP_POST_VARS => $_POST" + déclaration des variables non déclaré.
Tant de boulot en 6 mois, je trouve que c'est vraiment pas mal ... ou que ton prédécesseur étant vraiment très nul et qu'il faisait en 15 lignes ce qui se fait en une.

n°1849940
flo850
moi je
Posté le 11-02-2009 à 15:49:23  profilanswer
 

c'etait un code  qui datait de 2003 pour la base, le reste a été branché avec plus ou moins de succès dessus, suivant le niveau des intervenants  
 
donc refactoring global, passage en mvc, à l'objet  suppression des doublons, des fichiers .bak ( qui était quand meme utilisé [:rofl] ) , j'en apsse et des meilleurs


---------------

n°1849954
omega2
Posté le 11-02-2009 à 16:03:36  profilanswer
 

Justement, j'adore les meilleurs. :D C'est là qu'on rigole. :D

n°1849957
flo850
moi je
Posté le 11-02-2009 à 16:11:21  profilanswer
 

au début, oui , mais au bout de quelques mois, ça lasse de se taper des ficheirs de 2300 lignes , sans fonctions,  et avec un switch de plus de 1500 lignes

 

exemple sur les premières lignes d'un fichier  

Code :
  1. <?
  2.     $voir_html=1;
  3.    
  4.     include $cfg_chemin_api.'classes/wysiwyg/editor.textarea.php';
  5.    
  6.      // on recupere les groupes restreints par groupe si jamais on a besoin
  7.     $tmpAryGroupesRestreints = retourne_groupes_restreints_dossier();
  8.    
  9.    $dossier=$sesNavigation[dossier][id];
  10.    $sql = " SELECT * FROM masques a, masques_droits b WHERE b.id_dossier='$dossier' ";
  11.    $sql.= " AND (b.id_masque=a.id ";
  12.    $sql.= " )  AND b.associer='1' GROUP BY a.id";
  13.    $res = mysql_query($sql, $bdd);
  14.    //echo $sql;
  15.    $nb_masques=mysql_num_rows($res);
  16.    if($sesNavigation['section']=="pages_unique" || $sesNavigation['section']=="navigation" )
  17.    $nb_masques+=2; // car on ajoute le masque import html et le masque page de garde


$voir_html, $cfg_chemin_api,$bdd sont des variables globales
 sesNavigation fait reference a $_SESSION['sesNavigation'] , et a été chargée par $_GET['dossier'] par un fichier inclus un eu plus en amont dans la chaine, sans contrôle
pas de sécurisation  au niveau de la requête
en cas d'erreur de la requête, on continue, c'est pas grave , on utilise quand même mysql_num_rows
....

 

et ça continue avec un WTF toutes les lignes pendant plusieurs centaines de ligens. Par exemple $id est une variable globale, il est donc interdit de l'utiliser dans un paramètre , sous peine de voir arriver des effets de bords sympa

Message cité 1 fois
Message édité par flo850 le 11-02-2009 à 16:22:29

---------------

mood
Publicité
Posté le 11-02-2009 à 16:11:21  profilanswer
 

n°1849970
Profil sup​primé
Posté le 11-02-2009 à 16:49:22  answer
 

flo850 a écrit :


Code :
  1. $dossier=$sesNavigation[dossier][id];




 [:robert de niro]

Message cité 2 fois
Message édité par Profil supprimé le 11-02-2009 à 16:49:37
n°1849978
omega2
Posté le 11-02-2009 à 17:04:13  profilanswer
 

Citation :

       $sql = " SELECT * FROM masques a, masques_droits b WHERE b.id_dossier='$dossier' ";
       $sql.= " AND (b.id_masque=a.id ";
       $sql.= " )  AND b.associer='1' GROUP BY a.id";


Rien qu'avec ça, je me marre. Une gestion des droits qui prend un "masque de droit" au hasard parmi ceux qui sont rattaché à un "masque" donné.
Rien que ça ça donne une idée de la qualité du code qui tourne autour.
 
 
 [:cerveau afrojojo] Je l'avais manqué celle là.


Message édité par omega2 le 11-02-2009 à 17:05:55
n°1849985
theredled
● REC
Posté le 11-02-2009 à 17:38:08  profilanswer
 


Je suppose que ça marche en error-reporting: rien, la constante est remplacée par sa valeur en chaine :o


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
n°1850006
omega2
Posté le 11-02-2009 à 18:18:08  profilanswer
 

theredled a écrit :


Je suppose que ça marche en error-reporting: rien, la constante est remplacée par sa valeur en chaine :o

met un coup de E_STRICT sur un code qui est tout comme ça et admire le résultat. C'est lolilol comme page.

n°1850012
Profil sup​primé
Posté le 11-02-2009 à 18:34:23  answer
 

Là est toute la logique de PHP :
Attention c'est pas bien  [:neo_xp]  mais çà marche :o

n°1850013
flo850
moi je
Posté le 11-02-2009 à 18:36:39  profilanswer
 

omega2 a écrit :

met un coup de E_STRICT sur un code qui est tout comme ça et admire le résultat. C'est lolilol comme page.


héla malheureux, un code comme ça, tu active aucun reporting ( déjà qu'en l'activant pas il y a des messages qui te petent quand meme a la gueule)  [:fenston]


---------------

n°1850015
flo850
moi je
Posté le 11-02-2009 à 18:39:44  profilanswer
 

c'est le quasiment le cas maintenant :  
E_ALL sur le dev
E_ERROR vers log sur le prod


---------------

n°1850016
Profil sup​primé
Posté le 11-02-2009 à 18:41:38  answer
 


 [:cerveau +1]

n°1850019
omega2
Posté le 11-02-2009 à 18:48:09  profilanswer
 

flo850 a écrit :


héla malheureux, un code comme ça, tu active aucun reporting ( déjà qu'en l'activant pas il y a des messages qui te petent quand meme a la gueule)  [:fenston]

Ca me rappelle un CMS que j'ai essayé il y a quelques mois. Pleins d'erreur dès que je mettais un petit E_ALL mais les seules erreurs qui n'étaient jamais remonté c'était celles qui sont cruciales : classiquement les "aie, la fonction mysql_query n'existe pas" qui te bloquent dès l'installation par une belle page blanche vu qu'ils sont allé foutre un @ dessus. [:airforceone]

n°1850022
flo850
moi je
Posté le 11-02-2009 à 18:51:58  profilanswer
 

nan  [:das moorrad]  
 

Spoiler :

Strict Standards: date() [function.date]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Berlin' for 'CET/1.0/no DST' instead in /var/www/portail/api_intranet.0.95/lib/general.inc.php on line 682


---------------

n°1850023
omega2
Posté le 11-02-2009 à 18:52:59  profilanswer
 

flo850 a écrit :

nan  [:das moorrad]  
 

Spoiler :

Strict Standards: date() [function.date]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Berlin' for 'CET/1.0/no DST' instead in /var/www/portail/api_intranet.0.95/lib/general.inc.php on line 682


sisi [:albertos]

n°1850069
theredled
● REC
Posté le 11-02-2009 à 20:39:19  profilanswer
 

omega2 a écrit :

met un coup de E_STRICT sur un code qui est tout comme ça et admire le résultat. C'est lolilol comme page.


Ce serait pas exactement ce que je disais ça ? :o

 
flo850 a écrit :

nan  [:das moorrad]

 
Spoiler :

Strict Standards: date() [function.date]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Berlin' for 'CET/1.0/no DST' instead in /var/www/portail/api_intranet.0.95/lib/general.inc.php on line 682


 

Oh oui c'est horrible ça, ça arrive sur 1 machine sur 3, et 1 fois sur 4 même avec tout ce qu'il faut [:manust] Bon on peut noter que j'ai pas cherché 4 heures une solution. (mais je laisse en E_STRICT :o)

 

Sinon pourquoi vous mettez pas de E_ALL en prod :??:

Message cité 1 fois
Message édité par theredled le 11-02-2009 à 20:41:48

---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
n°1850072
drasche
Posté le 11-02-2009 à 20:45:30  profilanswer
 

theredled a écrit :

Sinon pourquoi vous mettez pas de E_ALL en prod :??:


Tu as lu le php.ini? La réponse est dedans il me semble.


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°1850077
theredled
● REC
Posté le 11-02-2009 à 21:03:35  profilanswer
 

drasche a écrit :


Tu as lu le php.ini? La réponse est dedans il me semble.


Non, donc oui, et non ya rien là dessus dedans apparemment :o

 

par contre ya ça :

Citation :


; E_ERROR           - fatal run-time errors
; E_RECOVERABLE_ERROR  - almost fatal run-time errors


[:afrojojo]


Message édité par theredled le 11-02-2009 à 21:03:54

---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
n°1850082
drasche
Posté le 11-02-2009 à 21:44:12  profilanswer
 

Pose toi alors la question: as-tu envie que tes utilisateurs se tapent un message qui va leur faire peur et jeter le discrédit sur ton site, ou tu vas gérer ça en homme et leur afficher une page plus user-friendly? :p


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°1850084
theredled
● REC
Posté le 11-02-2009 à 21:53:35  profilanswer
 

drasche a écrit :

Pose toi alors la question: as-tu envie que tes utilisateurs se tapent un message qui va leur faire peur et jeter le discrédit sur ton site, ou tu vas gérer ça en homme et leur afficher une page plus user-friendly? :p


Bien sûr que non, c'est pour cela que je vais te faire découvrir le concept de log :o


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
n°1850087
drasche
Posté le 11-02-2009 à 21:59:25  profilanswer
 

theredled a écrit :

Bien sûr que non, c'est pour cela que je vais te faire découvrir le concept de log :o


T'as pas idée du nombre de logs que j'ai à gérer au boulot [:petrus75]


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°1850089
theredled
● REC
Posté le 11-02-2009 à 22:01:40  profilanswer
 

drasche a écrit :


T'as pas idée du nombre de logs que j'ai à gérer au boulot [:petrus75]


J'espère pour toi oui :o

 

Mais pourquoi afficher les erreurs en prod, donc ?

 

edit : ah nan en fait la réponse est dans ton post, ok :o mais c'est un peu une raison pas top, si ?


Message édité par theredled le 11-02-2009 à 22:04:12

---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
n°1850098
drasche
Posté le 11-02-2009 à 22:21:39  profilanswer
 

Chépas, voir un fatal error ou autre message du même calibre en prod, en tant que développeur, ça me file l'urticaire. Et en tant qu'utilisateur, la première fois c'est rigolo, mais plus après.


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°1850099
theredled
● REC
Posté le 11-02-2009 à 22:26:23  profilanswer
 

drasche a écrit :

Chépas, voir un fatal error ou autre message du même calibre en prod, en tant que développeur, ça me file l'urticaire. Et en tant qu'utilisateur, la première fois c'est rigolo, mais plus après.


Je comprend rien :(

 

Si t'as une couille en prod, t'as pas un log qui récupère les erreurs ? et si oui pourquoi ne pas y incorporer les notices au même titre que les fatal ou les errors ?

 

T'as pas de log parce que t'as peur d'aller le regarder et de découvrir des erreurs, alors tu laisse le client découvrir juste les grosses, c'est ça ou j'ai vraiment rien capté ? :D


Message édité par theredled le 11-02-2009 à 22:28:33

---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
n°1850100
skeye
Posté le 11-02-2009 à 22:27:44  profilanswer
 

drasche a écrit :

Chépas, voir un fatal error ou autre message du même calibre en prod, en tant que développeur, ça me file l'urticaire.


c'est pour ça que tu le vois pas, il va dans un fichier log.[:pingouino]


---------------
Can't buy what I want because it's free -
n°1850108
drasche
Posté le 11-02-2009 à 22:43:48  profilanswer
 

J'ai jamais dit que j'enregistrais pas mes erreurs dans un log [:pingouino]


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°1850109
theredled
● REC
Posté le 11-02-2009 à 22:44:31  profilanswer
 

Bon bah on a tous rien compris à ce que tu avances alors [:pingouino]


Message édité par theredled le 11-02-2009 à 22:44:38

---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
n°1850110
drasche
Posté le 11-02-2009 à 22:45:42  profilanswer
 

Laisser une stacktrace s'afficher en prod = bad. C'est plus clair?


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°1850112
theredled
● REC
Posté le 11-02-2009 à 22:47:25  profilanswer
 

drasche a écrit :

Laisser une stacktrace s'afficher en prod = bad. C'est plus clair?


Bah oui, c'est pour ça qu'on met non seulement un log, mais aussi un display_errors=off. Comme ça rien ne s'affiche au client et dans le log on a tout, y compris les notices.

 

Non ?


Message édité par theredled le 11-02-2009 à 22:47:38

---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
n°1850115
drasche
Posté le 11-02-2009 à 23:01:06  profilanswer
 

Vi, exactement. Il a justement fallu que je déplace nos sorties dirigées vers le Windows Event Log à une table dédiée. L'astuce étant qu'on n'a pas un accès direct aux serveurs de prod et que pour demander une copie du log, c'est relou. Et je suis pas peu fier du résultat.
 
Mise en prod dimanche soir [:totoz]


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°1850118
theredled
● REC
Posté le 11-02-2009 à 23:07:53  profilanswer
 

Oh mon dieu, un projet fini 6 jours *avant* la date de mise en prod [:totoz]


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
n°1850121
FlorentG
Unité de Masse
Posté le 11-02-2009 à 23:13:23  profilanswer
 

theredled a écrit :

Oh mon dieu, un projet fini 6 jours *avant* la date de mise en prod [:totoz]


La date de prod doit être une date en 2008. C'est pas logique ce que tu dis là :/

n°1850123
drasche
Posté le 11-02-2009 à 23:14:15  profilanswer
 

theredled a écrit :

Oh mon dieu, un projet fini 6 jours *avant* la date de mise en prod [:totoz]


[:ddr555]


Message édité par drasche le 11-02-2009 à 23:14:32

---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  14  15  16  ..  64  65  66  67  68  69

Aller à :
Ajouter une réponse
 

Sujets relatifs
Problème pour une mise en page sous forme de tableauAfficher sur une page web directement le resultat d'une autre page web
[PHP] Fonction include plus rapide qu'un bout de code dans la page ?Ouvrir un fichier HTML en fin de page
[Résolu] Expirer la cache au niveau de la pageexecuter une page php sans rien afficher
inserer dans ma page wikiControler le changement de page
Certificat SSL a valider pour chaque élément de pageinstallé un mdp sur une page web avec Namo
Plus de sujets relatifs à : blabla@php | faq et bonnes pratiques page 1


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR