以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  panel引用照片  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=98558)

--  作者:zhangjian222200
--  发布时间:2017/4/1 0:52:00
--  panel引用照片
图片在“会员资料”表,“展示照”列,此列照片,每行只有1张
页面代码及附图如下,问题见下面粉色字体
Dim e As RequestEventArgs = args(0)                             \'TA邀请我
Select Case e.Path
    Case "per_tayaoqing.htm"
        Dim wb As New WeUI
        wb.AppendHTML("<script src=\'./lib/jquery-1.9.1.js\'></script>") \'引入脚本文件
        With wb.AddTabBar("", "tb1", 1)                            \'使用TabBar,增加4个按钮(注:页面可以增加,但不考虑)
            .AddButton("bt1","首页","./images/a.png","http://www.foxtable.com")
            .AddButton("bt2","记录","./images/b.png","http://www.foxtable.com")
            .AddButton("bt3","设置","./images/c.png","http://www.foxtable.com")
            .AddButton("bt4","我的","./images/d.png","/personal.htm")
            .Attribute = "style=\'height:55px\'"
        End With
        \'.Add("pn1","编号:20170322001",txt,"./images/a.png","http://www.foxtable.com") \'超链接(单行增加panel,示例)
        With wb.AddPanelGroup("","pg1","TA邀请我列表")
            \'获得用户名,获得被报名表具体行,将同一行报名人信息填入
            Dim username As String = e.cookies("isj") \'从cookie取用户名(手机号)
            Dim pic(9) As String \'定义各个panel,展示照
            Dim bianh(9) As String \'定义各个panel,邀请编号
            
            Dim nianl(9) As String \'定义各个panel,字符串,年龄
            Dim huny(9) As String \'定义各个panel,字符串,婚姻
            Dim hongb(9) As String \'定义各个panel,字符串,有无红包
            Dim qux(9) As String \'定义各个panel,字符串,所在区县
            Dim shi(9) As String \'定义各个panel,字符串,所在市
            Dim sheng(9) As String \'定义各个panel,字符串,所在省
            Dim txt(9) As String \'定义各个panel,中间行字符串
            Dim tians(9) As String \'定义各个panel,发起天数
            Dim zhuangt(9) As String \'定义各个panel,状态
            
            Dim yix(9) As String \'定义各个panel,查找异性
            
            Dim dr As DataRow = DataTables("会员资料").sqlFind("手机 = \'" & username & "\'")
            Dim dr1 As DataRow
            Dim drs As List(of DataRow)
            If dr IsNot Nothing Then
                If dr("性别") = "男" Then
                    \'msgbox(dr("性别"))
                    drs = DataTables("女生发起").sqlSelect("[男_手机] = \'" & username.Trim() & "\'")   \',"[发起_日期] DESC")  \'从订单表找,个人订单集合 
                    \'msgbox("男手机=" & username)
                    \'msgbox("男人数=" & drs.count)
                Else If dr("性别") = "女" Then
                    \'msgbox(dr("性别"))
                    drs = DataTables("男生发起").SQLSelect("[女_手机] = \'" & username & "\'")   \',"发起_日期 DESC")  \'从订单表找,个人订单集合
                    \'drs = DataTables("男生发起").Select("[女_手机] = \'18961305239\'","[发起_日期] DESC")  \'从订单表找,个人订单集合
                    \'msgbox("女手机=" & username & "女人数=" & drs.count)
                    \'msgbox("女人数=" & drs.count)
                Else If dr("性别") = "" Then
                    msgbox("会员性别为空!")
                Else If dr("性别") <> "男" OrElse dr("性别") <> "女" Then
                    msgbox("会员性别错误填写!")
                End If
            Else
                msgbox("未找到您的会员账号!")
            End If
            
            Dim cis As String = 9 \'定义被报名,本页显示次数-1
            If drs.count < 10 Then
                cis = drs.count - 1
                    \'msgbox("人数=" & cis)
            End If
            For i As Integer = 0 To cis
                If drs.count > 0 Then \'找出异性报名的手机号
                    If dr("性别") = "男" Then
                        \'msgbox("男 =" & dr("性别"))
                        yix(i) = drs(i)("女_手机")
                        \'msgbox("女异性手机 =" & yix(i))
                        dr1 = DataTables("会员资料").sqlFind("手机 = \'" & yix(i) & "\'")
                    ElseIf dr("性别") = "女" Then
                        \'msgbox("女 =" & dr("性别"))
                        yix(i) = drs(i)("男_手机")
                       \'msgbox("男异性手机 =" & yix(i))
                        dr1 = DataTables("会员资料").sqlFind("手机 = \'" & yix(i) & "\'")
                    End If
                Else
                    msgbox("尚无异性报名!完善资料及靓照,TA将主动找到您!")
                End If

                If dr1 IsNot Nothing Then
                    pic(i) = dr1("展示照") \'定义各个panel,展示照
                    bianh(i) = drs(i)("会员行为_发起编号") \'定义各个panel,邀请编号   ’本行赋值正常
                    
                    nianl(i) = dr1("年龄") \'定义各个panel,字符串,年龄
                    huny(i) = dr1("婚姻状况") \'定义各个panel,字符串,婚姻
                    hongb(i) = drs(i)("红包情况") \'定义各个panel,字符串,有无红包
                    qux(i) = dr1("所在区县") \'定义各个panel,字符串,所在区县
                    shi(i) = dr1("所在市") \'定义各个panel,字符串,所在市
                    sheng(i) = dr1("所在省") \'定义各个panel,字符串,所在省
                    txt(i) = nianl(i) & "," & huny(i) & "," & hongb(i) & "," & qux(i) & "," & shi(i) & "," & sheng(i) \'定义各个panel,中间行字符串
                    tians(i) = drs(i)("发起天数") \'定义各个panel,发起天数
                    zhuangt(i) = drs(i)("邀请状态") \'定义各个panel,状态
                Else
                    msgbox("未找到您的会员账号2!")
                End If
                
                With .Add("pn" & i,"邀请编号:" & bianh(i),txt(i),pic(i)
                \'上一行,如何引用表照片?我试了多种方法都不行
                    .AddFoot("已发起:" & tians(i))
                    .AddFoot("|状态:" & zhuangt(i),"http://www.foxtable.com")
                End With
                If i = cis AndAlso drs.count > 10 Then
                    e.AppendCookie("jiezhi",cis)    \'将截至目前发送数量,保存到cookie
                End If
            Next
        End With
        wb.AppendHTML("<script src=\'./lib/ajaxform_tayaoqing.js\'></script>") \'引入脚本文件
        e.WriteString(wb.Build) \'生成网页
End Select

图片点击可在新窗口打开查看此主题相关图片如下:qq图片2017033123305555555.png
图片点击可在新窗口打开查看


[此贴子已经被作者于2017/4/1 8:09:19编辑过]

--  作者:有点蓝
--  发布时间:2017/4/1 9:10:00
--  
用法没有问题,注意图片路径http://www.foxtable.com/mobilehelp/scr/0044.htm

图片列使用的路径和web使用的路径不相同的

--  作者:zhangjian222200
--  发布时间:2017/4/1 10:21:00
--  
按文档测试多次,引用不成功,上传时,图片文件自动复制在e:/langwo/Attachments内
                With .Add("pn" & i,"邀请编号:" & bianh(i),txt(i),ProjectPath & pic(i))

                 ./langwo/Attachments/     这几种都不成功
             或../langwo/Attachments/   
             或.\\langwo\\Attachments\\
             或..\\langwo\\Attachments\\

                    .AddFoot("已发起:" & tians(i))
                    .AddFoot("|状态:" & zhuangt(i),"http://www.foxtable.com")
                    .Attribute = "style=\'height:60px\'"
                End With
[此贴子已经被作者于2017/4/1 10:24:13编辑过]

--  作者:有点蓝
--  发布时间:2017/4/1 10:28:00
--  
如果使用的是通用事件头,图片要放在web里面,不能使用绝对路径

Dim fl As String = "d:\\web\\" & e.path

d:\\web\\langwo\\Attachments\\xxx.jpg

With .Add("pn" & i,"邀请编号:" & bianh(i),txt(i),"./langwo/Attachments/xxx.jpg")

--  作者:zhangjian222200
--  发布时间:2017/4/1 10:56:00
--  
楼上成功解决

上传图片时,系统自动将图片复制到目录Attachments下

如何改复制到d:/web/images ?
[此贴子已经被作者于2017/4/1 10:59:21编辑过]

--  作者:有点蓝
--  发布时间:2017/4/1 11:03:00
--  
设置存放目录:http://www.foxtable.com/webhelp/scr/0088.htm
--  作者:zhangjian222200
--  发布时间:2017/4/7 21:47:00
--  
回6楼
如果将下图的存放目录修改为d:/web/huiyuan/images,自动复制的图片,就存放到d:/web/huiyuan/images,是吗?
图片点击可在新窗口打开查看
[此贴子已经被作者于2017/4/7 21:48:03编辑过]

--  作者:有点蓝
--  发布时间:2017/4/7 22:18:00
--  
这种测试就知道了
--  作者:zhangjian222200
--  发布时间:2017/4/7 22:25:00
--  
测试后,是复制到“存放目录”