使用PHP将表单数据插入MYSQL数据库
当从表单中按下“提交”按钮时,我无法将数据插入数据库。我想获取用户输入的值,并将这些值存储在我创建的表中使用PHP将表单数据插入MYSQL数据库,php,mysqli,Php,Mysqli,当从表单中按下“提交”按钮时,我无法将数据插入数据库。我想获取用户输入的值,并将这些值存储在我创建的表中 <?php if(isset($_POST['submit'])){ $email = $_POST['email']; $link = $_POST['link']; $email = $_POST['screenerAmount']; $minutes = $_POST['minutes'];
<?php
if(isset($_POST['submit'])){
$email = $_POST['email'];
$link = $_POST['link'];
$email = $_POST['screenerAmount'];
$minutes = $_POST['minutes'];
$comments = $_POST['comments'];
//insert into table
$sql = "INSERT INTO test_myFilm (email, link, screeners, minutes, comments)
VALUES ('$email', '$link','$screenerAmount', '$minutes','$comments')";
if (mysqli_query($conn, $sql)) {
header('Location: submit_ThankYou.php' );
} else {
echo "Error: " . $sql . "
" . mysqli_error($conn);
}
mysqli_close($conn);
}
?>
在提交页面中检查
$\u POST['submit']
时,将提交按钮更改为input
。看看这是否适合你
<input type="submit" class="button_type" value="submit" name='submit'>Submit</input>
提交
感谢您的回复@sauhardnc。不幸的是,这对meThis不起作用
的作用与@kmoser的作用相同,但实际上并非如此。是的,他们都将提交表单,但$\u POST['xyz']
不会给出任何值,因为它不是输入字段。@sauhardnc在POST消息中提供值不必是输入字段。@sauhardnc任何
或
具有name
属性的都将导致其name
和值被发布,例如:
在功能上与
相同。您说您正在使用Javascript验证值,但没有显示该代码。请创建一个包含重现问题所需的所有内容的应用程序。听起来您的JavaScript正在阻止提交。请学习如何正确使用mysqli。更好的方法是学习PDO。在这里可以找到好文章:我相信这e.preventDefault()代码>阻止提交我将其复制到一个文件中,它对我有效。
const form = document.querySelector('.submit-film');
const emailPattern = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
const linkPattern = /(https?:\/\/(?:www\.|(?!www))[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\.[^\s]{2,}|www\.[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\.[^\s]{2,}|https?:\/\/(?:www\.|(?!www))[a-zA-Z0-9]+\.[^\s]{2,}|www\.[a-zA-Z0-9]+\.[^\s]{2,})/;
form.addEventListener('submit', e=> {
e.preventDefault();
//validation
const email = form.email.value;
if (emailPattern.test(email)){
true;
console.log(form.email.value);
} else if (email === ""){
alert("Please submit your email address so we can get in contact with you.")
false;
} else {
alert("You have entered an invalid email address!");
false;
}
const link = form.link.value;
if (linkPattern.test(link)){
true;
console.log(form.link.value);
} else if (link===""){
alert ("Please input a link to your project. If you do not have a link to your project simply input 'no link'");
false;
} else {
alert("Please input a valid URL for your film. Youtube, Google Drive, and Vimeo work great. If you are still having trouble email contact@entholigy.com for help.");
false;
}
const screenerAmount = form.screenerAmount.value;
if (screenerAmount==="" || screenerAmount.value === null){
alert("Please let us know how many screeners you want.");
} else {
console.log(form.screenerAmount.value);
}
// const foo = form.foo.value;
// console.log(foo);
const minutes = form.minutes.value;
if (minutes==="" || minutes.value === null){
alert("Please let us know how long your film is (in minutes)");
} else {
console.log(form.minutes.value);
}
console.log(form.comments.value);
});
const now = new(Date);
console.log(now);
<input type="submit" class="button_type" value="submit" name='submit'>Submit</input>