正如标题所说,我无法在MySQL(我使用mysqli)中插入联系表单(使用Bootstrap)。下面是我的PHP脚本:无法使用php&bootstrap表格插入数据到MySQL中
<?php
$conn = mysqli_connect('localhost', 'root', 'mypassword', 'mydbname');
if (!$conn) {
echo "Error: Unable to connect to MySQL." . PHP_EOL;
echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
exit;
}
if(isset($_POST['submit'])){
$sql = mysqli_query($conn, "INSERT INTO `contacts` (`firstName`, `lastName`, `dayOfBirth`, `phone`, `gender`, `email`) VALUES('".$_POST['firstName']."', '".$_POST['lastName']."', '".$_POST['birthday']."', '".$_POST['phone']."', '', '".$_POST['email']."')");
}
mysqli_close($conn);
?>
,下面将我的联系形式使用引导:
<div class="container">
<div class="row">
<h2>Contact Form</h2>
<form class="form-horizontal" method="POST">
<div class="form-group">
<label class="control-label col-xs-2">First Name:</label>
<div class="col-xs-10">
<input type="text" class="form-control" name="firstName" placeholder="First Name">
</div>
</div>
<div class="form-group">
<label class="control-label col-xs-2">Last Name:</label>
<div class="col-xs-10">
<input type="text" class="form-control" name="lastName" placeholder="Last Name">
</div>
</div>
<div class="form-group">
<label class="control-label col-xs-2">DoB:</label>
<div class="col-sm-6 col-md-2">
<div class="input-group date" id="birthday">
<input type="text" class="form-control" name="birthday">
<span class="input-group-addon"> <span class="glyphicon glyphicon-calendar"></span> </span> </div>
</div>
</div>
<div class="form-group">
<label class="control-label col-xs-2">Phone/Mobile:</label>
<div class="col-xs-10">
<input type="text" class="form-control" name="phone" placeholder="Phone/Mobile">
</div>
</div>
<div class="form-group">
<label class="control-label col-xs-2">Gender:</label>
<div class="col-xs-10">
<label class="radio-inline">
<input type="radio" name="gender" value="M">
Male</label>
<label class="radio-inline">
<input type="radio" name="gender" value="F">
Female</label>
</div>
</div>
<div class="form-group">
<label class="control-label col-xs-2">Email:</label>
<div class="col-xs-10">
<input type="email" class="form-control" name="email" placeholder="Email">
</div>
</div>
<div class="form-group">
<div class="col-xs-offset-2 col-xs-10">
<button type="submit" class="btn btn-primary" name="submit" value="Submit">Submit</button>
</div>
</div>
</form>
</div>
</div>
好像$conn
都没有问题,我可以连接到数据库没有错误,但查询可以有问题。提交时,没有数据被插入到数据库中,但是,它不显示错误。
而且,如果需要的话,在数据库中的所有列允许NULL
,我也有1个科拉姆命名id
(这是AUTO_INCREMENT),并提醒,我要插入的phpmyadmin,不MySQL的。任何人都可以帮我找出有什么问题吗?
P/s:我正在使用wampserver,如果它确实很重要。
P/s 2:发现错误!
phpMyAdmin是一个到MySQL的Web界面 - 所以插入是一个MySQL语句,并将数据放到数据库中,在这里你可以用phpMyAdmin查看它。尝试在phpMyAdmin界面中运行语句以查看它是否可以在那里使用。 – user2182349
而不是猜测问题,你可以检查'mysqli_query()'的结果,并使用'mysqli_error()'显示一个错误。你也开放注射攻击。请参阅http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php/60496#60496 – Tristan
@ user2182349:是的,我在phpmyadmin inferface中使用插入SQL查询,它可以通常将数据添加到数据库中,但在使用表单时无法正常工作。 Tristan:我没有使用真正的服务器,所以暂时不关心验证或攻击。 – Shizuka