PHP如何控制表单某个文本框只读 PHP如何控制表单某个文本框只读?因为要做权限方面的问题,所以有这个需要 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 能说的具体点儿不?表单是通过php echo出来的还是html的,如果是html的话,input有个only属性可以显示为灰色不可输入的。如果害怕有无聊的人通过ff改掉属性然后修改值提交,也可以再插入的时候做判断看和数据库里的是否一致。主要还是楼主的问题太不详细,完全不了解你想要什么效果.... 比如我在程序里面判断权限,username字段是只读的不能改动的,那浏览会员信息的时候,它的文本域的属性就是reonly,这个不能在模板里面固定死了,因为是动态的,每个人都不一样 判断权限: 有:echo '<input type='text' name='**' value='**' /> 没有:echo '<input type='text' name='**' value='**' readonly /> php是无法获得表单项目属性的但可以迂回实现你要的功能比如:这个只读项<input type="text" name="username" value="123456" readonly />增加一个隐藏项:<input type="hidden" name="readonly" value="username" />这个隐藏文本域的值就是只读项的名字“username”,这样php就可以通过读取readonly的值来发现谁是隐藏项 加一个 disabled也可以 这样就不能写 <input type="text" name="username" value="123456" readonly="readonly" /> 不能设置为disabled,这样会导致服务器端无法使用到这个文本框的值,根据楼主的意思,使用readonly属性即可,参考:HTML <input> 标签 定义和用法readonly 属性规定输入字段为只读。 只读字段是不能修改的。不过,用户仍然可以使用 tab 键切换到该字段,还可以选中或拷贝其文本。 readonly 属性可以防止用户对值进行修改,直到满足某些条件为止(比如选中了一个复选框)。然后,需要使用 JavaScript 消除 readonly 值,将输入字段切换到可编辑状态。 readonly 属性可与 <input type="text"> 或 <input type="password"> 配合使用。 实例带有两个文本字段和一个提交按钮的 HTML 表单:<form action="form_action.asp" method="get"> Name:<input type="text" name="email" /> Country:<input type="text" name="country" value="China" readonly="readonly" /> <input type="submit" value="Submit" /></form> 亲自试一试 语法<input readonly="value">属性值 值描述readonly把输入字段设置为只读。 晕了,我的意思是在PHP程序里面指定它为只读,不是在模板里面指定,那样那死板了~ 直接在PHP端控制? PHP又不是JS你干嘛不用JS? 根据权限 if(有权限){ ='readly';}else{ ='';}然后把这个值赋值到模板文本框里面 nusoap 问题 大家帮忙看看,我是新手 我这个正则错在哪里??请指点,在线等 如果数据不存在即跳转到下一页,如何实现? 各位大侠,想加个序列号显示怎么搞? 为什么得不到文本框的值? 我觉的自助建站和CMS系统没什么区别,你们觉得呢? [急盼]请问 php 如何得到 smarty 模版中标但提交的变量? !!!求助:好像是setcookie的问题 请问怎样备份mySQL的数据?谢谢 zend studio的调试和直接运行到网页调试有什么区别? 刚开始学php,需要高人指点急呀。。。。。。。。。。。。。
如果害怕有无聊的人通过ff改掉属性然后修改值提交,也可以再插入的时候做判断看和数据库里的是否一致。
主要还是楼主的问题太不详细,完全不了解你想要什么效果....
有:echo '<input type='text' name='**' value='**' />
没有:echo '<input type='text' name='**' value='**' readonly />
这个只读项<input type="text" name="username" value="123456" readonly />增加一个隐藏项:<input type="hidden" name="readonly" value="username" />这个隐藏文本域的值就是只读项的名字“username”,这样php就可以通过读取readonly的值来发现谁是隐藏项
不能设置为disabled,这样会导致服务器端无法使用到这个文本框的值,根据楼主的意思,使用readonly属性即可,参考:
HTML <input> 标签
定义和用法readonly 属性规定输入字段为只读。
只读字段是不能修改的。不过,用户仍然可以使用 tab 键切换到该字段,还可以选中或拷贝其文本。
readonly 属性可以防止用户对值进行修改,直到满足某些条件为止(比如选中了一个复选框)。然后,需要使用 JavaScript 消除 readonly 值,将输入字段切换到可编辑状态。
readonly 属性可与 <input type="text"> 或 <input type="password"> 配合使用。
实例带有两个文本字段和一个提交按钮的 HTML 表单:
<form action="form_action.asp" method="get">
Name:<input type="text" name="email" />
Country:<input type="text" name="country" value="China" readonly="readonly" />
<input type="submit" value="Submit" />
</form> 亲自试一试
语法
<input readonly="value">
属性值
值描述readonly把输入字段设置为只读。
if(有权限){
='readly';
}else{
='';
}然后把这个值赋值到模板文本框里面