【发布时间】:2018-07-19 01:08:16
【问题描述】:
我是一个新手,试图为我自愿参与的非营利组织做这个网站。大部分代码都是从 You Tube 中收集的。下面是代码。数据库名称是 cani 表是联系方式。当我提交时不会给我成功消息,数据库中没有显示任何数据,并且它不会返回到 newentry.php。我的脑子好痛!
<?php
if (isset($_POST['submit'])){
include_once('dbh.inc.php');
$type = mysqli_real_escape_string($conn, $_POST['type']);
$first = mysqli_real_escape_string($conn, $_POST['first']);
$last = mysqli_real_escape_string($conn, $_POST['last']);
$company = mysqli_real_escape_string($conn, $_POST['company']);
$email = mysqli_real_escape_string($conn, $_POST['email']);
$phone = mysqli_real_escape_string($conn, $_POST['phone']);
$add1 = mysqli_real_escape_string($conn, $_POST['add1']);
$add2 = mysqli_real_escape_string($conn, $_POST['add2']);
$city = mysqli_real_escape_string($conn, $_POST['city']);
$state = mysqli_real_escape_string($conn, $_POST['state']);
$zip = mysqli_real_escape_string($conn, $_POST['zip']);
$sql = "INSERT INTO contact (contact_type, contact_first, contact_last, contact_company, contact_email, contact_phone, contact_add1, contact_add2, contact_city, contact_state, contact_zip) VALUES ('$type', '$first', '$last', '$company', '$email', '$phone', '$add1', '$add2', '$city', '$state', '$zip')";
mysqli_query($conn, $sql);
header("Location: ../newentry.php?Success!");
}else{
header("Location: ../index.html");
exit();
}
?>
Grr 我部分修复了它......现在一切正常,除了数据库中没有显示任何东西......它正在连接,我确保表名是正确的。它说成功。但是当我打开phpAdmin并打开表格时,它是空白的。
【问题讨论】:
-
您仍然容易受到 SQL 注入的攻击。为了您的安全,请使用准备好的陈述。
-
查看 stackoverflow.com/questions/22662488/… 了解如何获取 MySQL 错误的原因。
-
回声 $sql;死();而不是在数据库上运行查询,看看有什么问题
-
记住你和一个菜鸟的谈话......我应该在我的代码中的什么地方插入这个?