尝试存储PHP PDO消息时未定义的变量

时间:2015-04-13 20:41:28

标签: php pdo

我有一个名为$message的变量,它在执行操作时输出消息内容,以便向用户提供一些反馈但是我不断从PHP得到undefined variable错误。

它真的很奇怪,因为有时它工作正常,有时它只返回错误信息。谁能告诉我我做错了什么。

要确认,这是一个纯粹用于存储消息的变量。这不是" POSTED'从表格。它在PHP文件本身内生成。

其用法示例:

<?php

session_start();

include "../includes/db_conx.php";

try
{
   $db_conx = new PDO("mysql:host=$mysql_hostname;dbname=$mysql_dbname", $mysql_username, $mysql_password);

   $db_conx->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

   $username = $_SESSION['username'];

   $sql = $db_conx->prepare("SELECT username, user_record_id FROM login_details
    WHERE username = :username");

   $sql->bindParam(':username', $username, PDO::PARAM_STR);

   $sql->execute();
   $user_record_id = $sql->fetchColumn(1);

   $proposal = $_POST['proposal_id'];

   $insertRec = $db_conx->prepare("INSERT INTO student_saved (proposal_id, user_record_id) VALUES (:proposal, :user_record_id)");

   $insertRec->bindParam(':user_record_id', $user_record_id, PDO::PARAM_STR);
   $insertRec->bindParam(':proposal', $proposal, PDO::PARAM_STR);
   $insertRec->execute();

   $message = "<p class='text-success'> Proposal Added To Your Favourites <span class='glyphicon glyphicon-ok'/></p>";
}

catch(Exception $e)
{
    if( $e->getCode() == 23000)
    {
        $message = 'This proposal has already been saved to your favourites';
    }
    else
    {
        $message = $e->getMessage();
    }
}

die($message);
?>

非常感谢任何帮助!

0 个答案:

没有答案