Aller au contenu

joboy84

Webmaster Régulier
  • Compteur de contenus

    91
  • Inscrit(e) le

  • Dernière visite

Tout ce qui a été posté par joboy84

  1. Bonjour, Je souhaite mettre un gestionnaire d'erreurs personnalisé en place, et je bloque sur certains points... Par soucis de simplicité, j'ai simplifié mon code, qui normalement ajoute les données dans une base (cette partie fonctionne). <?php function GestionErreur($code, $msg, $file, $line) { $heureBug = date("h:i:s"); $urlbug = $_SERVER['SCRIPT_URI']; $verifErreur = mysql_query('SELECT id FROM GestionErreurs WHERE lien="'.$urlbug.'" AND fichier="'.$file.'" AND ligne="'.$line.'"'); if($errno == 'E_NOTICE' || $errno == 'E_USER_NOTICE') { $Niveau = 'Basse'; echo"basse"; } if($errno == 'E_ERROR' || $errno == 'E_CORE_ERROR' || $errno == 'E_COMPILE_ERROR' || $errno == 'E_USER_ERROR') { $Niveau = 'Haute'; echo"haut"; } if($errno == 'E_WARNING' || $errno == 'E_PARSE' || $errno == 'E_CORE_WARNING' || $errno == 'E_COMPILE_WARNING' || $errno == 'E_USER_WARNING') { $Niveau = 'Moyenne'; echo"moyenne"; } if($Niveau == '') { $Niveau = 'Inconnu'; echo"inconnu"; } echo'Priorité:'.$Niveau; // Arret execution du script die(); } // On définit notre gestionnaire d'erreur personnalisé set_error_handler('GestionErreur'); ?> Le problème rencontré est celui de définir le niveau d'alerte pour le bug. Par exemple, j'ai généré volontairement une erreur E_USER_NOTICE: "Undefined index:nomSiteJeux", ou indiqué une variable n'existant pas..et cela m'indique tout le temps: Priorité Inconnu! ...Alors qu'a priori ce serait "Basse". De plus, si j'oubli par exemple un point virgule, cela me renvoie: Parse error: syntax error, unexpected T_VARIABLE in /home/www/503c69a9a240068c8059ec652aefc53b/web/liste-des-jeux.php on line 115 Pourtant en début de page j'ai mis error_reporting(0); ! Pourquoi me renvoie t-il l'erreur? S'agit t'il d'un autre type d'erreur? Merci
  2. Bonjour, J'ai déjà vu sur certains site qu'il est impossible de s'identifier 2 fois. Je m'explique: -Je me connecte en tant que membre avec firefox sur un site. -Tout en restant connecté avec firefox, je tente de me connecter une seconde fois avec Internet explorer. => Cela affiche un message que je suis déjà connecté! J'aurai besoin d'un système identique, qui soit indique que la personne est déjà connectée, soit supprime l'autre session. Pourriez vous me mettre sur la voie? Qu'en pensez vous? MErci
  3. J'ai donc fais un petit tour et j'ai remarqué que toutes les visionneuses d'autosurf ont une structure de lien qui est ainsi: -http://www.xxxxx.com/view.php?id=1621- -http://www.xxxx.com/surf.php?id=8142- -http://www.xxxx.com/surf.php- -http://xxxx.net/surf.php- -http://www.xxxxx.com/auto4credits.php- -http://www.xxxxx.com/manual4credits.php- -http://www.xxx.com/members/choicesurf.php- -http://xxxx.com/Surf/Regular.php?ID=135- -http://xxxx.com/Surf/Manual.php?ID=135- On remarquera que la fin des liens contient toujours: view.php surf.php auto4credits.php manual4credits.php choicesurf.php Regular.php Manual.php Est il possible par htaccess ou autre, de bloquer les sites visitant le mien, qui contiennent ces données dans leurs url? Quels sont vos moyens de bloquer les autosurf? merci
  4. Merci pour votre aide Je sais que la caisse d'epargne propose le systeme...Mais si une personne paie avec une maestro volée ou avec une visa/mastercard d'un pays étranger, serais je également couvert? Sinon, afin d'éviter les impayés, je me suis dit que je peux procéder de la facon suivante: Si le membre ne désire pas payer par virement, mais par cb, on lui demande le nom et prénom du détendeur de la carte. Ensuite on envoie un code à l'adresse postale du membre. Avant d'effectuer les paiements, le membre devra entrer le code recu par courrier postal. Je pense que ceci devrait prouver que c'est bien lui qui paie, car une personne qui aurait dérobée le numéro de cb, ne disposerait à priori pas du code envoyé par la poste... Qu'en pensez vous?
  5. Bonjour, Je gère un portail de jeux en ligne et je souhaite intégrer une boutique de vente de codes recharge à utiliser sur divers sites de jeux. Le panier moyen devrait se situer autour de 5 euros. J'ai étudier un peu les moyens de paiements etc, et le moins onéreux serait un contrat VAD avec une banque d'après ce que j'ai pu voir. Je sais qu'il y a un grand risque d'impayés pour la vente de codes recharge (cartes volées). Après avoir cherché un peu, j'ai lu que si on souscrit au programme 3DSecure, en cas de contestation, ce ne sera pas au commercant, mais à la banque de supporter le montant. Pouvez vous confirmer cela? Merci
  6. ok merci pour ces précisions Pour bloquer les robots, j'ai pensé vérifier si le temps de navigation d'une page à l'autre est strictement identique x fois de suite, on peut considérer que c'est un robot et on banni... Par contre, comment puis je bloquer les autosurfs? Car j'ai cherché une solution, la seule que j'ai trouvé était d'insérer un code javascript. <script LANGUAGE="JavaScript" type="text/javascript"> if (top.frames.length!=0) top.location=self.document.location; break; </script> Par contre je viens d'essayer si cela fonctionnait en ajoutant ladite page sur abcvisiteurs.com mais cela n'a pas détecter la frame... Merci
  7. Bonjour Jacques et merci pour ton aide En fait je souhaite stocker la durée globale de connection d'un membre par mois. Donc pour le calcul pas de problèmes, si je comprends bien, il suffit de développer un script qui sera présent sur toutes les pages du site et qui calculera la différence de temps de navigation entre 2 pages. (avec les vérifications qui s'imposent: variable déjà initialisée, y a t il déjà une durée dans la base...) Par contre, comment savoir si la personne est "active"? Car elle pourrait rester sur une page toute la nuit, puis continuer de naviguer le matin... J'ai pensé fixer une certaine durée par page. On a pas besoin de plus de 15 minutes pour lire un peu de texte, donc si la durée de navigation entre 2 pages est supérieure à 15 minutes, on ne comptabilisera que 15 minutes. Est ce une bonne solution? Sinon, se poser le problème des éventuels robots qui risqueraient d'apparaître, et qui simuleraient une navigation...Comment les détecter? Sur ce sujet je ne suis pas expert et j'ai besoin de vos lueurs... Merci
  8. Bonjour Je souhaite savoir s'il est possible de créer un script en php, permettant de calculer la durée de connection d'un membre? Il faudrait calculer le temps de connection uniquement si le membre est actif, c'est à dire qu'il navigue sur le site...(c'est pour une sorte de carte de fidélité). Sinon y a t il une variable globale du serveur qui contiendrait cette durée? Si php n'est pas adapté, vers quel langage me tourner? merci
  9. Bonjour, Je souhaite intégrer sur mon site un systeme de notation étoilé. J'étais tombé sur un script: Unobtrusive AJAX Star Rating Bar (http://masugadesign.com/the-lab/scripts/un...tar-rating-bar/) Il est simple d'installation...Bref parfait pour quelqu'un qui ne s'y connait pas en ajax ou javascript. Après avoir recherché, j'ai vu qu'il s'agissait soit disant du meilleur script, mais qu'il comportait apparemment beaucoup de failles (anciens articles). Ils ont arrêté le projet en mars 2007 et j'ai donc peur d'installer un script comportant des failles. Pourriez vous me dire si elles sont toujours d'actualité ou me donner un autre script de notation étoilé avec base de données en ajax? Merci Jo
  10. Bonjour, Merci pour vos réponses A ce que j'ai pu voir Tynimce sait aussi gérer les CSS... C'est uniquement pour l'interface des administrateurs. Bonne continuation
  11. Bonjour, Je souhaite implanter un script WYSIWYG afin de creer ou modifier mes pages directement en ligne. Il en existe de nombreux, mais lequel est le mieux, où devrais je dire le plus respectueux des standard du web? J'avais trouvé: http://cutesoft.net/ASP.NET+WYSIWYG+Editor...CFRJhnAodXD7bRQ http://tinymce.moxiecode.com/ Merci Jo
  12. Oups...Effectivement...Suis pas très logique aujourd'hui...Je vais retourner me coucher lol Merci encore
  13. Ce que je demande: SELECT idbanniere FROM LogBanniere WHERE Pseudo="'.$_SESSION['pseudo'].'" Selectionne le champ idbanniere de la Table LogBanniere dont le Pseudo=$_SESSION['pseudo'] AND nbAffichage <=100 OR Clic="Oui" GROUP BY idbanniere ET dont le nombre d'affichages est inférieur ou égal à 100 OU dont la valeur du champ "Clic" est "Oui" Enfin c'est comme ca que je comprends ma requête... Ce que je veux c'est qu'il affiche l'id quand il y a soit plus de 100 affichages, soit la valeur Oui dans le champ Clic...
  14. Bonjour J'ai un problème avec une de mes requêtes et je ne sais pas d'où elle provient...Celà fait 2 heures que je cherche! Voici la bébête lol : <?php $AfficherBanniere = mysql_query('SELECT idbanniere FROM LogBanniere WHERE Pseudo="'.$_SESSION['pseudo'].'" AND nbAffichage <= "100" OR Clic="Oui" GROUP BY idbanniere') or die ('erreur: '.mysql_error()); ?> Après avoir effectué plusieurs tests, il semblerai que si le champ Clic contient la valeur Oui, c'est pris en compte, par contre si le champ nbAffichage contient plus de 100 entrées, ce n'est pas pris en compte. En effet, j'ai fais un script qui demande de m'afficher les id des bannières correspondants à la requête. J'ai une première bannière avec le champ "Clic=Oui", "nbAffichage=12" et il me retourne l'id, puis une autre bannière dont le champ "Clic=Non" mais "nbAffichages=120". Dans le 2ème cas, il y a bien plus de 100 affichages et il devrait me retourner l'id mais il n'en est rien... Merci pour votre aide
  15. Bonjour , J'ai 2 ou 3 questions que je me pose... Lorsqu'on utilise mysql_real_escape_string pour protéger ses variables, doit on également utiliser addslashes? Sinon, j'aimerai faire un script de suivi des clics sur mes bannières. Je sais qu'il faut créer une page intermédiaire, qui enregistrera le clic et qui redirigera vers le site...mais je ne sais pas trop quelle méthode utiliser pour la redirection...Pourriez vous me donner une piste ou un lien vers un tuto ou un script desquels je pourrais m'inspirer? Par contre, pour le suivi des clics sur des bannières, comment cela se passe t-il avec des bannieres flash?? Merci
  16. Effectivement Merci encore
  17. joboy84

    Erreurs sur les jointures

    Bonjour, Je suis face à un dilemme...Je dois utiliser une jointure pour le première fois et je n'y parviens pas. Je souhaite mettre en place un système de pagination. J'ai les données à extraire dans la table ListeApercuJeux, et je souhaite afficher les données en les classant par note. En effet, mes membres peuvent noter des sites de jeux. Je souhaiterai donc afficher en premier, les sites ayant obtenus la meilleure note. Voici la structure de mes tables: CREATE TABLE IF NOT EXISTS `ListeApercuJeux` ( `NomSiteJeux` varchar(20) character set latin1 collate latin1_general_ci NOT NULL, `DescriCourte` varchar(300) character set latin1 collate latin1_general_ci default NULL, `LienHttp` varchar(110) character set latin1 collate latin1_general_ci default NULL, `LienImg` varchar(90) character set latin1 collate latin1_general_ci default NULL, `DateInsertion` date NOT NULL default '0000-00-00', `Sponsor` varchar(20) character set latin1 collate latin1_general_ci default NULL, `Statut` varchar(9) character set latin1 collate latin1_general_ci default NULL, PRIMARY KEY (`NomSiteJeux`) ) ENGINE=MyISAM; CREATE TABLE IF NOT EXISTS `SystemeDeVote` ( `NomSiteJeux` varchar(20) NOT NULL, `nbre_de_votes` int(9) NOT NULL default '0', `nbre_total_points` int(9) NOT NULL default '0', `moyenne` float NOT NULL, PRIMARY KEY (`NomSiteJeux`) ) ENGINE=MyISAM; La note est contenue dans le champ moyenne de la table SystemeDeVote. Je pense que la jointure doit se faire avec le champ NomSiteJeux qui contient le nom du site de jeux... <?php $calcul_nbre_enregis = mysql_query('SELECT COUNT(*) AS total FROM listejeux'); $donnees = mysql_fetch_assoc($calcul_nbre_enregis); $nbre_total = $donnees['total']; // => contient le nombre d enregistrements //Nombre de résultats à afficher par page $nombre = 4; //Nous allons maintenant compter le nombre de pages à générer. $nombreDePages=ceil($nbre_total/$nombre); // On calcul la première entrée à lire $premiereEntree=($pageActuelle-1)*$nombre; // La requête sql pour récupérer les messages de la page actuelle. $liste_pagination = mysql_query('SELECT NomSiteJeux, DescriCourte, LienHttp, LienImg FROM ListeApercuJeux ORDER BY moyenne DESC LIMIT '.$premiereEntree.', '.$nombre.''); ?> Je sais que ma requête ci-dessus est erronée. Je ne m'en sort pas avec left join, inner join... J'ai fait la chose suivante: <?php // La requête sql pour récupérer les messages $retour_messages=mysql_query('SELECT ListeApercuJeux.NomSiteJeux, ListeApercuJeux.DescriCourte, ListeApercuJeux.LienHttp, ListeApercuJeux.LienHttp, ListeApercuJeux.LienImg, SystemeDeVote.moyenne WHERE ListeApercuJeux.NomSiteJeux = SystemeDeVote.NomSiteJeux ORDER BY SystemeDeVote.moyenne DESC LIMIT '.$premiereEntree.', '.$nombre.''); while($donnees_messages=mysql_fetch_assoc($retour_messages)) ?> Je ne sais pas si c'est bien fait ainsi...mais j'ai un message d'erreur: Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource... Svp aidez moi, je désespère!
  18. Au moins tu auras eu de la chance Souvent ils ne lâchent pas aussi facilement l'affaire... En tout cas je suis content pour toi Bonne continuation
  19. Bonjour, Je ne voudrais pas du tout être rabat joie, mais il est très difficile de se débarrasser de ces personnes. Ayant un site donc la clientèle n'est que constitué de webmasters, j'en connais un rayon sur cette problématique. En bloquant le pays, ils se connecteront à travers des proxies (si ce n'est pas déjà le cas), et la ils passeront ton filtre. Même avec mon service anti-proxy, les clients ayant des sites de petites annonces (par ex) n'ont pas réussi à se débarasser totalement de ces personnes. Ils ont certes, plus que 2 à 8 annonces par jours par rapport à une quarantaine auparavant, mais cela ne s'arrête pas... Une solution supplémentaire que certains ont mis en place, et qui fonctionne, est de filtrer les annonces. En général leurs messages sont tous du même genre et les mots sont répétés...Dès que tu as une annonce contenant le mot abidjan, 1000000$, virement, aidez-moi etc...tu met l'annonce en attente de validation... Maintenant je ne sais pas si ton site est un site de petites annonces... En tout cas je te souhaite vraiment beaucoup de courage! Jo
  20. Ah oui effectivement cela fonctionne! Je savais pas qu'en html le / indiquait la racine pour les navigateurs... Merci encore
  21. bonjour et merci En fait mon problème est: Supposons que j'ai une structure qui est la suivante: Dossier www (dossier racine) || => Dossier includes (présent dans le dossier www) || => Dossier Bons plans (présent dans le dossier www) || => Dossier Codes de réductions (présent dans le dossier bons plans) || => Dossier Argent internet (présent dans le dossier bons plans) Supposons que j'ai un fichier nommé menugauche.php dans le dossier "includes". Ce fichier contient le menu avec des liens du type <a href="bonsplansdumoment.php"></a>. La page en question est dans le dossier bons plans Si j'inclus ce menu dans la page bonsplans.php présent dans le dossier "bons plans", cela fonctionnera. Par contre si j'inclus ce menu dans la page codeReduc.php présent dans le sous-dossier "Codes de réductions", le lien renverra vers un fichier inexistant car il faudrait faire <a href="../bonsplansdumoment.php"></a> Donc le seul moyen est soit de faire un autre menu pour les sous dossiers, soit de mettre les liens sous la forme <a href=&quot;http://www.monsite.fr/bonsplans/bonsplansdumoment.php"></a> Car si je comprends, je ne peux pas faire <a href="/home/~nick/public_html/bonsplans/bonsplansdumoment.php"></a> C'est bien cela? Quelle solution privilégier? merci
  22. Bonjour, Jusqu'à présent, j'utilisais toujours des liens relatifs et absolus sur mes sites: <a href="mondossier/mapage.html"></a> ou include('/home/username/www/fonctions/mafonction.php') Actuellement je suis en train de faire une découpé de mon site, de facon à avoir les menus dans un fichier séparé. Ainsi, si je dois faire une modification, je n'ai qu'un fichier a éditer et non pas toutes les pages... PAr contre mon site est structuré en dossiers selon les rubriques et sous rubriques. -Bons plans (rubrique) || => codes de réductions (sous rubrique) || => argent internet Le problème est donc que si j'inclus un fichier contenant des images ou des liens, ceux ci ne seront pas dirigé vers le bon fichier selon qu'ils soient dans un dossier ou sous dossier. La solution la plus simple serait donc de faire des liens du type: <a href=&quot;http://monsite.fr/mondossier/mapage.html"></a> au lieu de <a href="mondossier/mapage.html"></a> Par contre je me demande si cela consommerait plus de ressources ou si cela est moins sécurisé? Si la réponse à ces 2 questions devait être non, pourquoi n'utilise t-on pas toujours ces liens ? (portabilité?) merci
  23. Bonjour, Je suis en train de faire une refonte de mon site et je pense à optimiser mes bases par la même occasion. Je m'intéresse de près à InnoDB que je pourrais utiliser à la place de MyIsam pour certaines de mes tables, notamment pour la suppression des données membres en cascade. D'après ce que j'ai pu lire à gauche et à droite, si je comprends bien, il est préférable d'utiliser InnoDB sur les tables à fortes requêtes de type: INSERT, UPDATE et DELETE. Par contre pour les select, MyIsam serait plus recommandé car plus performant au dessus de 4 thread... Est ce bien cela? Ma base contient entre autre les tables: membres: toutes les infos sur les membres (requetes insert/update la plupart du temps) Bannieres: contient les codes des bannieres de pubs (Beaucoup de requetes select) 1)Dans ce cas, je devrais plutôt utiliser InnoDB sur ma table membres et MyIsam sur la table bannières? 2)Ma table membres contient environs 30 champs. Serait il plus judicieux de créer plusieurs table est de mettre des jointures? Par exemple, ne garder que les coordonnées: nom, prenom, date de naissance, sexe et e-mail dans la table membre, puis faire une autre table pour le solde de points du membre, puis une autre pour ses centres d'intérêts... De même, d'une manière générale, qu'est ce que cela apporte de couper une table en plusieurs "morceaux"? Y a t il un gain de performance? 3) J'ai du mal à comprendre une chose dans les structures de bases de données. En général, on crée toujours un champ "id" qui est en auto incrémentation et en primary key. Je ne vois pas l'intérêt de ce champ? Car si je fais des requêtes en demandant toujours de comparer par rapport au pseudo (select nom from membres where pseudo=$pseudo), y a t-il un intérêt d'avoir le champ id en indiquant un index sur le champ pseudo et en le rendant unique? Merci pour ces éclaircissement Bonne journée Merci Jo
  24. joboy84

    Les sessions

    En gros, si je comprends bien, je dois faire un truc du genre: Dans mon espace admin, si je banni l'utilisateur toto, je fais un update dans la base en changeant son statut à "banni". Puis je mets sur toutes les pages un script du genre <?php $testban = mysql_query('SELECT statut FROM membres WHERE pseudo=toto') or die (mysqlerror()); $extraction = mysql_fetch_array($testban); $valeur = $extraction["statut"]; if($valeur=banni) { session_destroy(); echo'Vous êtes banni!'; } ?> Je pense que c'est ca? En tout cas merci encore
×
×
  • Créer...