Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1849 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  ..  60  61  62  ..  64  65  66  67  68  69
Auteur Sujet :

blabla@php | faq et bonnes pratiques page 1

n°2201055
TheCreator
zwiiiii and then shbrouk tak
Posté le 28-08-2013 à 23:03:43  profilanswer
 

Reprise du message précédent :
url? :o


---------------
La superstition c'est comme ceux qui réparent les fauteuils, il faut que le bois qu'ils rajoutent soit à peu près comme l'autre bois sinon ça se voit trop.
mood
Publicité
Posté le 28-08-2013 à 23:03:43  profilanswer
 

n°2202612
TheCreator
zwiiiii and then shbrouk tak
Posté le 11-09-2013 à 16:08:40  profilanswer
 

Code :
  1. var_dump((bool) "false" );   // bool(true)


 
une heure de perdue sur cette mongolerie  [:verdasco pfff]


---------------
La superstition c'est comme ceux qui réparent les fauteuils, il faut que le bois qu'ils rajoutent soit à peu près comme l'autre bois sinon ça se voit trop.
n°2202617
gugus
Posté le 11-09-2013 à 16:16:29  profilanswer
 

C't'une chaîne de caractère non vide, normal qu'il renvoie true [:spamafote]


---------------
Site photo - FlickR - G+ - Fb
n°2202618
TheCreator
zwiiiii and then shbrouk tak
Posté le 11-09-2013 à 16:17:35  profilanswer
 

curieusement je suis passé à côté depuis 3 ans :D
 
"0" est false par contre.


---------------
La superstition c'est comme ceux qui réparent les fauteuils, il faut que le bois qu'ils rajoutent soit à peu près comme l'autre bois sinon ça se voit trop.
n°2202673
gugus
Posté le 12-09-2013 à 09:42:20  profilanswer
 

Effectivement
http://php.net/manual/fr/language.types.boolean.php

Citation :

Lors d'une conversion en booléen, les valeurs suivantes sont considérées comme FALSE :
 
le booléen FALSE, lui-même
l'entier 0 (zéro)
le nombre à virgule flottante 0.0 (zéro)
la chaîne vide, et la chaîne "0"
un tableau avec aucun élément
un objet avec aucun membre, ni variable (uniquement en PHP 4)
le type spécial NULL (incluant les variables non définies)
les objets SimpleXML créés depuis des balises vides
Toutes les autres valeurs sont considérées comme TRUE (y compris toutes les ressources).


C'est un des problèmes des langages non typés, après, suffit d'être au courant :D


---------------
Site photo - FlickR - G+ - Fb
n°2202686
masklinn
í dag viðrar vel til loftárása
Posté le 12-09-2013 à 10:47:33  profilanswer
 

gugus a écrit :

Effectivement
http://php.net/manual/fr/language.types.boolean.php

Citation :

Lors d'une conversion en booléen, les valeurs suivantes sont considérées comme FALSE :
 
le booléen FALSE, lui-même
l'entier 0 (zéro)
le nombre à virgule flottante 0.0 (zéro)
la chaîne vide, et la chaîne "0"
un tableau avec aucun élément
un objet avec aucun membre, ni variable (uniquement en PHP 4)
le type spécial NULL (incluant les variables non définies)
les objets SimpleXML créés depuis des balises vides
Toutes les autres valeurs sont considérées comme TRUE (y compris toutes les ressources).


C'est un des problèmes des langages non typés, après, suffit d'être au courant :D


Ça a aucun rapport direct avec le typage du langage (& "non typé" ne veut pas dire ce que tu penses. Le seul langage non-typé qui reste c'est l'assembleur, et encore pas tous). Python et Ruby ont des sémantiques de types très similaires, seuls `nil` et `false` sont "faux" dans un contexte booléen en Ruby, alors qu'en Python c'est customisable (via une méthode) et par défaut les collections vides, 0, 0.0, "" et None sont "faux".


---------------
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°2202691
gugus
Posté le 12-09-2013 à 11:22:19  profilanswer
 

