【问题标题】:PDO Request Causing 500 Internal Server ErrorPDO 请求导致 500 内部服务器错误
【发布时间】:2010-10-26 23:36:58
【问题描述】:

由于某种原因,我的服务器不欢迎此 PDO 请求。它使服务器抛出 500 内部服务器错误。我所有的其他 PHP 文件都工作正常,我没有更改任何服务器设置。奇怪的是,似乎当我注释掉绑定变量 $u 的行时,它并没有给出 500 错误。我很困惑。

<?php

$u=$_GET["u"];

if ((isset($_POST["MM_update"])) && ($_POST["MM_update"] == "form2")) {
$amount = isset($_POST['amount']) ? $_POST['amount'] : null;
if (null != $amount) {

$user = 'username';
$pass = 'password';
$pdo = new PDO('mysql:host=localhost', $user, $pass);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
session_start();
$tablename = $_SESSION['MM_Username'];
$query = sprintf("UPDATE `%s` SET `stock` = :amount WHERE `itemname` = :u", $tablename);
$stmt = $pdo->prepare($query);
$stmt->bindParam('u', $u);
$stmt->bindParam('amount', $amount);
$stmt->execute();
}
}

?>

【问题讨论】:

  • 错误日志中有什么内容?
  • 在我们说话的时候得到它们。一秒。
  • 这里是错误消息:[Tue Oct 26 17:51:03 2010] [error] [client 127.0.0.1] user 'username' not found: /stats/error_logs/
  • $_SESSION['MM_Username'] 设置为什么?听起来它实际上是“用户名”,所以您的查询开始看起来像 UPDATE username SET stock...

标签: php sql mysql pdo


【解决方案1】:

您的错误日志中将包含一条错误消息,告诉您您的问题。

【讨论】:

    猜你喜欢
    • 2022-01-04
    • 1970-01-01
    • 2013-08-11
    • 2012-03-29
    • 2014-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-20
    相关资源
    最近更新 更多