0
我有問題從我的表單填充到MySQL數據庫的數據。數據來自的形式是demographic.php
併發布到client.php
。我在Apache錯誤日誌或Firefox開發者控制檯中沒有發現錯誤,但是當我查看數據庫時什麼都沒有。我究竟做錯了什麼?數據沒有插入MySQL數據庫
這是調用的client.php
文件。
<?php
require_once("../auth/config.class.php");
require_once("../auth/auth.class.php");
$config = new Config;
$dbh = new PDO("mysql:host=" . $config->dbhost . ";dbname=" . $config->dbname, $config->dbuser, $config->dbpass);
$auth = new Auth($dbh, $config);
$fname = $_POST["fname"];
$lname = $_POST["lname"];
$age = $_POST["age"];
$address = $_POST["address"];
$city = $_POST["city"];
$state = $_POST["state"];
$zip = $_POST["zip"];
$relationship = $_POST["relationship"];
$living = $_POST["living"];
$dmn = $_POST["dmn"];
$dmtel = $_POST["dmtel"];
//Get UID from session class
$uid = $auth->SessionUID($_COOKIE['authID']);
echo $uid;
try{
$dbh->beginTransaction();
$query = $dbh->prepare("INSERT INTO client VALUES (NULL, $uid, $fname, $lname, $age, $living)");
$query->execute();
$cID = $dbh->lastInsertId();
$query = $dbh->prepare("INSERT INTO relationship VALUES (NULL, $uid, $cID, $relationship, $dmn, $dmtel) ");
$query->execute();
$rID = $dbh->lastInsertId();
$query = $dbh->prepare("INSERT INTO address VALUES (NULL, $cID, $address, $city, $state, $zip)");
$query->execute();
$aID = $dbh->lastInsertId();
$dbh->commit();
}
catch(PDOException $e){
$dbh->rollback();
print "Error!: " . $e->getMessage(). "</br>";
}
catch(PDOException $e){
print "Error!: " . $e->getMessage(). "</br>";
}
?>
下面是與數據demographic.php
形式:
<body>
<script>
$(document).ready(function()
{
$("#submit").click(function()
{
var formData = $("#client").serializeArray();
$.ajax(
{
type: "POST",
url: "../pages/client.php",
cache: false,
data: formData,
dataType: 'json',
success: function(login)
{
$('#message').html('<p> code: ' + login.code + '</p>');
$('#message').append('<p> message: ' + login.message + '</p>');
}
});
return false;
});
});
</script>
<div data-role="header">
<h1>IntelyCare</h1>
<a href="../views/careplan.php" data-iconshadow="false" data-icon="carat-1" data-iconpos="" data-rel="" data-ajax="false" class="login">Care Plan</a>
<a href="../pages/logout.php" data-iconshadow="false" data-icon="carat-1" data-iconpos="" data-rel="" data-ajax="false" class="login">Log Out</a>
</div>
<div data-role="main" data-theme="a" class="ui-content">
<div data-role="content" >
<h3> Welcome <strong><?php echo $auth->getSessionUID($_COOKIE[$config->cookiename]); ?></strong></h3>
<br />
<h2> Registration</h2>
<form action="" method="POST" id="client">
<p>Enter information for person receiving care (Clients)</p>
<label for="fname">First Name:</label>
<input type="text" name="fname" placeholder="First Name"/>
<br>
<label for="lname">Last Name:</label>
<input type="text" name="lname" placeholder="Last Name"/>
<br>
<label for="age">Age:</label>
<input type="number" name="age" placeholder="Age"/>
<br>
<label for="address">Address:</label>
<input type="text" name="address" placeholder="Address"/>
<br />
<label for="city">City:</label>
<input type="text" name="city" placeholder="City"/>
<br />
<label for="state">State:</label>
<input type="text" name="state" placeholder="State"/>
<br />
<label for="zip">Zip Code:</label>
<input type="number" name="zip" placeholder="00000"/>
<br/
<label for="relationship" >What's the Relationship to Client</label>
<select name="relationship" id="relationship" data-native-menu="false" >
<option value="Select One" data-placeholder="true">Select..</option>
<option value="Son">Son</option>
<option value="Spouse">Spouse</option>
<option value="Self">Self</option>
<option value="Daughter">Daughter</option>
<option value="Grand Kids">Grand Kids</option>
<option value="Other">Other</option>
</select>
<br />
<label for="living" >What type of living situation</label>
<select name="living" id="living" data-native-menu="false">
<option value="Select One" data-placeholder="true">Select</option>
<option value="Home">Home</option>
<option value="W_Caregiver">Home w/Caregiver</option>
<option value="inlaw">In-Law</option>
<option value="Other">Other</option>
</select>
<br />
<fieldset data-role="controlgroup" data-type="horizontal" >
<legend>Are you the Primary Decision maker?</legend>
<input name="dmy" id="radio-choice-h-5a" value="On" type="radio"/>
<label for="radio-choice-h-5a">Yes</label>
<input name="dmn" id="radio-choice-h-5b" value="Off" type="radio"/>
<label for="radio-choice-h-5b">No</label>
</fieldset>
<br />
<label for="dmtel">Your Phone Number:</label>
<input type="tel" name="dmtel" placeholder="000-000-0000"/>
<br />
<button type="submit" id="submit">Submit</button>
</form>
</div>
</div>
</body>
這工作,感謝您對準備聲明的見解。這是它應該是什麼樣子? '$ query \t = $ dbh-> prepare(「INSERT INTO client VALUES(?,?,?,?,?,?)」);' '$ query-> execute(array(NULL,'$ uid', '$ fname','$ lname','$ age','$ living'));''$ cID = $ dbh-> lastInsertId();' – Keez 2014-09-23 23:46:10
這是一種方法。 :) – 2014-09-24 00:52:56
感謝您的幫助。我可以做什麼樣的退貨聲明來檢查未來的錯誤? – Keez 2014-09-24 01:46:35