GVKun编程网logo

织梦dedecms提交自定义表单获取IP地址与提交时间(织梦指定链接标签)

11

对于想了解织梦dedecms提交自定义表单获取IP地址与提交时间的读者,本文将是一篇不可错过的文章,我们将详细介绍织梦指定链接标签,并且为您提供关于dedecms织梦jquery+ajax方式提交自定

对于想了解织梦dedecms提交自定义表单获取IP地址与提交时间的读者,本文将是一篇不可错过的文章,我们将详细介绍织梦指定链接标签,并且为您提供关于dedecms织梦jquery+ajax方式提交自定义表单、DedeCMS织梦自定义表单提交验证、dedecms织梦自定义表单获取ip,提交时间,来源页面等技巧、DedeCMS织梦防止恶意提交自定义表单设置必填项的有价值信息。

本文目录一览:

织梦dedecms提交自定义表单获取IP地址与提交时间(织梦指定链接标签)

织梦dedecms提交自定义表单获取IP地址与提交时间(织梦指定链接标签)

 
郑州做网站的蝶动网络在网上找了很多JS文件,但太繁琐了。后来织梦模版网注意到一个细节,每次登陆后台,织梦系统都会记录登陆时间和IP地址,这说明织梦自带IP获取和时间获取。
 
那么接下来郑州蝶动网络小编分析了相关的文件代码,整理了一套自动获取时间和IP的代码出来,修改步骤如下:
 
首先修改plus/diy.php,在大概69行的地方找到:
 
if($fieldinfo[1] == 'textdata') 
${$fieldinfo[0]} = FilterSearch(stripslashes(${$fieldinfo[0]})); 
${$fieldinfo[0]} = addslashes(${$fieldinfo[0]}); 
}
在这段代码的下面添加  
 
 
if($fieldinfo[0] == 'ip')
{
${$fieldinfo[0]}=GetIP();
}
if($fieldinfo[0] == 'time')
{
${$fieldinfo[0]}=date("Y-m-d H:i:s");
}
然后在自定义表单里添加字段
 
IP地址:ip
 
提交时间:time
 
字段名称一定要和diy.php添加的字段名一致
 
注意:在新增表单字段之后,必须要更新一下表单中 dede_fields 和 dede_fieldshash 这两项的值,很多站长会忽略这个问题,导致后台无法接收新增字段的内容。
 
在表单中调取:
<input type="hidden" name="ip" id="ip" value="">
<input type="hidden" name="time" id="time" value="">
type="hidden" 标签可以把这两个表单隐藏起来,不会影响代码执行。
 
这样用户执行提交的操作后,后台就会自动获取用户IP地址和当前的时间。
本文章网址:http://www.ppssdd.com/code/1119.html。转载请保留出处,谢谢合作!

dedecms织梦jquery+ajax方式提交自定义表单

dedecms织梦jquery+ajax方式提交自定义表单

 

我们可以借助jquery ajax提交dedecms自定义表单到后台。

此例只做为参考,实际项目中根据自己的情况酌情修改。
html部分

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

 

<form action="/plus/diy.php" enctype="multipart/form-data" method="post" id="diyform">

<input type="hidden" name="action" value="post" />

<input type="hidden" name="diyid" value="1" />

<input type="hidden" name="do" value="2" />

<input type="hidden" name="dede_fields" value="mail_name,text;mail_phone;mail_content,multitext" />

<input type="hidden" name="dede_fieldshash" value="86d34525cf75f8652022f6446152028d" />

<input type="hidden" name="setup" value="ajax" />

    <div >

        <div >

            <table border="1" width="100%" >

            <tr>

                <td width="50">

                    姓名:

                </td>

                <td >

                    <input type="text" name="mail_name" id="mail_name" maxlength="20"/>

                </td>

            </tr>

            <tr>

                <td>

                    电话:

                </td>

                <td >

                    <input type="text" name="mail_phone" id="mail_phone" maxlength="20"/>

                </td>

            </tr>

            <tr >

                <td>

                    留言:

                </td>

                <td >

                    <textarea name="mail_content" id="mail_content"></textarea>

                </td>

            </tr>

            </table>

            <div >

                <div  onclick="send()">

                </div>

            </div>

        </div>

    </div>

</form>

 


js部分

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

 

<script type="text/javascript" src=""></script>

<script>

function send(){

    $.ajax({

        cache: true,

        type: "POST",

        url:"/plus/diy.php",

        data:$('#mail_form').serialize(),// 你的form id  织梦源码网

        success: function(data) {

            if(data=="success"){

                alert('发送成功!');

            }else{

                alert('发送失败!');

            }

        }

    });

}

</script>

 

/plus/diy.php 修改
找到

1

 

showMsg($bkmsg,-1,0,3000);

 

改成

1

2

3

4

5

6

7

8

9

 

if($setup == 'ajax')

{

    echo "success";

    exit;

}

else

{

    showMsg($bkmsg,-1,0,3000);

}

 



