PHP Classes

File: tests/analyze_working_echomail.php

Recommend this page to a friend!
  Packages of Matthew Asham   Binkterm PHP   tests/analyze_working_echomail.php   Download  
File: tests/analyze_working_echomail.php
Role: Example script
Content type: text/plain
Description: Example script
Class: Binkterm PHP
Bulletin board system based on the Web
Author: By
Last change:
Date: 5 days ago
Size: 3,000 bytes
 

Contents

Class file image Download
<?php

require_once __DIR__ . '/../vendor/autoload.php';

use
BinktermPHP\Database;

echo
"=== ANALYZING WORKING ECHOMAIL ===\n";

// Initialize database
$db = Database::getInstance()->getPdo();

// Get a working echomail message from Awehttam
$stmt = $db->prepare("
    SELECT em.*, ea.tag as echoarea_tag
    FROM echomail em
    JOIN echoareas ea ON em.echoarea_id = ea.id
    WHERE em.from_name = 'Awehttam'
    ORDER BY em.id DESC LIMIT 1
"
);
$stmt->execute();
$workingMessage = $stmt->fetch();

if (!
$workingMessage) {
    echo
"No working message found from Awehttam\n";
    exit(
1);
}

// Get our message that's being treated as netmail
$stmt = $db->prepare("
    SELECT em.*, ea.tag as echoarea_tag
    FROM echomail em
    JOIN echoareas ea ON em.echoarea_id = ea.id
    WHERE em.from_name = 'System Administrator'
    ORDER BY em.id DESC LIMIT 1
"
);
$stmt->execute();
$ourMessage = $stmt->fetch();

if (!
$ourMessage) {
    echo
"No message found from System Administrator\n";
    exit(
1);
}

echo
"=== WORKING MESSAGE (from Awehttam) ===\n";
echo
"ID: " . $workingMessage['id'] . "\n";
echo
"From Address: " . $workingMessage['from_address'] . "\n";
echo
"From Name: " . $workingMessage['from_name'] . "\n";
echo
"To Name: " . $workingMessage['to_name'] . "\n";
echo
"Subject: " . $workingMessage['subject'] . "\n";
echo
"Echoarea: " . $workingMessage['echoarea_tag'] . "\n";
echo
"Date Written: " . $workingMessage['date_written'] . "\n";
echo
"Date Received: " . $workingMessage['date_received'] . "\n";
echo
"Message text (first 200 chars): " . substr($workingMessage['message_text'], 0, 200) . "\n";

echo
"\n=== OUR MESSAGE (from System Administrator) ===\n";
echo
"ID: " . $ourMessage['id'] . "\n";
echo
"From Address: " . $ourMessage['from_address'] . "\n";
echo
"From Name: " . $ourMessage['from_name'] . "\n";
echo
"To Name: " . $ourMessage['to_name'] . "\n";
echo
"Subject: " . $ourMessage['subject'] . "\n";
echo
"Echoarea: " . $ourMessage['echoarea_tag'] . "\n";
echo
"Date Written: " . $ourMessage['date_written'] . "\n";
echo
"Date Received: " . $ourMessage['date_received'] . "\n";
echo
"Message text (first 200 chars): " . substr($ourMessage['message_text'], 0, 200) . "\n";

echo
"\n=== COMPARISON ===\n";
echo
"Address difference: " . ($workingMessage['from_address'] === $ourMessage['from_address'] ? 'SAME' : 'DIFFERENT') . "\n";
echo
"Working from: " . $workingMessage['from_address'] . "\n";
echo
"Ours from: " . $ourMessage['from_address'] . "\n";

echo
"To Name difference: " . ($workingMessage['to_name'] === $ourMessage['to_name'] ? 'SAME' : 'DIFFERENT') . "\n";

// Check if there are any visible control characters in the working message
echo "\n=== HEX ANALYSIS OF WORKING MESSAGE ===\n";
$workingHex = bin2hex(substr($workingMessage['message_text'], 0, 100));
$ourHex = bin2hex(substr($ourMessage['message_text'], 0, 100));

echo
"Working message hex: " . $workingHex . "\n";
echo
"Our message hex: " . $ourHex . "\n";

echo
"\n=== ANALYSIS COMPLETE ===\n";