fetch(PDO::FETCH_ASSOC)) { -6ren">
gpt4 book ai didi

php - 插入 - php mysql

转载 作者:行者123 更新时间:2023-11-29 06:17:02 25 4
gpt4 key购买 nike

HTML

            <form action="inc/q/prof.php?pID=<?php echo $the_pID; ?>" method="post">            
<select id="courseInfoDD" name="courseInfoDD" tabindex="1"><?php while($row3 = $sth3->fetch(PDO::FETCH_ASSOC)) {
echo "<option>".$row3['prefix']." ".$row3['code']."</option>"; }echo "</select>"; ?>
<input type="text" id="addComment" name="addComment" tabindex="3" value="Enter comment" />
<input type="hidden" name="pID" value="<?php echo $the_pID; ?>">
<input type="submit" name="submit" id="submit" />
</form>

PHP

$connect = mysql_connect("##", $username, $password) or die ("Error , check your server connection.");
mysql_select_db("###");

//Get data in local variable
if(!empty($_POST['courseInfoDD']))
$course_info=mysql_real_escape_string($_POST['courseInfoDD']);
if(!empty($_POST['addComment']))
$course_info=mysql_real_escape_string($_POST['addComment']);
if(!empty($_POST['pID']))
$the_pID=mysql_real_escape_string($_POST['pID']);

print_r($_POST);
echo $the_pID;

// check for null values
if (isset($_POST['submit'])) {
$query="INSERT INTO Comment (info, pID, cID) values('$the_comment','$the_pID','$course_info')";
mysql_query($query) or die(mysql_error());
echo "Your message has been received";
}
else if(!isset($_POST['submit'])){echo "No blank entries";}
else{echo "Error!";}

?> ?>

表格

commId    int(11)
info text
date timestamp
reported char(1)
degree char(1)
pID int(11)
cID int(11)

它给了我“错误!”现在,我尝试了数据库凭据,它们很好......?并且 r_post() 仍然给出 Array()

的错误

为什么 Array() 不接受值?有人吗???

最佳答案

就像@user551841所说,你会想要限制用他的代码进行sql注入(inject)的可能性。您看到该错误是因为您的代码告诉它在未输入任何内容的情况下回显该错误,这是第一页加载时的情况。在提交完成之前您不需要它。

编辑:抱歉,我假设您直接进入需要 $_POST 数据的页面,而没有通过表单提交。

在尝试将其分配给较少的内容之前,您还应该按照 if(!isset($variable)) 执行一些操作,以免服务器吐出 undefined variable 的错误。

if(!empty($_POST['courseInfoDD']))
$course_info=mysql_real_escape_string($_POST['courseInfoDD']);

对所有人都这样做。

然后你可以检查

if (!isset($user_submitted) && !isset($the_comment) && !isset($course_info) && !isset($the_pID) ){
echo "All fields must be entered, hit back button and re-enter information";
}
else{
$query="INSERT INTO Comment (info, pID, cID) values('$the_comment','$the_pID','$course_info')";
mysql_query($query) or die(mysql_error());
echo "Your message has been received";
}

关于php - 插入 - php mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5851569/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com