所以基本上我收到了这个错误:
"您的SQL语法出错了;检查与您的MySQL服务器版本相对应的手册,以获得正确的语法,以便在不可避免的地方使用。
这是一种可以而且必须克服的不公正。当我们给o'在第1行"我正在尝试将关于我们的页面变为textarea以获取数据库中的所有信息,并允许用户更新将其发送到数据库的信息。我已经为主页做了这个,它使用相同的代码工作得很好。这是我收到错误的代码..
<?php
include('../connect.php');
session_start();
if(!isset($_SESSION['csc2024_40104547']))
{
header("Location: login.php");
}
$id = $_POST['id'];
$h1 = $_POST['h1'];
$h2 = $_POST['h2'];
$h3 = $_POST['h3'];
$h4 = $_POST['h4'];
$h5 = $_POST['h5'];
$h6 = $_POST['h6'];
$li1 = $_POST['li1'];
$li2 = $_POST['li2'];
$li3 = $_POST['li3'];
$li4 = $_POST['li4'];
$li5 = $_POST['li5'];
$li6 = $_POST['li6'];
$li7 = $_POST['li7'];
$p1 = $_POST['p1'];
$p2 = $_POST['p2'];
$p3 = $_POST['p3'];
$p4 = $_POST['p4'];
$p5 = $_POST['p5'];
$p6 = $_POST['p6'];
$vid1 = $_POST['vid1'];
$vid2 = $_POST['vid2'];
$vid3 = $_POST['vid3'];
$vid4 = $_POST['vid4'];
$query = "Update about123 set h1='$h1',p1='$p1',p2='$p2',li1='$li1',li2='$li2',li3='$li3',li4='$li4',li5='$li5',li6='$li6',li7='$li7',h2='$h2',h3='$h3',vid1='$vid1',p3='$p3',h4='$h4',vid2='$vid2',p4='$p4',h5='$h5',vid3='$vid3',p5='$p5',h6='$h6',vid4='$vid4',p6='$p6' WHERE id='$id'";
$display = mysql_query($query) or die(mysql_error());
答案 0 :(得分:-2)
你应该为每个$ _POST []元素使用mysql_real_escape_string()。否则像撇号和引号之类的东西会破坏你的查询。例如:
$id = mysql_real_escape_string($_POST['id']);