【发布时间】:2016-01-03 13:38:58
【问题描述】:
所以,我想做的是:我有 pageA.php 来获取用户的姓名、姓氏和问题保存到数据库(使用表单和 Jquery)。我在另一个表中显示这些问题(由“技术团队”用来回答这些问题。我想在我回答后立即在技术团队页面中显示问题,并在 pageA 中显示答案.php。我已经尝试了几件事,但还没有完全正确。
这是我不太确定的 sql 查询:
$Ssql = "UPDATE questions SET Qstatus=1
WHERE answers.customerName=users.name
FROM users, answers
INNER JOIN users
ON answers.userID=users.userID;";
我想要做的是,在回答问题时将 Qstatus 更改为 1。 0 = 未回答,1 = 已回答。第一页询问详情。
这是我使用 ATM 将数据插入数据库并在问题得到解答时更新的代码。
if ($_POST)
{
$staffName = test_input($_POST['staffName']);
$customerName = test_input($_POST['customerName']);
$answer = test_input($_POST['answer']);
try
{
$host = '127.0.0.1';
$dbname = 'webapp';
$user = 'root';
$pass = '';
$DBH = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
}
catch (PDOException $e)
{
echo "An error occurred saving your details. Please, try again!";
}
$sql = "INSERT INTO `answers` (`staffName`, `customerName`, `answer`) VALUES (?,?,?);";
$sth = $DBH->prepare($sql);
$sth->bindParam(1, $staffName, PDO::PARAM_INT);
$sth->bindParam(2, $customerName, PDO::PARAM_INT);
$sth->bindParam(3, $answer, PDO::PARAM_INT);
$sth->execute();
$Ssql = "UPDATE questions SET Qstatus=1 WHERE answers.customerName=users.name FROM users, answers INNER JOIN users ON answers.userID=users.userID;";
$Ssth = $DBH->prepare($Ssql);
$Ssth->execute();
}
我正在努力解决的问题是如何将 Qstatus 更改为 1,当问题被回答时,以及如何在有可用答案时触发在 pageA.php 中显示包含所有答案的表格。希望这是可以理解的,并且非常感谢所有可能的帮助!谢谢!!
【问题讨论】:
-
您可以尝试运行查询并立即看到存在语法错误。你在这个问题上付出了很多努力;尝试会容易得多。
-
嗨,戈登。就像我之前提到的,我尝试过,但它并没有像我想要的那样工作。这就是为什么我在这里问其他人是否可以发现错误或更好的方法来做到这一点。如果我知道该怎么做或有什么问题,我就不会寻求帮助,不是吗?无论如何,谢谢。
标签: javascript php jquery mysql database