Ouai enfin tu joues sur les mots là :o
ça n’empêche que le typage n'est pas explicite, les cast sont implicite (ou pas) et qu'a un moment ou à un autre il y a forcément des comportements arbitrairement décidé par ceux qui ont développé le langage, qui peuvent ne pas paraître logique suivant la façon de voir les choses
Le fait de dire que "0" est false en fait parti


---------------
Site photo - FlickR - G+ - Fb
n°2202695
masklinn
í dag viðrar vel til loftárása
Posté le 12-09-2013 à 11:44:39  profilanswer
 

gugus a écrit :

Ouai enfin tu joues sur les mots là :o


Non.

gugus a écrit :

ça n’empêche que le typage n'est pas explicite


Ouais enfin le typage est aussi implicite en Haskell hein.

gugus a écrit :

les cast sont implicite (ou pas) et qu'a un moment ou à un autre il y a forcément des comportements arbitrairement décidé par ceux qui ont développé le langage, qui peuvent ne pas paraître logique suivant la façon de voir les choses
Le fait de dire que "0" est false en fait parti


Aucune objection là dessus, mon objection est sur:

Citation :

C'est un des problèmes des langages non typés


---------------
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°2202801
koskoz
They see me trollin they hatin
Posté le 13-09-2013 à 09:50:03  profilanswer
 

Comment vous formateriez ça :

 
Code :
  1. array_walk($pendingMeetings, function(&$value, $key) use ($pendingResources, $pendingCarriers, $pendingSlots) {
  2.  
  3. });
 

Je vois ça :

Code :
  1. array_walk($pendingMeetings, function(&$value, $key)
  2.    use ($pendingResources, $pendingCarriers, $pendingSlots) {
  3.  
  4. });
 

Mais du coup le code de la fonction est indenté au même niveau que le use.

 

Il y a cette variante :

Code :
  1. array_walk($pendingMeetings, function(&$value, $key)
  2.    use ($pendingResources, $pendingCarriers, $pendingSlots)
  3. {
  4.  
  5. });
 

Mais ça perd de son sens imo.


Message édité par koskoz le 13-09-2013 à 09:50:55

---------------
Twitter
n°2202812
masklinn
í dag viðrar vel til loftárása
Posté le 13-09-2013 à 10:48:36  profilanswer
 

Code :
  1. array_walk($pendingMeetings, function(&$value, $key)
  2.        use ($pendingResources, $pendingCarriers, $pendingSlots) {
  3.    // code here
  4. });


?


---------------
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?
mood
Publicité
Posté le 13-09-2013 à 10:48:36  profilanswer
 

n°2204893
koskoz
They see me trollin they hatin
Posté le 01-10-2013 à 14:42:37  profilanswer
 

Sous SF2, mon appli a pas mal de bundles, dans la plupart d'entre eux on retrouve toujours le même select contenant les mêmes choix, avec la même traduction, sauf que je copie/colle ce select de bundle en bundle et me retape la trad pour chaque bundle.
 
Qu'elle serait la bonne pratique ici ? Prévoir une classe de formulaire qui contient ce select, présent dans un bundle générique, puis à chaque fois que j'ai besoin de ce select je créé un formulaire qui étend mon form générique ?


---------------
Twitter
n°2204939
Volkhen
Posté le 01-10-2013 à 17:19:52  profilanswer
 

koskoz a écrit :

Sous SF2, mon appli a pas mal de bundles, dans la plupart d'entre eux on retrouve toujours le même select contenant les mêmes choix, avec la même traduction, sauf que je copie/colle ce select de bundle en bundle et me retape la trad pour chaque bundle.
 
Qu'elle serait la bonne pratique ici ? Prévoir une classe de formulaire qui contient ce select, présent dans un bundle générique, puis à chaque fois que j'ai besoin de ce select je créé un formulaire qui étend mon form générique ?


Ou créer un nouveau type de champ : http://symfony.com/fr/doc/current/ [...] _type.html


