PHP--仿微信, 通过登陆者用户名显示好友列表,显示头像和昵称

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style type="text/css">
*
{
    margin:0px auto;
    padding:0px;
    font-family:"微软雅黑";
}
#list
{
    width:350px;
    height:400px;
    background-color:#999;

}
.py
{
    width:350px; height:40px;
    margin:8px 0px 0px 0px;
}
.py:hover
{
    background-color:#3F0;
    color:#FFF;
    cursor:pointer;
}
.img
{
    width:35px; height:40px; float:left;
}
.nc
{
    float:left; height:40px;
    margin:0px 0px 0px 20px;
    line-height:40px;
    vertical-align:middle;
}
</style>

</head>

<body>
<?php
    $uid = "15053397521";  //因为没有从登陆页面传过来,所以先给uid传一个值
?>

<div id="list">
    <?php
    //造链接对象
    $db =new MySQLi("localhost","root","517","weixin");
    //判断是否出错
    !mysqli_connect_error() or die("连接失败");
    //写sql语句
    $sql = "select Friends from friends where Uid=‘{$uid}‘";
    //执行sql语句
    $result = $db->query($sql);

    $attr = $result->fetch_all();

    for($i=0;count($attr);$i++)
    {
        //查出朋友的用户名,因为二维数组的结果就一个值,所以索引取0.
        $fuid = $attr[$i][0];
        //查users表,根据朋友的UID查出朋友的昵称和头像
        $sqlf = "select Pic,NickName from Users where Uid=‘{$fuid}‘";
        $resultf = $db->query($sqlf);

        $attrf = $resultf->fetch_row();//因为是根据朋友的uid查询的,所以查出的只能是一条数据,所以最好用fetch_row()方便些

        //在外层div里加一个bs自定义属性,方便后期加功能,想选中某一个DIV的时候,存上他的用户名,以后方便以后取出
        echo"<div onclick=‘ShowCode(this)‘ class=‘py‘ bs=‘{fuid}‘>
        <img class=‘img‘ src=‘{$attrf[0]}‘ />
        <div class=‘nc‘>{$attrf[1]}</div>
        </div>";

    }

?>
</div>
<!--用js的方式更改样式-->
<script type="text/javascript">
 function ShowCode(div)
 {
     //让div在被选中之前,先把之前所有div的样式先清除掉
         var a = document.getElementsByClassName("py"); //查出来的a是一个集合,js里的集合和PHP里的数组是一样的道理
        //利用for循环把所有div的样式清除
        for(var i=0;i<d.length;i++)
        {
            //alert(d[i]);         //可以alert试试,看下输出的是什么.如果输出的是divelement,就说明找到了每一个DIV了.d[i]就可以代表div了.
            d[i].style.backgroundcolor = "#FFF";
            d[i].style.color = "#000";
        }
        //清除之后再给选中的div加上指定的样式
       div.style.backgroundcolor = "#3F0";   //修改样式的时候,背景色backgroundcolor中间没有横杠链接的
       div.style.Color = "#FFF";                //修改字体颜色

       //每点击一个div让它显示输出谁的用户名
       alert(div.getAttribute("bs"));   //把用户名存在自定义属性bs里了,所以可以通过这个方法获取属性

 }
</script>
</body>
</html>

*

{
margin:0px auto; 0px表示去掉元素自带的边距 auto设置后,div就可以自动居中
padding:0px; 去掉默认的内边距
}
一般做页面之前都会写上以上代码,方便布局

小节:
1).任何标签里都是可以自己写属性的,名字和值可以自己定义.用js取值, 把属性放在getattribute();里

就可以取到值。

2).给外层div定义一个bs属性,里面的值是朋友的uid.点击div的时候,就知道点击的是哪个了。

3).HTML里面不允许ID重复,所以for循环里用的都是class,class可以重复。如果想用ID,要加上标识,

让每一个ID不一样。

4).float:代表流.

5).margin:0px 0px 0px 20px; margin控制的方向顺序是:上右下左(顺时针方向)

6).在css样式表里调字体垂直对齐:
  line-height:40px; (行高)
  vertical-align:middle; (把字在行高里对齐)

7).根据以上代码,让鼠标放在外层DIV上面,样式出现改变
  .py:hover
  {
  background-color:#3F0;
  color:#FFF;
  cursor:pointer; //表示鼠标放在上面变成小手
  }

8).点击某一个div,让div背景变成另一个颜色,鼠标挪出后颜色不变、再取出选中值
  方法:使用onclick点击事件
  点击之后会执行相应的函数,函数里面的this是一个参数,调用函数的时候传给它一个参数,this参数写

  在哪里,就代表谁。
以上代码中onclick事件写在了div里,这里的参数this就代表这个div.写function函数的时候,里面的

参数名字可以自己定义!!

9).样式是有优先级的!
  js代码的样式加在了元素里面,而hover是在css样式表里的。一个内联样式一个内嵌样式,!写在元素里

  面的样式优先级最高,可以覆盖hover里的,写在hover里的,比外部的样式表优先级要高!

10).因为function里的参数是传进去的,所以属性不能直接点出来,需要自己手写.如果是document出来的

可以只能点击出来

 

 

时间: 2024-08-13 15:26:04

PHP--仿微信, 通过登陆者用户名显示好友列表,显示头像和昵称的相关文章