如果是gbk编码的童鞋,还要修改/plus/diy.php,解决乱码问题
找到

1

 

$addvalue .= ", '".${$fieldinfo[0]}."'";

 

改成

1

 

#p#分页标题#e#

$addvalue .= ", '".iconv( "UTF-8", "gb2312//IGNORE" , ${$fieldinfo[0]})."'";

 


$.post办法

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

 

var dataString = {

    'name':$("#name").val(),

    'tel':$("#tel").val(),

    'setup':'ajax',

    'action':'post',

    'diyid':1,

    'do':2,

    'dede_fields':'name,text;tel,text',

    'dede_fieldshash':'6b5fb808a4b9ea6d0603d983246a88a1',

};

$.post("/plus/diy.php",dataString,function(result){

    if(result=="1"){

        alert('发送成功!');

        $('#diyform').reset();//重置form

    }else{

        alert('发送失败!');

    }

本文章网址:http://www.ppssdd.com/code/12192.html。转载请保留出处,谢谢合作!

DedeCMS织梦自定义表单提交验证

DedeCMS织梦自定义表单提交验证

下面是小编 jb51.cc 通过网络收集整理的代码片段。小编小编现在分享给大家,也给大家做个参考。

Dedecms 的自定义表单没有对提交的信息进行过滤,经常会有垃圾信息骚扰,本站提供 2 条检测规则,是利用正则方法,可以检测手机号码和邮箱,先贴出 js 代码如下:

<script>

function check()

{

name=document.getElementByIdx_x_x("fzrxm").value;

if(name=="")

{

alert("请输入姓名!")

return false;

}

re = /^1d{10}$/

tel=document.getElementByIdx_x_x("lxdh").value;

if (re.test(tel)) {

} else {

alert("请输入正确的手机号!");

return false;

}

em = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;

eml=document.getElementByIdx_x_x("lxqq").value;

if(em.test(eml)){

}else{

alert("请输入正确的邮箱!");

return false;

}

}

</script>

然后在 form 表单提交的时候 ,加上

<form action="/plus/diy.PHP" enctype="multipart/form-data" method="post" onsubmit="return check()">

很容易的方法,如果还不明白的朋友可以留言。

以上是小编(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。如果觉得小编网站内容还不错,欢迎将小编网站推荐给程序员好友。

dedecms织梦自定义表单获取ip,提交时间,来源页面等技巧

dedecms织梦自定义表单获取ip,提交时间,来源页面等技巧

1.首先修改plus/diy.PHP

PHP">if($fieldinfo[1] == 'textdata') { ${$fieldinfo[0]} = FilterSearch(stripslashes(${$fieldinfo[0]})); ${$fieldinfo[0]} = addslashes(${$fieldinfo[0]}); }

后面添加

PHP">if($fieldinfo[0] == 'ip') { ${$fieldinfo[0]}=GetIP(); } if($fieldinfo[0] == 'time') { ${$fieldinfo[0]}=date("Y-m-d H:i:s"); } if($fieldinfo[0] == 'laiyuanyemian') { ${$fieldinfo[0]}=curPageURL(); }

2.在plus/diy.PHP上方添加以下代码,如果要获取来源地址的话

PHP">// 说明:获取完整URL function curPageURL() { $pageURL = ‘http'; if ($_SERVER[“HTTPS”] == “on”) { $pageURL .= “s”; } $pageURL .= “://”; if ($_SERVER[“SERVER_PORT”] != “80”) { $pageURL .= $_SERVER[“SERVER_NAME”] . “:” . $_SERVER[“SERVER_PORT”] . $_SERVER[“REQUEST_URI”]; } else { $pageURL .= $_SERVER[“SERVER_NAME”] . $_SERVER[“REQUEST_URI”]; } return $pageURL; }

在自定义字段里添加字段

IP地址:ip

提交时间:time

(字段名称一定要和diy.PHP添加的字段名一致)

在表单中调取

PHP">

type=’hidden’ 为隐藏字段,在前端不显示,用户提交后台会自动获取IP和时间

DedeCMS织梦防止恶意提交自定义表单设置必填项

DedeCMS织梦防止恶意提交自定义表单设置必填项

 

dede表单

 许多企业网站会有提交订单的功能,Dedecms自定义表单制作就能满足,为了防止用户恶意提交表单,可以在自定义表单的字段设置必填项或者判断输入的值是否符合规定的功能,主要有两种方法处理:修改表单源文件(不灵活,一个网站有可能提交多个表单);JS判断输入值(推荐)。

用默认的/plus/diy.PHP增加必填判断

       大约在40行左右找到如下代码,

$dede_fields = empty($dede_fields) ? '' : trim($dede_fields);

后面添加添加代码:

//增加必填字段判断
if($required!=''){
if(preg_match('/,/',$required))
   {
       $requireds = explode(',',$required);
       foreach($requireds as $field){
           if($$field==''){
               showMsg('带*号的为必填内容,请正确填写','-1');
               exit();
           }
       }
   }else{
       if($required==''){
           showMsg('带*号的为必填内容,请正确填写','-1');
           exit();
       }
   }
}
//end

       在自定义表单模板找到

<form action="/plus/diy.PHP" enctype="multipart/form-data" method="post">

       下面加入以下代码(value="自定义字段")

<input type="hidden" name="required" value="content,name,tel" />

用JS判断

红色部分为自定义字段,把以下代码放在</head>之前,

<script type='text/javascript'>
<!-- 
$(document).ready(function() 
{ 
//验证 
$('#complain').submit(function () 
{ 
if($('#name').val()==""){ 
$('#name').focus(); 
alert("用户名不能为空!"); 
return false; 
} 
if($('#tel').val()=="") 
{ 
$('#tel').focus(); 
alert("联系电话不能为空!"); 
return false; 
} 
if($('#title').val()=="") 
{ 
$('#title').focus(); 
alert("标题不能为空!"); 
return false; 
} 
if($('#text').val()=="") 
{ 
$('#text').focus(); 
alert("具体内容不能为空!"); 
return false; 
} 
}) 
}); 
-->
</script>

      上面只能判断数值是否为空,结合正则表达式,能准确判断输入的表单信息是否为规定格式数据。举例说明:

<script type="text/javascript">
  $(function(){
  $(".btn").click(function(){
  var myNum=/^[\u4e00-\u9fa5]+$/;
 if(myNum.test($("#name").val())){}else{alert("请输入中文名字");return false;};
  var myNum=/^[\u4e00-\u9fa5]+$/;
 if(myNum.test($("#xq").val())){}else{alert("请输入小区中文名字");return false;};
  var mymj=/^([1-9][0-9]{1,3})+(.[0-9]{1,4})?$/
 if(mymj.test($("#mj").val())){}
 else{alert("户型面积请输入首位不为零并且在2-4位的有效数字有效数字");return false;};
  var myphone=/^\d{8,11}$/
 if(myphone.test($("#phone").val())){}
 else{alert("电话位数在8-11位");return false;};
 if($("input[type=text]").val()==''){alert("文本框不能为空!");return false;}
 else {alert("发布成功!请保持电话畅通!客服人员会在24小时之内与您联系!");return true;}});});
</script>

前台部分实例

<form action="/plus/diy.PHP" enctype="multipart/form-data" method="post">
    <input type="hidden" name="action" value="post" />
    <input type="hidden" name="diyid" value="1" />
    <input type="hidden" name="do" value="2" />
    <p>
     <h3>重庆装修团购申请,立省5000元</h3>
     <p>
      <p><label>我的称呼<em>*</em></label><inputtype="text" name="name" id="name"/></p>
      <p><label>我的小区<em>*</em></label><inputtype="text" name="xq" id="xq"/></p>
      <p><label>联系电话<em>*</em></label><inputtype="text" name="phone" id="phone"/></p>
      <p><label>Q       Q  </label><inputtype="text" name="qq" id="qq"/></p>
     </p>
     <p>
      <p><label>户型面积<em>*</em></label><inputtype="text" name="mj" id="mj"/></p>
      <p><label>卫生间数</label>
         <select name='wc'>
          <option value='1个'>1个</option>
          <option value='2个'>2个</option>
          <option value='2个以上'>2个以上</option>
         </select>
      </p>
      <p><label>阳台面积</label><inputtype="text" name="ytmj" id="ytmj"/></p>
      <p><label>喜欢风格</label>
        <select name='fg'>
         <option value='现代简约风格'>现代简约风格</option>
         <option value='地中海风格'>地中海风格</option>
         <option value='简欧风格'>简欧风格</option>
         <option value='欧式风格'>欧式风格</option>
         <option value='中式风格'>中式风格</option>
         <option value='美式风格'>美式风格</option>
         <option value='后现代风格'>后现代风格</option>
         <option value='新古典风格'>新古典风格</option>
         <option value='其他风格'>其他风格</option>
        </select>
       </p>
      </p>
      <p></p>
      <phttps://www.jb51.cc/tag/Box/" target="_blank">Box"><inputtype="submit" value="免费申请装修"/></p>
      <input type="hidden" name="dede_fields" value="xq,text;fg,select;name,text;phone,text;mj,float;qq,int;wc,select;ytmj,int" />
      <input type="hidden" name="dede_fieldshash" value="c53edcf88ed9787e2fe3266b16e2778a" />
     </p>
    </form>

上一篇:织梦文章页上下篇实现利用键盘左右翻页

下一篇:DedeCMS移动端URL优化str_replace函数替换多个内容

关于织梦dedecms提交自定义表单获取IP地址与提交时间织梦指定链接标签的介绍已经告一段落,感谢您的耐心阅读,如果想了解更多关于dedecms织梦jquery+ajax方式提交自定义表单、DedeCMS织梦自定义表单提交验证、dedecms织梦自定义表单获取ip,提交时间,来源页面等技巧、DedeCMS织梦防止恶意提交自定义表单设置必填项的相关信息,请在本站寻找。

本文标签: