文章目录[隐藏]
前台:
<script>//调用方法用ajax操作add_dbdata.phpvar xmlHttpfunction add_dbdata(str,str1){ //alert(str); if (str=="") { document.getElementById("txtHint").innerHTML=""; return; } 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) { document.getElementById("txtHint").innerHTML=<strong>*本文来源gaodai#ma#com搞@代~码^网+</strong><strong>搞代gaodaima码</strong>xmlhttp.responseText; } } //xmlhttp.open("GET","add_dbdata.php?q="+str,true); //alert(str1); //alert(str); xmlhttp.open("GET","add_dbdata.php?q="+str,true); //xmlhttp.open("GET","<?=base_url()?>project_c/add_zijiedian/"+str1+str,true); 这样写,也不好使,不知道哪有问题 xmlhttp.send();}
后台操作数据库
<?phpheader("Content-type:text/html;charset=utf8");$q=$_GET["q"];$q=(int)$q;echo "<script>alter('kkkkkkk');</script> ";$con = mysql_connect('localhost', 'root', '');if (!$con) { die('Could not connect: ' . mysql_error()); }mysql_select_db("test", $con);mysql_query("set names utf8");//$sql = " SELECT * FROM ecm_acategory ";$sql = " insert into data (name) values('999')";echo $sql;$result = mysql_query($sql);mysql_close($con);?>
求助, 本地测试不用CI,这样写没问题,加个CI,上边的路径换了几种也不好使,不知道怎么回事。 先谢谢了!
回复讨论(解决方案)
你
xmlhttp.open(“GET”,”<?=base_url()?>project_c/add_zijiedian/”+str1+str,true);
然后看看浏览器中的源代码
SQL语句 如下
//插入预算表 $this->db->query("select @myLeft:=PLeft from constrproj where ConstrProjName = '$dangqiandianname' "); $this->db->query("UPDATE constrproj SET PRight = PRight + 2 WHERE PRight > @myLeft"); $this->db->query("UPDATE constrproj SET PLeft = PLeft + 2 WHERE PLeft > @myLeft"); $query3 = $this->db->query("select * from constrproj where ConstrProjID= ( SELECT min(ConstrProjID) from constrproj)"); $arr = $query3->result_array(); $ParentID = $arr[0]['ConstrProjID']; //echo '<script>alert("'.$ParentID.'");</script>'; $this->db->query("INSERT INTO constrproj(ConstrProjName,PLeft,PRight,ParentID,KindLvl) VALUES('$zijiediandianname',@myLeft + 1, @myLeft +2,'$ParentID',1)" ); $query2 = $this->db->query("select * from constrproj"); $result_count2 = count($query2->result());
是PLeft值没有得到吗?
PLeft 不能为空
你向 PLeft 列负的值是 @myLeft + 1
显然 @myLeft 是空值 NULL
谢谢,前辈!
再请教个问题,现在插是插进去了,可是在数据库中出现乱(页面默认编码是utf-8,数据库编码是utf-8),这个和get传参有关系吗?而且用到ajax
第一个图是在页面赋值,调用控制层,第二个图是控制层里得到值 调模型型
谢谢了
那不是乱码,而是 url 编码
入库前先解码(urldecode)
晚辈不才,请指教。这样写好像不对。插不到数据库了
搞定 谢谢!