【转】android 欢迎界面翻页成效,仿微信第一次登陆介绍翻页界面

android 欢迎界面翻页效果,仿微信第一次登陆介绍翻页界面 本实例做的相对比较简单主要是对翻页控件的使用,有时候想要做一些功能是主要是先了解下是否有现成的控件可以使用,做起来比较简单不用费太大的劲去找别的资料,或者别的办法设计.有空多读读android API了解熟悉了做什么都比较容易.(注意:ViewPager用于实现多页面的切换效果,该类存在于Google的兼容包里面,所以在引用时记得在BuilldPath中加入“android-support-v4.jar” 如果sdk是4.0及以上的

android popwindow仿微信右上角弹出框,dialog底部显示

仿微信右上角弹出框 1.利用popwindow实现 2.popwindow的位置居于右上角 新建,弹出popwindow: /** 弹popwindow **/ <span style="white-space:pre"> </span>tv = (TextView) findViewById(R.id.textView1); <span style="white-space:pre"> </span>view_pop

凡信2.0beta发布-超仿微信的开源项目 (更新了朋友圈和钱包)

凡信的第一个版本于2015年4月份发布,之后由于自己工作忙碌的原因,一直没有重大的更新内容.2016年1月份抽空做了一些更新.主要是加入了朋友圈和钱包这两块内容,以及对第一版的一些bug的修复.凡信2.0依然是基于环信IM通信云SDK开发的,当前状态下第三方通信云趋于火热,环信也这一年走过四轮共计几千万美元的融资,开发者用户也呈现几万的增长.这个项目也算是给需要集成IM云的开发者提供一个参考,给刚接触Android开发,对Android整体开发框架还很模糊同学提供一个学习的教材. 关于此次更新的

react-native聊天室|RN版聊天App仿微信实例|RN仿微信界面

一.前言 9月,又到开学的季节.为每个一直默默努力的自己点赞!最近都沉浸在react native原生app开发中,之前也有使用vue/react/angular等技术开发过聊天室项目,另外还使用RN技术做了个自定义模态弹窗rnPop组件. 一.项目简述 基于react+react-native+react-navigation+react-redux+react-native-swiper+rnPop等技术开发的仿微信原生App界面聊天室——RN_ChatRoom,实现了原生app启动页.As

ios开发xmpp仿微信即时聊天工具

最近在做一个项目,需要一个即时聊天工具,先打算有第三方环信(http://www.easemob.com),但是最终老板不允许,要自己开发用自己的服务器,哎!如果有需要的可以去看看这个环信,真的不错.进入今天的主题,其实也是大神们开发的,我在这只是把一些细节理一下让大家你能少走一点弯路,需要的资料和源码这里面都有http://pan.baidu.com/s/1nt5esnn. 详细的介绍看这http://blog.csdn.net/kangx6/article/details/7740135,看

Android 使用ContentProvider扫描手机中的图片,仿微信显示本地图片效果

首先我们先看第一个界面吧,使用将手机中的图片扫描出来,然后根据图片的所在的文件夹将其分类出来,并显示所在文件夹里面的一张图片和文件夹中图片个数,我们根据界面元素(文件夹名, 文件夹图片个数,文件夹中的一张图片)使用一个实体对象ImageBean来封装这三个属性 package com.example.imagescan; /** * GridView的每个item的数据对象 * * @author len * */ public class ImageBean{ /** * 文件夹的第一张图片路

ANDROID GRIDVIEW仿微信图片多选功能_显示本地相册图片多选效果

前段时间我分享过一个多图选择器实现了批示图片选择的问题.可以不会把系统的图库 一张一张的选择要上传的图片 http://dwtedx.com/itshare_171.html 那么今天再和大家分享一个非常棒的源代码.实现仿微信的图片选择功能(多图选择哦) 话不多说.有图有真像.先上图片 本例子主要实现了以下功能点 1.默认显示图片最多的文件夹图片.以及底部显示图片总数量 2.点击底部.弹出popupWindow.popupWindow包含所有含有图片的文件夹.以及显示每个文件夹中图片数量 3.选

WWeChat仿微信应用源码带IM服务端源码完整版

2016.1.28开始,仿做一个微信,将持续更新直至完成. 另外请别在这个项目里面通过改头像来打广告!谢谢! 更新的同时将在简书上讲解 如果你喜欢,欢迎Star.Fork! 如果在模拟器上进入聊天页面发现聊天栏位置不对..那就是你没开键盘.. 注册功能页面太多还没加,先直接用测试帐号来体验吧 源码下载:http://code.662p.com/view/13340.html 测试帐号 测试帐号1: 手机号:11111111111 密码:123456 测试帐号2: 手机号:00000000000

iOS开发-仿微信图片分享界面实现

分享功能目前几乎已成为很多app的标配了,其中微信,微博等app的图片分享界面设计的很棒,不仅能够展示缩略图,还可以预览删除.最近我在做一款社交分享app,其中就要实现图文分享功能,于是试着自行实现仿微信分享风格的功能. 核心思想: 主要是使用UICollectionView来动态加载分享图片内容,配合预览页面,实现动态添加和预览删除图片效果. 实现效果: 核心代码如下: 分享界面: // // PostTableViewController.h // NineShare // // Creat