---------------
Main/Alt1/Alt2/Alt3
n°2204964
koskoz
They see me trollin they hatin
Posté le 01-10-2013 à 19:04:57  profilanswer
 


 
C'est ce que j'ai fait :jap:


---------------
Twitter
n°2205228
koskoz
They see me trollin they hatin
Posté le 03-10-2013 à 15:40:43  profilanswer
 

Y a rien en PHP et plus particulièrement en Doctrine pour jouer avec Oracle, les curseurs, les connexions, etc ?
 
J'ai un Doctrine Dbal mis en place avec connexions à Oracle, mais à part entrer toutes les requêtes à la main dans un "exec" je ne vois pas comment jouer avec des curseurs hormis en utilisant directement l'extension PHP oci8.


---------------
Twitter
n°2205230
skeye
Posté le 03-10-2013 à 15:44:22  profilanswer
 

koskoz a écrit :

Y a rien en PHP et plus particulièrement en Doctrine pour jouer avec Oracle, les curseurs, les connexions, etc ?
 
J'ai un Doctrine Dbal mis en place avec connexions à Oracle, mais à part entrer toutes les requêtes à la main dans un "exec" je ne vois pas comment jouer avec des curseurs hormis en utilisant directement l'extension PHP oci8.


 
Vouloir utiliser à la fois une couche d'abstraction ET les fonctionnalités spécifiques du SGBD ça me parait un poil contradictoire...[:autobot]


---------------
Can't buy what I want because it's free -
n°2205232
koskoz
They see me trollin they hatin
Posté le 03-10-2013 à 15:52:53  profilanswer
 

skeye a écrit :


 
Vouloir utiliser à la fois une couche d'abstraction ET les fonctionnalités spécifiques du SGBD ça me parait un poil contradictoire...[:autobot]


 
Sait-on jamais.
Ca fait moche en plein milieu du code d'avoir des oci_new_cursor, oci_parse, oci_bind_by_name, oci_execute, etc.


---------------
Twitter
n°2205233
skeye
Posté le 03-10-2013 à 15:55:47  profilanswer
 

koskoz a écrit :


 
Sait-on jamais.
Ca fait moche en plein milieu du code d'avoir des oci_new_cursor, oci_parse, oci_bind_by_name, oci_execute, etc.


 
Je vois pas en quoi ça fait moche...tant que c'est dans des classes dédiées à l'accès aux données.:o


---------------
Can't buy what I want because it's free -
n°2205235
koskoz
They see me trollin they hatin
Posté le 03-10-2013 à 16:28:34  profilanswer
 

skeye a écrit :


 
Je vois pas en quoi ça fait moche...tant que c'est dans des classes dédiées à l'accès aux données.:o


 
Au final la procédure qui renvoyait le curseur servait juste à faire un select, je vais donc le faire directement :o


---------------
Twitter
n°2207712
koskoz
They see me trollin they hatin
Posté le 22-10-2013 à 17:43:17  profilanswer
 

Certaines classes de mon model doivent garder l'état précédent de leurs propriétés pour être utilisées au moment de l'update en base.
 
Ce qui a été fait pour le moment et qui me semble plutôt classique est l'appelle aux setters correspondants pour mettre à jour l'objet puis l'appel à une méthode qui update l'objet en base.
 
C'est quoi la meilleur approche pour mon besoin ?
Une vérification dans le setter du changement ou nom de la valeur de la propriété avec un booléen pour me dire si la valeur a changé ou non ?
Un array qui contient l'état de chacune de mes propriétés avec leur précédente valeur ?
Autre ?
 
