Я получаю тайм-аут при выполнении кода ниже. Вот точная ошибка:
Warning: PDO::__construct() [pdo.--construct]: [2002] A connection attempt failed because the connected party did not (trying to connect via tcp://localhost:3306) in D:\xampp\htdocs\logansarchive\admin\articlework.php on line 16
Fatal error: Maximum execution time of 60 seconds exceeded in D:\xampp\htdocs\logansarchive\admin\articlework.php on line 0
Мне кажется, что стоит отметить, что между временем, когда этот DID работал, и когда он не работал, на моем веб-сервере или в этом коде ничего не изменилось.
Вот код, который работает в базе данных:
<?php
$action = $_REQUEST["action"];
$target = $_REQUEST["target"];
$srctitle = $_POST["srctitle"];
$title = $_POST["article_title"];
$cat = $_POST["article_cat"];
$content = $_POST["article_content"];
// Set database server access variables:
$host = "localhost";
$user = "root";
$pass = "root";
$db = "logansarchive";
// Open connection
$dbh = new PDO('mysql:host='.$host.';dbname='.$db, $user, $pass);
$date = date('Y-m-d H:i:s');
switch ($action) {
case "Edit":
$query = $dbh->prepare("UPDATE Articles ".
"SET ArticleTitle = :title, Category = :cat, ArticleDate = :date, ArticleContent = :content ".
"WHERE ArticleTitle = :srctitle");
$query->bindParam(':title', $title);
$query->bindParam(':cat', $cat);
$query->bindParam(':date', $date);
$query->bindParam(':content', $content);
$query->bindParam(':srctitle', $srctitle);
$query->execute();
break;
case "New":
$query = $dbh->prepare("INSERT INTO Articles(Category, ArticleDate, ArticleTitle, ArticleContent) ".
"VALUES(:cat, :date, :title, :content)");
$query->bindParam(':cat', $cat);
$query->bindParam(':date', $date);
$query->bindParam(':title', $title);
$query->bindParam(':content', $content);
$query->execute();
break;
case "Delete":
if ($target != "") {
$query = $dbh->prepare("UPDATE Articles ".
"SET DeletedYN = :del ".
"WHERE ArticleTitle = :title");
$query->bindValue(':del', "Yes");
$query->bindParam(':title', $target);
$query->execute();
}
else {
header("Location: index.php?result=failed");
}
break;
}
header("Location: index.php?result=success");
?>
РЕДАКТИРОВАТЬ 1: Я только что понял, что может сузить причину проблемы.
Код выше - единственная часть сайта, где я использую PDO. Все остальное использует mysql_ * и все работает нормально. Это приводит меня к мысли, что проблема заключается в PDO.