经过多天尝试将以前工作的PHP表单转换为在新div中提交变量后,我意识到我错过了一些东西。其他帖子显示了javascript,但我以前从未使用过,也不了解需求。新页面正确绘制,但目标页面上未收到php变量。
提交的HTML,
<form action="entrance2.php">
<div class="medium-12 columns m-b20"><h4 class="heading">Existing users log-in here :-</h4></div>
</div>
<div class="row">
<div class="user medium-12 columns text-center m-b15"><img src="images/user-img.png" alt=""/></div>
</div>
<div class="row">
<div class="medium-10 columns medium-offset-1"><label for="User Name"></label>
<input id="OwnerEmaili" type="text" placeholder="User Name" name="UserName"></div>
</div>
<div class="row">
<div class="medium-10 columns medium-offset-1"><label for="Password"></label>
<input id="OwnerPasswordi" type="password" placeholder="Password" name="Password"></div>
</div>
<div class="row">
<div class="medium-12 columns text-center"><button class="grd-button">Log In</button></div>
<input type="submit" id="save" name="save" value = "Submit"/>//simple submit for testing
<div class="grd-button1" onClick="document.forms['submit-form'].submit();"></div>
</form></div>
</div>
</div>
接收页面,
<?php
$p_OwnerEmaili=$_POST["OwnerEmaili"];
$p_OwnerPasswordi=$_POST["OwnerPasswordi"];
echo "$p_OwnerEmaili;$p_OwnerPasswordi";
仅显示;。
是否需要从div内部提交javascript?
答案 0 :(得分:2)
您正在访问错误的项目。
如果您想以您目前在php脚本中的方式访问它们,则需要将表单输入name
属性设置为:
<input id="OwnerEmaili" type="text" placeholder="User Name" name="OwnerEmaili">
和
<input id="OwnerPasswordi" type="password" placeholder="Password" name="OwnerPasswordi">
这将允许您像在PHP脚本中那样访问它们。
您始终可以使用var_dump()
或print_r()
检查已发送到您的php脚本的值。
<?php print_r($_POST); ?>
会告诉您有UserName
&amp; Password
设置而不是您想要的内容。
正如Ghost在评论中指出的那样,如果您未在其中指定GET
,则表单将始终通过method
发送用户输入。因此,请在form
标记中设置:
<form action="entrance2.php" method="post">