LA GLOBULE

Inscris le 25/09/2002 à 10:40
  • Site web
  • Nombre de sujets
    47
  • Nombre de messages
    8 345
  • Nombre de commentaires
    142
  • Nombre de news
    8 346
  • Niveau en PHP
    Excellent

Ses derniers messages sur les forums

LA GLOBULE
le 06/08/2009 à 12:56
Affichage piece jointe sur une page php
Je n'utilise pas PEAR personnellement, donc je ne connais pas vraiment la classe Mail_mimeDecode :/

Mais si tu fais un print_r de $message, en théorie, tu verras toutes les propriétés de l'objet (ta proriété 'bla' me laisse perplexe).
LA GLOBULE
le 05/08/2009 à 18:36
Probleme affichage
Peut etre que tu n'as qu'une personne qui appartient à une team non ?

Si tu veux lister tous les membres, même ceux sans team, fais un LEFT JOIN.
LA GLOBULE
le 05/08/2009 à 18:34
Les cookie
Avec juste le code que tu nous montres, non, cela ne fonctionnera pas.

Rapellons le principe :
- au moment où la personne se logue, il te faut initialiser un cookie
- sinon, quand tu as une personne qui n'est pas loguée, si elle a ce cookie, tu la logues

Dans ton code, qu'as tu fais ?
=> tu as initialisé deux cookies quand le visiteur n'est pas logué (if(!isset($_SESSION['login']))) :
- un cookie de nom 'pseudo' contenant la chaine de caractères 'login'
- un cookie de nom 'pass' contenant la chaine de caractères 'pass'

2 erreurs :
- il faut créer un cookie quand la personne est loguée et non quand elle n'est pas logué
- en valeur de cookie, il faut mettre un truc qui te permette de reconnaitre l'identitié du visiteur. Prenons ton exemple : un visiteur va sur ton site, son cookie à la valeur 'login'. Ce n'est pas avec cette information que tu vas savoir qu'il s'agit du membre "duchmol".

Attention aussi à ne pas juste mettre le nom du membre en cookie. En effet, rien de plus simple que de construire un cookie et ainsi de se faire passer pour un autre membre.
Dans ce genre de cookie, il faut mettre un code qui a priori est indevinable pour un être humain (pas l'id du membre, pas son pseudo, etc.) mais qui te permettra d'identifier à coup sur un membre.

Personnellement, sur lephpfacile, dans ce cookie, il s'agit d'un md5 du pseudo du membre concaténé avec un "grain de sel" (il s'agit d'une petite chaine de caractères invariable que moi seul connait). Comme tous les pseudos du site sont différents, je suis sur de l'unicité de ce cookie et de ne pas confondre deux membres.
LA GLOBULE
le 05/08/2009 à 18:20
Champ select multiple - problème insertion valeur dans BDD MySql
Je n'ai pas lu ton code.

En effet, 500 lignes de code (ca serait cool d'essayer d'isoler le problème :p) sans utiliser le BB-Code, personnellement, je ne lis plus. A ce propos, merci de lire les conditions d'utilisation des forums.

Mais pour un select multiple, il faut que les options soient "activées" pour pouvoir les récupérer. Et le plus simple, c'est de donner un name du genre name="toto[]" à ton select.
Comme cela, tu récupéreras les values des options de ton select dans le tableau $_GET['toto'] ou $_POST['toto'].

PS : en utilisant la fonction "recherche" de mon navigateur, je n'ai pas trouvé de select multiple dans ton code
LA GLOBULE
le 04/08/2009 à 21:46
Livre d'or
Il te faut utiliser la fonction stripslashes lors de l'affichage de tes données.
LA GLOBULE
le 04/08/2009 à 18:21
Fonction de ce code
Mais alphanumérique, ca veut dire lettres ET chiffres.

Donc a priori le comportement est correct.

Et mysql_escape_string ne fait qu'échapper les données que tu injectes dans une requete SQL, cela ne peut pas fausser un test alphanumérique.

Ce que je veux dire c'est que tu as 2 phases distinctes lors du déroulement du code :
- une phase ou tu testes tes données (message d'erreur ou non)
- une phase où tu fais ton insert SQL, et la tu utilises mysql_escape_string pour te protéger des injections SQL
LA GLOBULE
le 04/08/2009 à 14:16
Fonction de ce code
Je ne suis pas sur de comprendre ton soucis, et je ne vois pas trop le rapport avec mysql_escape_string.

Le control alpha numérique n'est plus valide. Ce qui veut dire que je peux ajouter des chiffres au login et au mot de passe.


Le controle alphanumérique se fait avant de faire ton mysql_escape_string, donc il n'y a pas de lien.
D'autre part, les chiffres sont considérés comme valides avec la fonction ctype_alnum. Pour t'en convaincre, fais un simple test du genre :

<?php
$pom = 'polom1';

if (ctype_alnum($pom)) echo 'alnum';
else echo 'pas alnum';
?>


Et lorsque j'envoie le mot de passe : ' or 1=1--, là j'ai une alerte qui me dit que le mot de passe doit être alphanumérique.


Ce qui est logique car l'espace ou les tirets ne sont pas considérés comme valides.

En effet, prenons l'exemple suivant :

<?php
$pom = ' or 1=1--';

if (ctype_alnum($pom)) echo 'alnum';
else echo 'pas alnum';
?>


Le résultat est 'pas alnum'.
LA GLOBULE
le 04/08/2009 à 14:06
Synchronisation de données entre deux bureaux
Je ne connais pas bien les ETL, mais il n'y a pas de raison qu'un truc aussi évolué ne soit pas capable d'importer 2 fois par jour un "diff" remettant à jour un stock de données.
LoadingChargement en cours