Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2722 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  ..  26  27  28  ..  66  67  68  69  70  71
Auteur Sujet :

blabla@php | faq et bonnes pratiques page 1

n°1959319
nraynaud
lol
Posté le 21-01-2010 à 09:13:11  profilanswer
 

Reprise du message précédent :

skeye a écrit :


Connais pas, mais ça t'apporterait quoi? :??:


avoir les scripts DDL et les requêtes SQL dans un langage qui n'est pas spécifique à la base, ce qui me permettrai d'utiliser sqlite en dev et postgres en intégration et prod.


---------------
trainoo.com, c'est fini
mood
Publicité
Posté le 21-01-2010 à 09:13:11  profilanswer
 

n°1959320
flo850
moi je
Posté le 21-01-2010 à 09:16:25  profilanswer
 

c'est pas ce que fait pdo ?
http://www.phpro.org/tutorials/Int [...] PDO.html#9
et au passage pdo génère des exception si tu préfère ça aux code de retours

Message cité 2 fois
Message édité par flo850 le 21-01-2010 à 09:17:34

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

n°1959321
masklinn
í dag viðrar vel til loftárása
Posté le 21-01-2010 à 09:19:55  profilanswer
 

flo850 a écrit :

c'est pas ce que fait pdo ?  
http://www.phpro.org/tutorials/Int [...] PDO.html#9
et au passage pdo génère des exception si tu préfère ça aux code de retours


Bah non, avec PDO l'interface vers la DB est db-indep, mais le SQL que tu exécutes dedans l'est pas.


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°1959339
nraynaud
lol
Posté le 21-01-2010 à 10:27:02  profilanswer
 

flo850 a écrit :

c'est pas ce que fait pdo ?  
http://www.phpro.org/tutorials/Int [...] PDO.html#9
et au passage pdo génère des exception si tu préfère ça aux code de retours


ben pour le DDL, je trouve pas.


---------------
trainoo.com, c'est fini
n°1959385
skeye
Posté le 21-01-2010 à 12:04:07  profilanswer
 

nraynaud a écrit :


avoir les scripts DDL et les requêtes SQL dans un langage qui n'est pas spécifique à la base, ce qui me permettrai d'utiliser sqlite en dev et postgres en intégration et prod.


Bah t'utilises déjà PDO, donc l'abstraction par rapport au sgbd utilisé tu l'as déjà... :??:

 

[edit]

 

ok, je débarque 3h plus tard.:o


Message édité par skeye le 21-01-2010 à 12:04:28

---------------
Can't buy what I want because it's free -
n°1959389
nraynaud
lol
Posté le 21-01-2010 à 12:26:29  profilanswer
 

