Maison > Article > développement back-end > javascript - php获取到data参数,如何与数组匹配
1.html:
<code><div class="new-title-info-btn recommend"><a href="#">推荐</a></div></code>
<code> function(){ var key=$(this).attr('class').split(" ")[1];//这里key取单独给他们的class值 $('.'+key).click(function(){ $.ajax({ url:"js4-1.php?type=findnew", dataType:"json", data:"key="+key//这里必须加个键名"key=",不然key的值就会直接和type的值合在一起,变成type=findnew&pic;加了就是type=findnew&key=pic }).done(function(data){ // }); }); }; );</code>
3.php:
$type=@$_GET['type'];
$sleword=@$_GET['data'];
switch ($type) {
<code>//从主页前段到php case findnew: $sql="select id,new_title,new_class from info_look";//创建查询语句 $re=mysql_query($sql);//执行语句 $wordArray=[];//创建空字符串承载获取到的数据 while($row=mysql_fetch_array($re)){ $wordArray[]=$row;//将结果赋值给数组 } //下面打算用循环找到对应传递过来的data参数,匹配到了,就把他回传给前台 for($i=0;i</code>
}
要实现的功能:
点击html中的推荐按钮后,ajax将两个参数发送给php,一个是type,用来判断这个请求是要执行php中switch case主页那段的程序的;一个是data,用来判断和数据库中new_class字段值匹配的,相同的就把她的new_title值发送给js,然后js把值替换掉class="new-infomation-title"里的'全国各族人民发来贺电'内容
问题:
php中,注释//这里传值$wordArray[i].new_class的值给js这里要怎么写?还有前面的for循环php里好像不能这样写,测试会报错,求解答
报错截图:
1.html:
<code><div class="new-title-info-btn recommend"><a href="#">推荐</a></div></code>
<code> function(){ var key=$(this).attr('class').split(" ")[1];//这里key取单独给他们的class值 $('.'+key).click(function(){ $.ajax({ url:"js4-1.php?type=findnew", dataType:"json", data:"key="+key//这里必须加个键名"key=",不然key的值就会直接和type的值合在一起,变成type=findnew&pic;加了就是type=findnew&key=pic }).done(function(data){ // }); }); }; );</code>
3.php:
$type=@$_GET['type'];
$sleword=@$_GET['data'];
switch ($type) {
<code>//从主页前段到php case findnew: $sql="select id,new_title,new_class from info_look";//创建查询语句 $re=mysql_query($sql);//执行语句 $wordArray=[];//创建空字符串承载获取到的数据 while($row=mysql_fetch_array($re)){ $wordArray[]=$row;//将结果赋值给数组 } //下面打算用循环找到对应传递过来的data参数,匹配到了,就把他回传给前台 for($i=0;i</code>
}
要实现的功能:
点击html中的推荐按钮后,ajax将两个参数发送给php,一个是type,用来判断这个请求是要执行php中switch case主页那段的程序的;一个是data,用来判断和数据库中new_class字段值匹配的,相同的就把她的new_title值发送给js,然后js把值替换掉class="new-infomation-title"里的'全国各族人民发来贺电'内容
问题:
php中,注释//这里传值$wordArray[i].new_class的值给js这里要怎么写?还有前面的for循环php里好像不能这样写,测试会报错,求解答
报错截图:
PHP数组没有.length。
获取数组长度请使用count函数。
<code>for($i=0;$i<count print_r></count></code>
截图处 少写了$
应该是 $i
而不是 i
楼上是对的。其实你可以把数据放入html的一个p
标签里,设置一个id,并且用css隐藏(display:none;
)。js直接选取这个p标签,提取出文本,就可以拿到数据了。这是比较粗暴的办法。