我有以下代码无法正常运行。我想在点击li时向mysql db发布一个值。首先是js文件,第二个是我的php文件。谢谢你的帮助。
的javascript:
function changeIt(){
$("#pagewrap").css({'background-image':'url(/image/HapppsTemplates/BlueTemplates/blueShell.svg)'});
$.ajax({
type: "POST",
url: "templatepost.php",
data: { tempname: "blueShell.svg"}
});
}
templatepost.php:
<?php
header("Location: templatetest.php");
require_once("./source/include/membersite_config.php");
if(!$fgmembersite->CheckLogin())
{
$fgmembersite->RedirectToURL("login.php");
exit;
}
mysql_connect("xxx", "xxx", "xxx") or die(mysql_error());
mysql_select_db("xxx") or die(mysql_error());
$test = $fgmembersite-> UserID();
$template_name = $_POST ['tempname'];
$query = "UPDATE events SET tempname= '".$template_name."' WHERE id_user = '$test'"
or die(mysql_error());
?>
答案 0 :(得分:4)
您实际上从未使用mysql_query
运行查询。
您的代码也非常不安全。您没有转义查询中的POST值。您应该将参数化查询与PDO
或mysqli
一起使用。
$pdo = new PDO('mysql:host=xxx', 'xxx', 'xxx');
$stmt = pdo->prepare('UPDATE xxx.events SET tempname = ? WHERE id_user = ?');
$stmt->execute($template_name, $test);