Save all currently accumulated repository changes as a backup snapshot for Gitea so no local work is lost.
86 lines
2.8 KiB
PHP
86 lines
2.8 KiB
PHP
<?php
|
||
/**
|
||
* Проверка комментариев через прямой mysqli (на случай проблем с PearDatabase)
|
||
* Вызов: https://crm.clientright.ru/scripts/check_replay_raw.php?contact_id=392299
|
||
*/
|
||
error_reporting(E_ALL);
|
||
ini_set('display_errors', '1');
|
||
header('Content-Type: text/plain; charset=utf-8');
|
||
|
||
chdir(dirname(__DIR__));
|
||
require_once 'config.inc.php';
|
||
|
||
$contact_id = isset($_GET['contact_id']) ? (int)$_GET['contact_id'] : 392299;
|
||
|
||
// Прямое подключение к БД
|
||
$mysqli = new mysqli($dbconfig['db_hostname'], $dbconfig['db_username'], $dbconfig['db_password'], $dbconfig['db_name']);
|
||
$mysqli->set_charset('utf8');
|
||
|
||
if ($mysqli->connect_error) {
|
||
die("Ошибка подключения: " . $mysqli->connect_error);
|
||
}
|
||
|
||
$stmt = $mysqli->prepare("
|
||
SELECT m.modcommentsid, m.commentcontent, m.related_to, m.channel, m.customer, m.userid,
|
||
e.smownerid, e.deleted, e.setype, e.createdtime
|
||
FROM vtiger_modcomments m
|
||
INNER JOIN vtiger_crmentity e ON e.crmid = m.modcommentsid
|
||
WHERE m.related_to = ?
|
||
ORDER BY m.modcommentsid DESC
|
||
LIMIT 10
|
||
");
|
||
|
||
$stmt->bind_param('i', $contact_id);
|
||
$stmt->execute();
|
||
$result = $stmt->get_result();
|
||
|
||
echo "Комментарии для contact_id={$contact_id} (через mysqli):\n";
|
||
echo str_repeat('=', 70) . "\n\n";
|
||
|
||
if ($result->num_rows === 0) {
|
||
echo "❌ Записей НЕТ.\n";
|
||
exit;
|
||
}
|
||
|
||
echo "✅ Найдено записей: {$result->num_rows}\n\n";
|
||
|
||
$i = 0;
|
||
while ($row = $result->fetch_assoc()) {
|
||
echo "--- Запись #{$i} ---\n";
|
||
echo "modcommentsid: {$row['modcommentsid']}\n";
|
||
echo " deleted: " . ($row['deleted'] ?? 'NULL') . "\n";
|
||
echo " setype: {$row['setype']}\n";
|
||
echo " channel: " . ($row['channel'] ?? 'NULL') . "\n";
|
||
echo " smownerid: {$row['smownerid']}\n";
|
||
echo " customer: {$row['customer']}\n";
|
||
echo " userid: {$row['userid']}\n";
|
||
echo " createdtime: {$row['createdtime']}\n";
|
||
echo " text: " . mb_substr($row['commentcontent'], 0, 60, 'UTF-8') . "...\n";
|
||
echo "\n";
|
||
$i++;
|
||
}
|
||
|
||
// Проверка modcommentscf
|
||
$stmt2 = $mysqli->prepare("
|
||
SELECT m.modcommentsid
|
||
FROM vtiger_modcomments m
|
||
LEFT JOIN vtiger_modcommentscf c ON c.modcommentsid = m.modcommentsid
|
||
WHERE m.related_to = ? AND c.modcommentsid IS NULL
|
||
LIMIT 10
|
||
");
|
||
$stmt2->bind_param('i', $contact_id);
|
||
$stmt2->execute();
|
||
$result2 = $stmt2->get_result();
|
||
|
||
echo str_repeat('=', 70) . "\n";
|
||
if ($result2->num_rows > 0) {
|
||
echo "⚠️ ВНИМАНИЕ: Комментарии БЕЗ строки в vtiger_modcommentscf: {$result2->num_rows}\n\n";
|
||
while ($row = $result2->fetch_assoc()) {
|
||
echo " - modcommentsid: {$row['modcommentsid']}\n";
|
||
}
|
||
} else {
|
||
echo "✅ Все комментарии есть в vtiger_modcommentscf.\n";
|
||
}
|
||
|
||
$mysqli->close();
|