我得到了一个项目,并且没有传递给数据库。但是排除了仅为城邦国家保留的html结构。我的代码如下所示。请注意我有国家州城市的单独表格。我正在使用 WAMP 服务器。
============Database conn=============
<?php
$db= mysqli_connect('localhost', 'root','' , 'test' );
if(!$db) {
echo mysqli_error($db);
return;
}
echo 'Connection OK';
?>
=============Table - cust ================
`SNo`, `Customer Id`, `Card`, `First Name`, `Last Name`, `Gender`, `DOB`, `Age`, `Mobile`, `Address`, `Email Id`, `C Type`, `RefrenceId`, `Country`, `State`, `City`, `entry_date`
==========================
<?php
include_once('db.php');
session_start();
if(isset($_POST['submit'])) {
$CustomerID = mysqli_real_escape_string($db ,$_POST['cid']);
$Card = mysqli_real_escape_string($db ,$_POST['ccode']);
"
"
"
"
$City = mysqli_real_escape_string($db ,$_POST['city']);
$sql = "INSERT INTO cust
VALUES('','$CustomerID','$Card','$FirstName','$LastName','$Gender','$DOB','$Age','$Mobile','$Address','$EmailId','$Ctype','$RefrenceId','$Country','$State','$City','".date("Y-m-d")."')";
$query = mysqli_query($db,$sql);
if(!$query)
echo mysqli_error();
else
echo "<script> alert('Data inserted Successfully');
</script>"; header('location:ow.php');
}
?>
===============================================
<?php
include_once('db.php');
$DB_host = 'localhost';
$DB_user = 'root';
$DB_pass = '';
$DB_name = 'db';
try
{
$DB_con = new PDO("mysql:host={$DB_host};dbname={$DB_name}",$DB_user,$DB_pass);
$DB_con->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch(PDOException $e)
{
$e->getMessage();
}
?>
<form action="new_1.php" method="post" name="a" onsubmit="return validateForm();"><table width="102%" border="0">
<thead>
<input type="text" name="cid" class="text-input" value="<?php echo $rw; ?>" AUTO_INCREMENT="on" readonly="true" />
<input type="text" name="ccode" class="text-input" value="<?php echo $number; ?>" readonly="readonly"/>
<input type="text" name="fname" id="fname" class="text-input" onchange="toTitleCase(this)" />
<input type="text" name="lname" id="lname" class="text-input" onchange="toTitleCase(this)" />
<select name="gen" >
<option value="Male">Male</option>
<option value="Female">Female</option>
</select>
<input type="text" id="dob" name="dob" class="tcal tcalinput" onfocus="test();" onblur="setAge();" onkeyup="this.onblur();" onpaste="this.onblur();" oninput="this.onblur();" value="<?php echo date("Y-m-d"); ?>"/>
<input type="text" name="mob1" class="text-input" maxlength="10" />
<textarea name="add" style="height:22" ></textarea>
<select id="ctype" name="ctype" style="width:36mm" >
<option value="Select">Select</option>
<option value="Student">Student</option>
<option value="Employee">Employee</option>
<option value="Doesn'tMatter">Doesn'tMatter</option>
<option value="Accounting,Banking,Finance">Accounting,Banking,Finance</option>
</select></td>
<input type="text" id="refno" name="refno" class="text-input"/>
<td>Country</td>
<td><span class="desc1">
<select name="country" class="country">
<option selected="selected">--Select Country--</option>
<?php
$stmt = $DB_con->prepare("SELECT * FROM country");
$stmt->execute();
while($row=$stmt->fetch(PDO::FETCH_ASSOC))
{
?>
<option value="<?php echo $row['country_id']; ?>"><?php echo $row['country_name']; ?></option>
<?php
}
?>
</select></td>
<td>State</td>
<td><span class="desc1">
<select name="state" class="state">
<option selected="selected">--Select State--</option>
</select></td></tr>
<tr>
<td>City</td>
<td><span class="desc1">
<select name="city" class="city">
<option selected="selected">--Select City--</option>
</select> </td> </tr>
<input type="submit" id="submit" name="submit" value="Submit"></td>
</form>
答案 0 :(得分:0)
$sql = "INSERT INTO cust VALUES('','$CustomerID','$Card','$FirstName','$LastName','$Gender','$DOB','$Age','$Mobile','$Address','$EmailId','$Ctype','$RefrenceId','$Country','$State','$City','".date("Y-m-d")."')";
在这部分中,您不应该在所有php变量中添加引号($ country,$ Address等) 否则,您将传递文字 - &#39; $ something&#39;而不是$ something的值
这是一个例子。
$sql = "INSERT INTO cust VALUES("
.$Mobile
.")";
答案 1 :(得分:0)
echo $ sql并尝试直接在mysql中运行。注意:在mysqli_error($ db)中传递连接变量($ db);例如,(!$ query)echo mysqli_error($ db);
和
'SNo'是自动增量列吗?如果是,那么使用下面的类型插入语句
$sql = "INSERT INTO cust (`Customer Id`, `Card`, `First Name`, `Last Name`, `Gender`, `DOB`, `Age`, `Mobile`, `Address`, `Email Id`, `C Type`, `RefrenceId`, `Country`, `State`, `City`, `entry_date`) VALUES('$CustomerID','$Card','$FirstName','$LastName','$Gender','$DOB','$Age','$Mobile','$Address','$EmailId','$Ctype','$RefrenceId','$Country','$State','$City','".date("Y-m-d")."')";`