将结果从pdo发送到ajax时遇到问题
我想要做的是,如果用户成功注册pdo将提供信息并将其发送到ajax,并且如果用户已注册,则ajax将发送消息。 我把这个条件放在我的pdo中后工作正常,现在它不再插入,ajax告诉“错误注册用户!” 每时每刻。
脚本:
$(document).ready(function() { $('#submit').click(function (e) { e.preventDefault(); var data = {}; data.name = $('#name').val(); data.age = $('#age').val(); data.gender = $('#gender').val(); data.address = $('#address').val(); data.image = $('#imgInp').val(); $.ajax({ type: "POST", url: "user.php", data: data, cache: false, success: function (response) { if (Number(response) == 1) { alert("User successfully registered"); } else { alert("Error registering user!"); } } }); return false; }); });
user.php的:
setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $name = @$_POST['name']; $age = @$_POST['age']; $address = @$_POST['address']; $gender = @$_POST['gender']; $imageName = @$_FILES['image']['name']; $q = "INSERT INTO students(name, age, address, gender, imageName ) VALUES(:name, :age, :address, :gender, :image)"; $query = $dbc->prepare($q); $query->bindParam(':name', $name); $query->bindParam(':age', $age); $query->bindParam(':address', $address); $query->bindParam(':gender', $gender); $query->bindParam(':image', $imageName); $results = $query->execute(); $results ? echo "1"; : echo "2"; ; ?>
看来你有错误:
$results ? echo "1"; : echo "2"; ;
你的演示
试试这样:
echo $results ? "1" : "2";
工作演示
你可以在这里看到一个教程。