LupusMic

  • Signature
    Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
  • Site web
  • Nombre de sujets
    26
  • Nombre de messages
    1 684
  • Nombre de commentaires
    4
  • Nombre de news
    Aucune
  • Niveau en PHP
    Gourou

Ses derniers messages sur les forums

LupusMic
le 14/04/2008 à 20:07
Requete WHERE avec plusieurs BETWEEN ?
(vitchi) Arf, misère, je n'avais pas vu que tu faisais des affectations avec l'opérateur de comparaison ^^; D'ailleurs, personne ne l'avait vu, je crois.

Habituellement on fait l'erreur dans l'autre sens :)
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 14/04/2008 à 20:03
Aide MySQL PHP gestion des dates
(tigre168) Que tu ais trouvé des couillons pour faire un boulot bâclé et mal fait, tant mieux pour toi.

En ce qui concerne la politesse, je n'ai fait que répondre à ta suffisance par la mienne. C'est malheureux, mais j'ai tendance à m'emporter quand on me prend pour un chien.

Et maintenant, en parlant de ma compétence. Tu devrais éviter de juger des experts, alors que tu n'est pas capable de construire la moindre phrase cohérente. Ce qui peut être inquiétant, puisque le métier de programmeur comporte une très grande portion littéraire (et ce n'est pas qu'une question de documentation).
D'ailleurs, constatant ceci, il n'est point étonnant que tu ne trouve la solution à un problème trivial, même si la logique métier que tu tentes d'implémenter est incorrecte.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 14/04/2008 à 13:04
Aide MySQL PHP gestion des dates
(Keika) Le problème n'est pas aussi simple. Le nouveau, qui exige sans correction, oublie beaucoup de choses.

1 - il ne précise pas le pays d'aplication des congés.

Je pense que c'est la France, puisqu'il écrit dans un français mal dégrossit, et qu'il ne s'en excuse pas (moi, quand j'écris sur un forum anglophone, je précise que je suis francophone et que j'en suis désolé).
Cependant...

2 - il ne précise pas la convention collective, et semble ignorer les accords d'entreprise. En fonction de ces éléments, le comptage des jours de congés varit. Les jours de congés sont décompter tantôt des jours ouvrés (variant en fonction de l'activité), tantôt des jours œuvrés.

3 - il y a des jours fériés, chômés, qui peuvent ne pas être les mêmes selon la région. Je pense particulièrement à l'Alsace et la Moselle, qui bénéficient de deux jours de congés supplémentaires spécifiques (le Vendredi Saint et la St Étienne).

4 - un jour de congé est associé à un jour de la semaine (sur 5 semaines de congés payés, on ne peut poser plus de 5 lundis).

Enfin, ce qui m'a surtout énervé, c'est que le nouveau semble être un stagiaire, qui n'a aucune notion de programmation ni de droit, à qui on a demandé de faire quelque chose qui est, en apparence simple. Ce genre d'exploitation est tout simplement inacceptable, et je ne peux croire qu'on peut accepter de se plier à ce types de pratiques.

Enfin bon, j'ai tendance à m'enflammer face à ce genre de situations.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 14/04/2008 à 01:38
Aide MySQL PHP gestion des dates
Tu veux peut-être aussi cent balles et un mars ? En complément de cours de français ?
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 13/04/2008 à 12:57
vider les champs après click sur un boutton.
Et que ce passe-t-il quand JS est désactivé ?

C'est une mauvaise idée que de vider les champs à la soumission, et d'interdire la soumission des données.

Et puis bon, il y a des choses qui ne donnent pas envie d'aider, tellement ce n'est pas dans la philosophie du Web : « Site optimisé pour Internet Explorer avec une résolution de 1024 x 768 pixels. »
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 11/04/2008 à 22:53
Requete WHERE avec plusieurs BETWEEN ?
Concernant ta requête, je ne sais pas. Il n'y en avait pas :) Je pinaille, mais en fait, on ne peut rien voir quand la requête est saussissonnée, et surtotu quand on a pas le contenu des variables qui la compose.

