View Single Post
  #1  
Old 09-09-2008, 11:16 AM
karlm's Avatar
karlm karlm is offline
 
Join Date: Jul 2006
Location: England
Posts: 447
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default capture user-agent upon registration / email it to admins

Hello folks,

I'm having problems from a troll who is able to use rotating proxies or similar to get through IP bans.

A co-admin has suggested I devise a bit of code to capture the user-agent on the signup page. Here's his post:

Quote:
It's the same Ontario troll again. It's very difficult for me to keep him off the forum if the registration form bypasses the post screening. Also we need to store the user agent string when somebody registers. Now you can only check if the member happens to be online.

The simplest way would be to include a little piece of code in the right place that sends an email to one or more admins when a new member registers.

I'm using bola as a prefix to avoid conflict with existing variables.

Code:
$bola_username = "...";
$bola_useragent = "...";

$bola_to      = 'my@mywebsite.com';
$bola_subject = 'member registration';

$bola_body  = "new member:  $bola_username \r\n";
$bola_body .= 'ip address:  ' . $_SERVER['REMOTE_ADDR'] . "\r\n";
$bola_body .= 'user-agent:  ' . $bola_useragent;

$bola_headers = 'From: registration@mysite.com' . "\r\n" .
           'BCC: bola@mysite.net';

mail($bola_to, $bola_subject, $bola_message, $bola_headers);
Obviously the variables $bola_username and $bola_useragent need to be initialized with the values that the forum software has stored.
As I explained to my co-admin, bola, this is way over my head and I wouldn't know where to start.

Is anyone able to give me a bump start on this?

Cheers ahead!
Reply With Quote
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01154 seconds
  • Memory Usage 1,767KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD_SHOWPOST
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)bbcode_code
  • (1)bbcode_quote
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_box
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • reputationlevel
  • showthread
Included Files:
  • ./showpost.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showpost_start
  • bbcode_fetch_tags
  • bbcode_create
  • postbit_factory
  • showpost_post
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • showpost_complete