【发布时间】:2014-09-26 13:49:55
【问题描述】:
我正在尝试发送一组变量并使用 PDO 插入到我的数据库中,但是当我运行该页面时,我得到一个空消息框并且页面上没有发生任何事情。
这就是我获取用户输入的方式。
<div class="caption1" contentEditable ="plaintext-only" id="edit1a">
<P> COMPANY ON AMAZON WANTS YOU TO TEST </BR> AND REVIEW IT’S PRODUCT!</P>
index.html
<button id="save">Click to Save</button>
<script type="text/javascript">
$(document).ready(function(argument) {
$('#save').click(function(){
// Get edit field value
$edit1a = $('#edit1a').html();
$edit2a = $('#edit2a').html();
$edit3a = $('#edit3a').html();
$edit4a = $('#edit4a').html();
$edit5a = $('#edit5a').html();
$edit6a = $('#edit6a').html();
$edit7a = $('#edit7a').html();
$edit8a = $('#edit8a').html();
$edit9a = $('#edit9a').html();
$edit10a = $('#edit10a').html();
$edit11a = $('#edit11a').html();
$.ajax({
url: 'get.php',
type: 'post',
data: {edit1: $edit1a, edit2: $edit2a, edit3: $edit3a, edit4: $edit4a, edit5: $edit5a, edit6: $edit6a, edit7: $edit7a, edit8: $edit8a, edit9: $edit9a, edit10: $edit10a, edit11: $edit11a,},
datatype: 'html',
success: function(rsp){
alert(rsp);
}
});
});
});
</script>
get.php
<?php
//configuration
$host = "localhost";
$name = "lpages";
$user = "root";
$pass = "****";
//connection
$odb = new PDO("mysql:host=".$host.";dbname=".$name,$user,$pass);
//new data
if(isset($_POST['edit1a'])){
$edit1 = $_POST['edit1a'];
$edit2 = $_POST['edit2a'];
$edit3 = $_POST['edit3a'];
$edit4 = $_POST['edit4a'];
$edit5 = $_POST['edit5a'];
$edit6 = $_POST['edit6a'];
$edit7 = $_POST['edit7a'];
$edit8 = $_POST['edit8a'];
$edit9 = $_POST['edit9a'];
$edit10 = $_POST['edit10a'];
$edit11 = $_POST['edit11a'];
$q = "INSERT INTO webpages1(edit1, edit2, edit3, edit4, edit5, edit6, edit7, edit8, edit9, edit10, edit11)
values (:edit1, :edit2, :edit3, :edit4, :edit5, :edit6, :edit7, :edit8, :edit9, :edit10, :edit11);";
$query = $odb->prepare($q);
$results = $query->execute(array(
":edit1"=>$edit1,
":edit2"=>$edit2,
":edit3"=>$edit3,
":edit4"=>$edit4,
":edit5"=>$edit5,
":edit6"=>$edit6,
":edit7"=>$edit7,
":edit8"=>$edit8,
":edit9"=>$edit9,
":edit10"=>$edit10,
":edit11"=>$edit11
));
}
?>
我对使用 PDO 还很陌生,所以我可能遇到了格式问题
【问题讨论】:
-
-
您的 php 没有输出任何类型的响应。您的 js 也可能有错误(如果这些字段是表单元素,您将在表单元素上使用
.val()而不是.html(),或者更好的是.serialize()) -
最终,如果您为表单显示了一些 html 标记,您将获得更好的问题答案
-
它可能是变量,我让它工作只是使用这种方法传递 1 个变量,但我也只使用基本的 msql php。此外,这些值不是以表单形式提交的,我使用 ajax 将变量发送到 get.php。
-
我添加了一行我如何获取用户输入的内容。它是存储到 ID 的 contentEditable 字段。
标签: javascript php pdo