Je n'arrive pas à mettre de terme sur ce que j'essaye de faire ou de rechercher. C'est tout bêtement du design oop, de l'architecture oop, autre ?
Vous auriez des ressources à conseiller (j'ai toujours The gang of 4 sur ma reading list) ?


---------------
Twitter
n°2207717
Volkhen
Posté le 22-10-2013 à 18:23:20  profilanswer
 

koskoz a écrit :

Certaines classes de mon model doivent garder l'état précédent de leurs propriétés pour être utilisées au moment de l'update en base.
 
Ce qui a été fait pour le moment et qui me semble plutôt classique est l'appelle aux setters correspondants pour mettre à jour l'objet puis l'appel à une méthode qui update l'objet en base.
 
C'est quoi la meilleur approche pour mon besoin ?
Une vérification dans le setter du changement ou nom de la valeur de la propriété avec un booléen pour me dire si la valeur a changé ou non ?
Un array qui contient l'état de chacune de mes propriétés avec leur précédente valeur ?
Autre ?
 
Je n'arrive pas à mettre de terme sur ce que j'essaye de faire ou de rechercher. C'est tout bêtement du design oop, de l'architecture oop, autre ?
Vous auriez des ressources à conseiller (j'ai toujours The gang of 4 sur ma reading list) ?


Cela ressemble à du memento.
Ton model, une classe stockant un état et un truc fait la gestion des états sans avoir à savoir de quoi c'est constitué.


---------------
Main/Alt1/Alt2/Alt3
n°2207720
Profil sup​primé
Posté le 22-10-2013 à 19:14:37  answer
 

on peut faire des soustractions de deux variables de type date time en php? merci

n°2207723
skeye
Posté le 22-10-2013 à 19:31:15  profilanswer
 


http://www.php.net/manual/en/datetime.diff.php

Message cité 1 fois
Message édité par skeye le 22-10-2013 à 19:31:56

---------------
Can't buy what I want because it's free -
n°2207902
stefaninho
Posté le 24-10-2013 à 09:02:21  profilanswer
 


 
Il se passe quoi sur php.net ?
Google et mon AV me retourne des risques de consultation.
 
Une alternative pour la doc php?  


---------------
Et vous, quel est votre Final Fantasy préféré ?  
n°2207906
koskoz
They see me trollin they hatin
Posté le 24-10-2013 à 09:24:16  profilanswer
 

stefaninho a écrit :


 
Il se passe quoi sur php.net ?
Google et mon AV me retourne des risques de consultation.
 
Une alternative pour la doc php?  


 
Tout va bien chez moi.


---------------
Twitter
n°2207907
kao98
...
Posté le 24-10-2013 à 09:32:14  profilanswer
 

stefaninho a écrit :


 
Il se passe quoi sur php.net ?
Google et mon AV me retourne des risques de consultation.
 
Une alternative pour la doc php?  


J'ai le même problème.
Du coup, http://www.manuelphp.com/


---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98
n°2207914
koskoz
They see me trollin they hatin
Posté le 24-10-2013 à 10:18:16  profilanswer
 
n°2208048
drasche
Posté le 25-10-2013 à 08:36:47  profilanswer
 

koskoz a écrit :

Tout va bien chez moi.


http://arstechnica.com/security/20 [...] h-malware/
 
T'es sûr? [:joce]


---------------
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°2208051
koskoz
They see me trollin they hatin
Posté le 25-10-2013 à 09:29:20  profilanswer
 


 
Quand je dis chez moi, c'est dans la boite où je bosse actuellement [:cosmoschtroumpf]


---------------
Twitter
n°2208074
Profil sup​primé
Posté le 25-10-2013 à 11:23:28  answer
 

Salut,
J'ai un problème en php au niveau de cette ligne (unexpected T_STRING) : $DB->query('INSERT INTO utilisateur VALUES("$tito","$tata","md5($pass)","$toto","$tota","$titi"');

 

L'erreur est où?
Merci

Message cité 1 fois
Message édité par Profil supprimé le 25-10-2013 à 11:24:08
n°2208080
skeye
Posté le 25-10-2013 à 11:37:40  profilanswer
 

Sur cette ligne, ou dans la fonction query()?
 
Ca pue la classe de connexion à la bdd mal branlée qui explose quand on lui passe une chaine avec des guillemets, ton truc.


---------------
Can't buy what I want because it's free -
n°2208082
kao98
...
Posté le 25-10-2013 à 11:39:27  profilanswer
 


Pour que ça fonctionne tel-quel, il faudrait inverser les simples quotes et les doubles quotes.
Et l'appel à la fonction md5 de cette façon, passera pas.

Code :
  1. $DB->query("INSERT INTO utilisateur VALUES('$tito','$tata','" . md5($pass) . "','$toto','$tota','$titi'" );


---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98
n°2208086
skeye
Posté le 25-10-2013 à 11:45:00  profilanswer
 

kao98 a écrit :


Pour que ça fonctionne tel-quel, il faudrait inverser les simples quotes et les doubles quotes.
Et l'appel à la fonction md5 de cette façon, passera pas.

Code :
  1. $DB->query("INSERT INTO utilisateur VALUES('$tito','$tata','" . md5($pass) . "','$toto','$tota','$titi'" );


 

La fonction md5() existe peut-être sur son sgbd (https://dev.mysql.com/doc/refman/5.5/en/encryption-functions.html#function_md5 ).:o

 

Et si le problème était le non fonctionnement de la requête il n'arriverait pas avec une "unexpected T_STRING". Son erreur est un problème de parsing de son code PHP, du genre point virgule manquant à la ligne précédente, quote ou double quote non échappé dans une chaine de caractère, etc...

 

Cela dit ça sent fort la non-maitrise de la connexion à la base, et si tout va bien de belles possibilités d'injection SQL.:o

Message cité 2 fois
Message édité par skeye le 25-10-2013 à 11:46:22

---------------
Can't buy what I want because it's free -
n°2208087
kao98
...
Posté le 25-10-2013 à 11:46:54  profilanswer
 

skeye a écrit :


 
La fonction md5() existe peut-être sur son sgbd (https://dev.mysql.com/doc/refman/5.5/en/encryption-functions.html#function_md5 ).:o
 
Et si le problème était le non fonctionnement de la requête il n'arriverait pas avec une "unexpected T_STRING". Son erreur est un problème de parsing de son code PHP, du genre point virgule manquant à la ligne précédente, quote ou double quote non échappé dans une chaine de caractère, etc...
 
Cela dit ça sent fort la non-maitrise de la connexion à la base, et si tout va bien de belles possibilités d'injection SQL.:o


Merde, suis nul sur ce coup là. J'ai lu trop vite  :whistle:


---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98
n°2208088
Volkhen
Posté le 25-10-2013 à 11:46:56  profilanswer
 

skeye a écrit :


 
La fonction md5() existe peut-être sur son sgbd (https://dev.mysql.com/doc/refman/5.5/en/encryption-functions.html#function_md5 ).:o
 
Et si le problème était le non fonctionnement de la requête il n'arriverait pas avec une "unexpected T_STRING". Son erreur est un problème de parsing de son code PHP, du genre point virgule manquant à la ligne précédente, quote ou double quote non échappé dans une chaine de caractère, etc...


Et plus généralement, du md5 pour les mots de passe et des requêtes créées à l'arrache au lieu de passer par des requêtes paramétrées c'est dégueulasse.


---------------
Main/Alt1/Alt2/Alt3
n°2208090
skeye
Posté le 25-10-2013 à 11:47:52  profilanswer
 

Volkhen a écrit :


Et plus généralement, du md5 pour les mots de passe et des requêtes créées à l'arrache au lieu de passer par des requêtes paramétrées c'est dégueulasse.


Voilà.
Mais c'est pas comme si j'avais la journée à passer à expliquer à un débutant qu'il fait tout de travers.:o


---------------
Can't buy what I want because it's free -
n°2208093
kao98
...
Posté le 25-10-2013 à 11:49:24  profilanswer
 

Volkhen a écrit :


Et plus généralement, du md5 pour les mots de passe et des requêtes créées à l'arrache au lieu de passer par des requêtes paramétrées c'est dégueulasse.


 

skeye a écrit :


Voilà.
Mais c'est pas comme si j'avais la journée à passer à expliquer à un débutant qu'il fait tout de travers.:o


 
C'est pour ça que j'avais mis "pour que ça fonctionne tel-quel", je cautionne pas non plus cette ligne de code ! :o


---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  60  61  62  ..  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-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)