-1

为什么我的电子邮件脚本没有运行?我尝试使用 isset()、strlen(),也将它与其他页面一起使用,即在其他页面中使用脚本并将表单操作设置为该页面 url。变量不为空。下面提到的是我的脚本的完整代码

    <body>
<?
$to="sunjava11@gmail.com";
$name=$_POST["name"];
$email=$_POST["name2"];
$phone=$_POST["name3"];
$text=$_POST["message"];
$message="
Name: ".$name."\n
Email: ".$email."\n
Phone: ".$phone."\n
Message: ".$text."
";
function okay (){

if(!empty($name))
{
return true;
}

if(!empty($email))
{

return true;
}

if(!empty($text))
{

return true;
}
}

if (okay()==true)
{
$headers="From ".$name;
$subject="Contact Online at Al-Khidmat Punjab Website ";
mail($to,$subject,$message,$headers);
}
else
{
echo "mail not sent";
}






?>
<form id="form1" name="form1" method="post" action="/subpage-recv">
  <table width="618" border="0" cellpadding="0" cellspacing="0">
    <tr>
      <td width="232" class="leftCol">Name</td>
      <td width="370"><label for="name"></label>
      <input type="text" name="name" id="name" class="input" /></td>
    </tr>
    <tr>
      <td class="leftCol">Email</td>
      <td class="rightCol"><input type="text" name="name2" id="name2" class="input" /></td>
    </tr>
    <tr>
      <td class="leftCol">Phone Number <span class="smalltext">(optional)</span></td>
      <td class="rightCol"><input type="text" name="name3" id="name3" class="input" /></td>
    </tr>
    <tr>
      <td class="leftCol" style="border:none">Message</td>
      <td class="rightCol" style="border:none"><label for="message"></label>
      <textarea name="message" id="message" cols="45" rows="5" ></textarea></td>
    </tr>
    <tr>
      <td colspan="2" align="center"><input type="submit" value="Send" id="send"></td>      
    </tr>
  </table>
</form>
</body>
4

1 回答 1

1

全局变量在 OK() 中不可见。

您可以使用 global-keyword 或 $GLOBALS-array 来访问它们。

http://php.net/manual/en/language.variables.scope.php

于 2012-08-27T07:33:11.440 回答