bon vous répondez ? :fou:
comment avec PDO je fais un create table indépendant de la base ? :fou:
(genre pour les colonnes autoindex, j'ai rien de compliqué en fait)


---------------
trainoo.com, c'est fini
n°1959399
skeye
Posté le 21-01-2010 à 12:50:21  profilanswer
 

nraynaud a écrit :

bon vous répondez ? :fou:
comment avec PDO je fais un create table indépendant de la base ? :fou:
(genre pour les colonnes autoindex, j'ai rien de compliqué en fait)


Tu crées tes tables en php?[:autobot]


---------------
Can't buy what I want because it's free -
n°1959409
nraynaud
lol
Posté le 21-01-2010 à 13:06:24  profilanswer
 

skeye a écrit :


Tu crées tes tables en php?[:autobot]


oui :o


---------------
trainoo.com, c'est fini
n°1959414
nraynaud
lol
Posté le 21-01-2010 à 13:15:37  profilanswer
 

y'a des pros du PHPunit ici ? comment j'importe mes classes pour les tester dans le fichier de test ?


---------------
trainoo.com, c'est fini
n°1959443
theredled
● REC
Posté le 21-01-2010 à 14:55:16  profilanswer
 

nraynaud a écrit :

bon vous répondez ? :fou:
comment avec PDO je fais un create table indépendant de la base ? :fou:
(genre pour les colonnes autoindex, j'ai rien de compliqué en fait)


Bah tu peux pas, PDO n'unifie pas les syntaxes o:


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
mood
Publicité
Posté le 21-01-2010 à 14:55:16  profilanswer
 

n°1959463
nraynaud
lol
Posté le 21-01-2010 à 16:40:18  profilanswer
 

rooh le bordel PHPunit [:pingouino]
quand je le lance en ligne de commande, s'il foire, le message se retrouve pas dans la console, mais dans le syslog [:pingouino]


---------------
trainoo.com, c'est fini
n°1959464
FlorentG
Posté le 21-01-2010 à 16:43:12  profilanswer
 

Pas normal ça [:pingouino]

n°1959469
nraynaud
lol
Posté le 21-01-2010 à 17:00:31  profilanswer
 

merde [:pingouino]
 
en tout cas c'est l'horreur. Il écrase pas la conf de mon PHP.ini pour mettre des paramètres un peu plus 'command line friendly' ?


---------------
trainoo.com, c'est fini
n°1959500
0x90
Posté le 21-01-2010 à 19:15:55  profilanswer
 

nraynaud a écrit :

et surtout vous avez l'air de cracher sur la classe job, donc comment je la vire ?

 

À ta place je la virerais pas.

 

J'aurais:
Un SqlJob pour lancer une requète (paramétrée au ctor ou une classe par requète, comme tu veut).
Un Sequence Job qui fait tourner une séquence de jobs passés au ctor.
Un TransactionJob qui démarre une transaction, lance un job passé en ctor, puis termine la transaction.
Un SafeJob qui try, lance un job passé en ctor, et catch tout ce qu'il faut.

 

t'as plus qu'a composer un truc du genre :

Code :
  1. $output = new UnEspeceDeDictoideJsonOuJusteUneStringMutableOuUnTrucPlusComplique();
  2.  
  3. (new SafeJob($output,
  4.    new TransactionJob(
  5.        new SequenceJob(
  6.            new SqlJob($output, "ta requete et autre params utiles...." ),
  7.            new SqlJob($output, "ta requete 2 et autre params utiles...." ),
  8.            new JobUpPeuParticulier($output, lalala....)
  9.        )
  10.    )
  11. ).doIt();
  12.  
  13. echo $output.toJson();


Message édité par 0x90 le 21-01-2010 à 19:18:24

---------------
Me: Django Localization, Yogo Puzzle, Chrome Grapher, C++ Signals, Brainf*ck.
n°1959504
nraynaud
lol
Posté le 21-01-2010 à 19:43:22  profilanswer
 

vous les gérez comment les fichiers PHP qui doivent pas se retrouver dans le docroot ?


---------------
trainoo.com, c'est fini
n°1959555
nraynaud
lol
Posté le 22-01-2010 à 00:35:52  profilanswer
 

nraynaud a écrit :

rooh le bordel PHPunit [:pingouino]
quand je le lance en ligne de commande, s'il foire, le message se retrouve pas dans la console, mais dans le syslog [:pingouino]


 

FlorentG a écrit :

Pas normal ça [:pingouino]


je viens de capter : le PHP.ini était pas vraiment configuré comme pour du dev.


---------------
trainoo.com, c'est fini
n°1959556
nraynaud
lol
Posté le 22-01-2010 à 00:57:29  profilanswer
 

dite pour éviter le XSS, vous faites le htmlentities avant de mettre en base ou au moment d'afficher dans la page ?


---------------
trainoo.com, c'est fini
n°1959559
nraynaud
lol
Posté le 22-01-2010 à 01:50:28  profilanswer
 

Code :
  1. } catch (PDOException $e) {
  2.            $sqlState = $e->getCode();
  3.            if ($sqlState >= 23000 && $sqlState<24000)
  4.                return "{success: false, msg: 'Ce nom d\\'utilisateur existe déjà'}";
  5.            else
  6.            throw $e;
  7.        }
 

[:filter]


Message édité par nraynaud le 22-01-2010 à 01:50:39

---------------
trainoo.com, c'est fini
n°1959563
skeye
Posté le 22-01-2010 à 06:18:42  profilanswer
 

nraynaud a écrit :

vous les gérez comment les fichiers PHP qui doivent pas se retrouver dans le docroot ?


 
Perso j'ajoute un répertoire perso en-dehors du docroot dans l'include path.
 

nraynaud a écrit :

dite pour éviter le XSS, vous faites le htmlentities avant de mettre en base ou au moment d'afficher dans la page ?


 
à l'affichage. Dans la base c'est le merdier.:o


---------------
Can't buy what I want because it's free -
n°1959572
flo850
moi je
Posté le 22-01-2010 à 08:34:11  profilanswer
 

nraynaud a écrit :

bon vous répondez ? :fou:
comment avec PDO je fais un create table indépendant de la base ? :fou:
(genre pour les colonnes autoindex, j'ai rien de compliqué en fait)


Si tu veux vraiment etre indépendant , tu utilise un orm ( doctrine par exemple )
Mais c'est assez lourd si tu n'as que 200 lignes de php

 
nraynaud a écrit :

dite pour éviter le XSS, vous faites le htmlentities avant de mettre en base ou au moment d'afficher dans la page ?

 

à l'affichage

Message cité 1 fois
Message édité par flo850 le 22-01-2010 à 08:34:33

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

n°1959580
nraynaud
lol
Posté le 22-01-2010 à 09:24:24  profilanswer
 

skeye a écrit :


 
Perso j'ajoute un répertoire perso en-dehors du docroot dans l'include path.
 
 
 
à l'affichage. Dans la base c'est le merdier.:o


 

flo850 a écrit :


Si tu veux vraiment etre indépendant , tu utilise un orm ( doctrine par exemple )
Mais c'est assez lourd si tu n'as que 200 lignes de php  
 


 

flo850 a écrit :


 
à l'affichage


 
merci.
 
pour le nettoyage du XSS, vous utilisez quoi ?


---------------
trainoo.com, c'est fini
n°1959583
masklinn
í dag viðrar vel til loftárása
Posté le 22-01-2010 à 09:34:13  profilanswer
 

nraynaud a écrit :

 

merci.

 

pour le nettoyage du XSS, vous utilisez quoi ?


Si tes utilisateurs n'ont pas à rentrer de html, tu passes tout ce qui vient d'un utilisateur dans htmlspecialchars (ou même htmlentities) avant de l'afficher.

 

idéalement, ta méthode d'affichage devrait tout escaper par défaut, sauf ce qui a explicitement été marqué "à ne pas escaper" (c'est ce que fait le système de templates de django par défaut depuis 1.0, par exemple).

 

Derrière, fais aussi gaffe aux CRSF


Message édité par masklinn le 22-01-2010 à 09:37:25

---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°1959588
nraynaud
lol
Posté le 22-01-2010 à 09:48:42  profilanswer
 

CRSF c'est juste l'envoi de formulaire entre sites ?


---------------
trainoo.com, c'est fini
n°1959629
nraynaud
lol
Posté le 22-01-2010 à 11:29:12  profilanswer
 

Code :
  1. if($_POST['newrole'] == 'Admin')
  2.    $newrole = 1;
  3. else {
  4.    if($_POST['newrole'] == 'Consult')
  5.        $newrole = 2;
  6.    else {
  7.        if($_POST['newrole'] == 'Public')
  8.            $newrole = 3;
  9.        else {
  10.            if($_POST['newrole'] == 'User Metier')
  11.                $newrole = 4;
  12.            else {
  13.                $newrole = 2;
  14.            }
  15.        }
  16.    }
  17. }


y'a des enums ? des trucs pour ça en PHP?


---------------
trainoo.com, c'est fini
n°1959630
masklinn
í dag viðrar vel til loftárása
Posté le 22-01-2010 à 11:30:13  profilanswer
 

nraynaud a écrit :

Code :
  1. if($_POST['newrole'] == 'Admin')
  2.    $newrole = 1;
  3. else {
  4.    if($_POST['newrole'] == 'Consult')
  5.        $newrole = 2;
  6.    else {
  7.        if($_POST['newrole'] == 'Public')
  8.            $newrole = 3;
  9.        else {
  10.            if($_POST['newrole'] == 'User Metier')
  11.                $newrole = 4;
  12.            else {
  13.                $newrole = 2;
  14.            }
  15.        }
  16.    }
  17. }


y'a des enums ? des trucs pour ça en PHP?


php c'est pas java, tu peux faire des switch sur un string :o


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°1959637
nraynaud
lol
Posté le 22-01-2010 à 11:48:35  profilanswer
 


ok,  
et dans l'autre sens ? (enfin, sans faire 2 tables quoi)


---------------
trainoo.com, c'est fini
n°1959641
flo850
moi je
Posté le 22-01-2010 à 11:54:08  profilanswer
 

http://php.net/manual/fr/function.array-search.php à la place de array_key_exists et un tableau associatif roleText <->idRole


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

n°1959658
ratibus
Posté le 22-01-2010 à 12:09:43  profilanswer
 


Je serais passé par un isset vu qu'aucune valeur peut etre null

Code :
  1. $newrole = isset($roles[$_POST['newrole']]) ? $roles[$_POST['newrole']] : 2;


Message édité par ratibus le 22-01-2010 à 12:30:28

---------------
Mon blog
n°1959664
FlorentG
Posté le 22-01-2010 à 12:22:42  profilanswer
 
n°1959687
theredled
● REC
Posté le 22-01-2010 à 13:22:50  profilanswer
 


:??:


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
n°1959697
flo850
moi je
Posté le 22-01-2010 à 14:01:54  profilanswer
 

Message édité par ratibus le 22-01-2010 à 12:30:28


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

n°1959717
theredled
● REC
Posté le 22-01-2010 à 14:32:39  profilanswer
 

'k :o


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
n°1959727
ratibus
Posté le 22-01-2010 à 14:48:52  profilanswer
 

:D


---------------
Mon blog
n°1959815
nraynaud
lol
Posté le 22-01-2010 à 20:41:36  profilanswer
 

comment vous organisez le switch de base entre les tests auto, les tests côté client et la vraie base ?  
 
dans mon cas y'a un peu plus que le DSN à changer, parce que j'ai une base à créer après avoir ouvert la connexion quand il s'agit de la base de tests


---------------
trainoo.com, c'est fini
n°1959824
skeye
Posté le 22-01-2010 à 20:54:45  profilanswer
 

nraynaud a écrit :

comment vous organisez le switch de base entre les tests auto, les tests côté client et la vraie base ?  
 
dans mon cas y'a un peu plus que le DSN à changer, parce que j'ai une base à créer après avoir ouvert la connexion quand il s'agit de la base de tests


 
à part stocker dans la conf s'il faut ou non créer la base, je vois pas...ou alors je comprends pas bien la question?


---------------
Can't buy what I want because it's free -
n°1959825
nraynaud
lol
Posté le 22-01-2010 à 20:59:41  profilanswer
 

skeye a écrit :


 
à part stocker dans la conf s'il faut ou non créer la base, je vois pas...ou alors je comprends pas bien la question?


nan, c'est exactement, ça. Juste que pratiquement, comment vous switchez la conf, comment vous répartissez ça dans les fichiers etc.


---------------
trainoo.com, c'est fini
n°1959827
skeye
Posté le 22-01-2010 à 21:19:04  profilanswer
 

nraynaud a écrit :


nan, c'est exactement, ça. Juste que pratiquement, comment vous switchez la conf, comment vous répartissez ça dans les fichiers etc.


Perso j'ai une arbo de fichiers de conf par type de conf voulue, plus un fichier de conf commun qui me permet de déterminer sur laquelle je suis (en fonction du hostname notamment).
Et derrière je déploie avec la tâche ant kivabien.


---------------
Can't buy what I want because it's free -
n°1959828
nraynaud
lol
Posté le 22-01-2010 à 21:30:37  profilanswer
 

ok


---------------
trainoo.com, c'est fini
n°1959834
nraynaud
lol
Posté le 22-01-2010 à 23:13:22  profilanswer
 

hep les gens, comment je peux faire un include_if_exist  
 
en gros, je veux qu'il y ait une conf par défaut et éventuellement si le fichier existe qu'il soit appelé.
J'ai l'impression que les includes() et autre require() sont relatifs au script courant alors que les trucs de manipulation de fichier style file_exists() sont relatifs au répertoire courant.


---------------
trainoo.com, c'est fini
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  26  27  28  ..  66  67  68  69  70  71

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-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)