jquery Ajax+php+mysql,插入数据

这里要做的是用户收藏功能,比如淘宝啊当当什么看中某个宝贝,点击旁边的收藏键,传入宝贝信息。


技术的要点就是使用jquery ajax函数传入数据,刚开始不太明白怎么回事的时候觉得很困难很神秘,呵呵,现在回头看看就那么回事。毕竟用人家写好的东西我只需传点值就OK了,看来还需要努力啊,脱离码农。。。


废话不多说,上代码:

页面html代码,这里我只贴了js部分:

      

<script type="text/javascript">
{literal}
//以下是要处理变量的值
var courseid = document.getElementById("courseid").value;
var coursename = document.getElementById("coursename").value;
var nickname = document.getElementById("nickname").value;
var userid = document.getElementById("userid").value;
function course_collect()
{
//这就是jquery里ajax的真面目了,如果你要问我为什么是这个格式,抱歉啊,我也是菜鸟,就回传传参数,如果您知道,我很乐意倾听~并且表示感谢
$.ajax({
type : 'post', //type相当于 表单里面的method="post/get"
url : 'course_collect.php', //要处理数据的页面
data : {userid:userid, courseid:courseid,coursename:coursename},//这是传过去的键值对,前面是key可以随便写,后面的value,必须写已经定义好的变量
success : function(data){ //这就是回传函数啦,代表course_collect.php处理完数据并且成功传入该改页面需要执行的函数
//alert(data); //提示语句,这里可以注释了,因为本例执行逻辑都在course_collect.php
},
fail : function(err){ //看名称就应该知道
alert(err);
}
});

}
</script>


这里就是course_collect.php

 

     if(empty($USER->id)){   //这是调用的验证用户是否登陆
ECHO "没有登录收藏";exit;
}

$obj_data->userid = $_POST['userid'];
$obj_data->courseid = $_POST['courseid'];
$obj_data->courisename = $_POST['coursename'];
$obj_data->type = 1;
$sql = "select COUNT(id) from mdl_course_collect where courseid =$obj_data->courseid"; //判断是否存已经保存过了
$result= $DB->get_record_sql($sql); // 这里是系统封装好的函数,可以无视,需要知道的就是它返回的是查询结果返回值,是对象数组类型
foreach ($result as $value) //数组啊,取值就得遍历 你懂的
{
$result = $value;
}
if($result == 1)
{
echo '该courseid已经存在数据,插不进去了';exit;
}
else if($result == 0 )
{
$DB->insert_record('course_collect', $obj_data); //返回0说明没数据,那就使劲插呗~
echo('成功!');exit;
}




posted @ 2011-12-06 20:14  johnsneakers  阅读(2601)  评论(0编辑  收藏  举报