PHP插入到托管数据库
我有一段插入id、firstname和lastname的PHP代码:PHP插入到托管数据库,php,mysql,ajax,Php,Mysql,Ajax,我有一段插入id、firstname和lastname的PHP代码: <?php header('Access-Control-Allow-Origin: *'); $conn = mysql_connect('localhost', 'happy', '***'); $db = mysql_select_db('dbtest'); $firstname = $_POST['firstname']; $lastname = $_POST['lastname']; mysql_q
<?php
header('Access-Control-Allow-Origin: *');
$conn = mysql_connect('localhost', 'happy', '***');
$db = mysql_select_db('dbtest');
$firstname = $_POST['firstname'];
$lastname = $_POST['lastname'];
mysql_query("INSERT INTO tbltry (firstname, lastname) VALUES('$firstname', '$lastname')");
?>
试试这样的方法
function save(){
var fname = document.getElementById("firstname").value;
var lname = document.getElementById("lastname").value;
var data = "firstname="+fname+"&lastname="+lname;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
alert(xmlhttp.responseText);
}
}
xmlhttp.open("POST","url?"+data,true);
xmlhttp.send();
}
您的测试文件应该是
<?php
$conn = mysql_connect('localhost', 'happy', '***');
$db = mysql_select_db('dbtest');
$firstname = $_POST['firstname'];
$lastname = $_POST['lastname'];
mysql_query("INSERT INTO tbltry (firstname, lastname) VALUES('$firstname', '$lastname')");
?>
试试这个
<script>
function save(){
var xmlhttp;
var fname = document.getElementById("firstname").value;
var lname = document.getElementById("lastname").value;
var data = {firstname:fname,lastname:lname};
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("POST", " **url** ", true);
console.log("added");
xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xmlhttp.send(data);
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
}
}
}
函数save(){
var-xmlhttp;
var fname=document.getElementById(“firstname”).value;
var lname=document.getElementById(“lastname”).value;
var data={firstname:fname,lastname:lname};
if(window.XMLHttpRequest)
{
xmlhttp=新的XMLHttpRequest();
}
其他的
{
xmlhttp=新的ActiveXObject(“Microsoft.xmlhttp”);
}
open(“POST”、“**url**”,true);
控制台日志(“添加”);
setRequestHeader('Content-type','application/x-www-form-urlencoded');
发送(数据);
xmlhttp.onreadystatechange=函数()
{
if(xmlhttp.readyState==4&&xmlhttp.status==200)
{
}
}
}
您能否将$FirstName拼写改为$firstnameSide注意:您的PHP脚本公开邀请SQL注入攻击。另外,由于mysql*扩展已被正式弃用,请尝试从mysql*扩展转换为PDO。您的javascript函数save
需要知道要发送哪些数据(您的输入)在post请求中。可能是您的代码输入错误;您使用的是值(“$fisrtname”,“$lastname”)而不是值(“$firstname”,“$lastname”)。我试过这个,但是firstname和lastname仍然是空的,并且没有警报。我不确定这样做是否正确:xmlhttp.open(“GET”http://url.com/dir/testing.php?“+数据,真实)代码>这里的这个:var data=“firstname=“+fname+”&lastname=“+lname
因为lastname有“&”而firstname没有。它的查询字符串param然后整个url将类似name&lastname=您的名字,需要第二个并检查我的更新代码查询中您的firstname有拼写错误。请准确地尝试我的代码。alert()没有从该页面输出的任何数据。它仍然没有插入firstname和lastname only id。我将尝试更多内容并返回这里。非常感谢你的帮助,我的朋友。我真的很感激。试过这个,但还是空白。
<script>
function save(){
var xmlhttp;
var fname = document.getElementById("firstname").value;
var lname = document.getElementById("lastname").value;
var data = {firstname:fname,lastname:lname};
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("POST", " **url** ", true);
console.log("added");
xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xmlhttp.send(data);
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
}
}
}