Vu que ce sont des tests que tu fais, tu devrais afficher la requête SQL, pour voir ce qui a été réellement soumis à la base de données.

Je n'aime pas * parce que ça ne me permet pas de créer un comportement fiable. C'est pratique quand tu consultes une base SQL à la main, mais pas dans un programme.

Pour en revenir à l'ébauche de requête que je te propose. Tu auras remarqué que j'utilises le champ 'is_published'. Ce champ est l'équivalent de ton publication="oui", en plus propre. À noter qu'il faut donc supprimer le champ 'publication', et créer un champ 'is_published' de type booléen. Enfin, tu fais comme tu le sens ;)
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 11/04/2008 à 20:07
Mutiplication des champs Javascript
(zebden) Pâques est derrière nous, les cloches sont parmis nous :-D

Enfin, avec tout ça j'ai fait peur à evans.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 11/04/2008 à 17:44
Requete WHERE avec plusieurs BETWEEN ?
Plusieurs remarques d'ordre générales :
- like est à bannir
- il faut tester la requête manuellement avant de l'intégrer au PHP
- il ne faut pas construire la requête à l'exécution
- isset est un faux ami, il faut lui préférer array_key_exists
- faut savoir si tu as besoin de nettoyer les données soumises avant de les injecter dans ta base.
- l'usage du sélecteur universel * peut dégrader les performances de la requête.
- si on utilises une constante numérique, il y a de forte chance qu'elle changera dans le temps (le nivellement des prix par exemple).
- die() n'est pas à utiliser en production
- du code qui est copié-collé à de forte chances de pouvoir être factorisé (en écrivant une fonction générique par exemple)

<?php

define(SQL_SELECT_OFFERS, <<<EOS
select * from offers
where is_published
and type='%s'
and ville_offre in(%s)
and prix between %d and %d
and surface between %d and %d
EOS;
) ;

/** @param $soumis array paramètres de recherche
* @return array retourne un tableau des tuples résultant de la recherche
*/
function chercher($soumis)
{
if(array_key_exists('budget_min', $soumis)
$budget_min = is_null($soumis['budget_min'])
? 0
: $soumis['budget_min'] ;
else
die('Pas de budget min soumis') ;

if(array_key_exists('budget_max', $soumis)
$budget_min = is_null($soumis['budget_max'])
? 9999
: $soumis['budget_max'] ;
else
die('Pas de budget max soumis') ;

$villes = array() ;
if(array_key_exists('ville_1', $soumis)
$ville_1[] = is_null($soumis['ville_1'])
? 'sin city'
: $soumis['ville_1'] ;
else
die('Pas de budget max soumis') ;

// ... vérification des autres champs

$sql = sprintf(SQL_SELECT_OFFERS, $type, implode(',', $villes), $budget_min, $budget_max, $surface_min, $surface_max) ;

// exec du SQL

return $resultats ;
}

$resultats = chercher($_POST) ;


?><!-- Su ce site, la coloration syntaxique des bouts de code PHP n'est prise en compte que si tu entoure ton code comem dans un script PHP -->


C'est un exemple très perfectible, pour essayer de te donner quelques éléments pour avancer. Et il n'y a jamais une seule solution en programmation.

Ne copie-colle pas bêtement, on apprend rien sans réflexion ©.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 10/04/2008 à 15:12
Nouvelle Section !
M'excuser d'avoir été génial ? Haha... argh... mais sors de ce corps esprit dégénéré... arghh...
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LupusMic
le 10/04/2008 à 15:10
Mutiplication des champs Javascript
J'ai un gros problème en ce moment, je me suis remis au C++ et je réfléchis beaucoup à tout un tas de trucs à base de design patterns. Du coup, j'arrête pas de pisser des pavés pour libérer mon esprit.

Alors forcément, je ne me retiens plus :p
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
LoadingChargement en cours