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 20/10/2009 à 12:45
Inclusion de fichier
Ta méthode est logique (personnellement, je mettrais un elseif et un else, et je testerais si le fichier existe, justement pour éviter l'erreur que tu as).

Mais sinon l'erreur dit simplement que PHP ne trouve pas ton fichier, tu as un problème de chemin.

A la vue de l'erreur, je dirais que tu dois faire un :

include ('PV/2001/2001.htm');
LA GLOBULE
le 20/10/2009 à 11:40
Problème d'affichage
Cela veut dire quoi que ton code s'affiche mal ?
Tu pourrais être plus précis ?

Quant au message d'erreur, c'est ton code qui l'affiche ?

Désolé, je n'ai pas lu tes 2600 lignes de code.
LA GLOBULE
le 19/10/2009 à 13:19
comment connaitre les erreurs de mon code?
De quelle erreur parles tu ?

Si il s'agit de parse error, normalement tes yeux doivent les voir à l'ecran.

Pour les notices, cela peut être plus chiant à déceler, donc il te faut relire ton code et voir la où une notice pourrait se déclencher, et surtout pense que toutes les variables que tu utilises, il te faut tester si elles existent avant de les utiliser (surtout en ce qui concerne les super globales : GET / POST / SESSION / COOKIE).
Pour déceler ces erreurs, tu peux utiliser un handler d'erreur perso. en producation (avec la fonction set_error_handler) : à chaque notice déclenchée, tu logues l'erreur en base de données.

En ce qui concerne les failles XSS, il y'a ratproxy (un script python) qui peut t'aider à en trouver.

Sinon, pour tout ce qui est faille de sécurité (ou erreur de conception), seul ton cerveau pourra reéllement les voir. A toi de savoir ce que tu fais, et ce que ton application permet de faire. Le plus important, c'est de filtrer les données recues des visiteurs du site (ex : si un formulaire permet de saisir une date de naissance, assure toi de bien obtenir un truc ressemblant à une date avant de l'exploiter).

En résumé, la programmation, c'est un vrai métier : ce n'est pas parce qu'un code "fonctionne" qu'il est sans défaut, il peut très bien mal fonctionner si les conditions d'envrionnement changent, etc.
LA GLOBULE
le 17/10/2009 à 12:02
Problème de l'access par défault
Moué... tu n'as pas tout compris en fait :)

Sur la page ou le membre se logue, il ne suffit pas de faire :

<?php
$_SESSION['perm'];
?>


Il faut lui donner une valeur à ce $_SESSION['perm'];
Et cette valeur, tu la récupères en base.

Et sur la page membre, apres le define, il faut comparer les valeurs de $_SESSION['perm']; et de NEED_PERM pour savoir si le membre peut ou non accéder à la page : si $_SESSION['perm'] est inférieur à NEED_PERM, tu le rediriges.
LA GLOBULE
le 17/10/2009 à 11:59
personnaliser email avec str_replace
Je t'ai déjà répondu, mais tu as tout fait de travers :/

- Le str_replace, tu dans le faire dans le while
- tu ne dois pas utiliser $adresse[prospect_email] mais $adresse['prospect_email'] (pareil pour $adresse['prospect_nom'])
- le mysql_real_escape_string, tu ne dois pas le faire sur tes variables POST, mais sur les variables de la requete SQL
- il te faut supprimer les \r\n et les \n de $sujet, $mail voir de $membre['membre_pseudo'] et de $membre['membre_email']
LA GLOBULE
le 16/10/2009 à 20:10
personnaliser email avec str_replace
Qu'est ce qui se passe ? Tu as une erreur ? Le mail n'arrive pas ? Le mail arrive alors que rien est remplacé ?

Moi, j'opterais pour la dernière proposition, et je dirais que c'est parce que tu écrases $message avec $_POST[body] après que tu aies fais tes str_replace.

D'ailleurs, ce body, je me demande si tu sais bien ce que tu as écris la.
Car en faisant $_POST[body], tu fais appel à une constante body que tu aurais défini, et en fait, ca irait chercher dans le tableau $_POST l'indice qui aurait la valeur de la constante body.

Or je pense tout simplement que tu souhaites récupérer l'indice body du tableau POST, donc utilise $_POST['body'].

Autres choses en vrac :
- il faut utiliser mysql_real_escape_string dans ta requete SQL
- il te faut virer tous les \r\n et les \n de $sujet et de $mail si tu veux eviter de créer une machine à spam
LA GLOBULE
le 16/10/2009 à 09:50
Problème de l'access par défault
Bon, a priori, tu as ajouté ce champs dans ta table.
Je pars du principe que tu as mis des numéros à tes membres.

Donc, au moment où ton membre se logue, j'imagine que tu initialises une session.
Au moment de ce login, normalement, tu dois faire une requete SQL pour checker si la personne qui se logue existe bien en base.
Et bien, dans cette requete, selectionne en plus ce fameaux champs.

Si la vérification du login est ok (le membre existe bien), colle la valeur de ce champs en session, par ex. dans $_SESSION['perm'].

Ensuite, sur tes pages de membres, il te suffit de déclarer une constante du genre :

<?php
define('PERM_NEED', 5);
?>


(a toi de mettre la valeur que tu veux sur chaque page)

Et la, ben tu compares PERM_NEED et ta valeur en session :
- si la valeur en session est inférieur : la personne ne pas accéder à la page, tu la rediriges vers l'accueil
- si la valeur en dession est supérieur ou égale, tu affiches la page
LoadingChargement en cours