我有 2 个 PHP 页面...
INDEX.PHP 与此代码:
<form method="post" action="" name="f1">
<input type="text" name='p_name' size='50'><br>
<input type="text" name='p_name2' size='50'><br>
<a href="javascript:void(0);" NAME="My Window Name" title=" My title here " onClick=window.open("index2.php","Ratting","width=550,height=170,left=150,top=200,toolbar=1,status=1,");>Click here to open the child window</a>
</form>
和带有此avascript 代码的 INDEX2.PHP:
<script langauge="javascript">
function post_value()
{
opener.document.f1.p_name.value = document.frm.c_name.value;
opener.document.f1.p_name2.value = document.frm.c_name2.value;
self.close();
}
</script>
和这个 PHP/HTML:
<form name="frm" method="post" action="">
<?php
$sql="SELECT * from customer";
$rs=mysql_query($sql,$conn) or die(mysql_error());
while($result=mysql_fetch_array($rs))
{
echo '<input type="text" name="c_name" size="50" value="'.$result["sequence"].'" /><br>
<input type="text" name="c_name2" size="50" value="'.$result["company"].'" /><br>
<input type=button value=\'Submit\' onclick=\'post_value();\'><br><br>';
}
?>
</form>
基本上,当您转到 index.php 时,单击链接以打开弹出窗口 index2.php,然后列出数据库中的客户并为每个客户提供 2 个文本框 - 一个用于客户的序列/ID,另一个用于为公司名称和每行一个提交按钮。
当按下按钮时,它运行 javascript 函数post_value();
,该函数将数据库/子弹出窗口 (index2.php) 中的值放入父窗口 (index.php) 的文本框中
当我运行此代码时,它只是将单词 undefined 放在父页面的框框中,但是如果我删除 php 中的 while 循环,它只显示客户数据库中的一行,它工作正常。
它就像它不喜欢 php 中的 while 循环,但我不知道为什么。任何帮助将非常感激。