能不能读取txt文件,自动填充 php可以实现这样的功能吗?
我有一个1.txt文本 里边的内容为这样的
001-北京
002-上海
然后在Php页面中,有这样的 框
能不能我在number框里,填写001
自动在area框里,填写对应的地区 北京
还是说 得通过ajax?
我说的两种可以实现吗?
如果能实现,要如何做呢?
谢谢------解决方案-------------------- 1.最好读数据库吧2.
如果真要实现 就用 get_content_file() 读取文本内容到字符串中,然后再切割字符串存入数组中,循环答应数组(套上html格式即可)------解决方案-------------------- ajax实现------解决方案-------------------- 其实呢,最好直接js实现就行了,先把地区可以生成一个数组js,然后在对数组进行操作就行了------解决方案-------------------- 我js非常烂的
比如生成一个地区js
<br />
area[1] = '北京';<br />
area[2] = '上海';<br />
......<br />
Nach dem Login kopieren
然后input框失去焦点时,获取当前的text的value值并设置成area[value]
------解决方案-------------------- 引用: 引用:1.最好读数据库吧2.
如果真要实现 就用 get_content_file() 读取文本内容到字符串中,然后再切割字符串存入数组中,循环答应数组(套上html格式即可)
① 把现在对应的数据文本 导入到数据库中? 比如建立个表area 弄两个字段number,area
然后 怎么弄? 还有就是文本数据多的话 导入数据……
我不是叫你把文本写入数据库 再去读。我是建议你直接把数据存入数据库 从数据库读取 不要用文本存
如果你一定需要文本存也行,用函数读出来 做分割 循环输出在PHP页面中就可以了
------解决方案-------------------- 这种东西没什么难的吧,就是一个ajax传值,然后取值的问题。
对于你的数据存文件也好,存数据库也好。都是可以的。
------解决方案-------------------- 如果你要做相应时间,可以用ajax相应处理页面,如果你只是生成php页面时的一个需求,我给你贴出代码了:
1.txt文件:
-001-北京
-002-深圳
2.php处理页面
<br />
$str = file_get_contents("1.txt");//读取文件<br />
$array = explode("-", $str);//切割内容,存在数组里<br />
<br />
$count = count($array);<br />
//循环遍历数组 按html格式打印<br />
for($i=0;$i<$count-1;$i=$i+2)<br />
{<br />
echo "<input type='text' name='number' value='".$array[$i+1]."' />";<br />
echo "<input type='text' name='area' value='".$array[$i+2]."'/><br>";<br />
}<br />
Nach dem Login kopieren
------解决方案-------------------- ajax 能很方便的实现。。
------解决方案--------------------
本帖最后由 xuzuning 于 2012-12-01 19:21:25 编辑
无需 AJAX,把数据放到 js 中就可以了
完整的测试代码
$s =
001-北京<br>
002-上海<br>
TXT;<br>
file_put_contents('0001.txt', $s);<br>
//以上构造模拟数据<br>
<br>
$fn = '0001.txt';<br>
<br>
foreach(file($fn, FILE_IGNORE_NEW_LINES) as $r) {<br>
$t = explode('-', $r);<br>
$res[] = "'$t[0]':'$t[1]'";<br>
}<br>
$t = join(',', $res);<br>
echo
<script><br />
var dict = {{$t}};<br />
<br />
function foo() {<br />
var tag = document.getElementById('number');<br />
if(dict[tag.value] != undefined) document.getElementById('area').value = dict[tag.value];<br />
else document.getElementById('area').value = '未知';<br />
}<br />
</script><br>
Nach dem Login kopieren