0

尝试将 Recaptcha 添加到我的 php 表单中,我从 Google 提供的示例 php 代码开始。我将以下代码插入到 form1.php 中:

<html>
<body>

 <h3>You can use the following form to contact the author:</h3>

<form action="send1.php" method="post" name="contactform">

<table width="450px">
<tbody>
<tr>
<td valign="top"><label for="first_name">First Name *</label></td>
<td valign="top"><input type="text" maxlength="50" name="first_name" size="30" /></td>
</tr>
<tr>
<td valign="top"><label for="last_name">Last Name *</label></td>
<td valign="top"><input type="text" maxlength="50" name="last_name" size="30" /></td>
</tr>
<tr>
<td valign="top"><label for="email">Email Address *</label></td>
<td valign="top"><input type="text" maxlength="80" name="email" size="30" /></td>
</tr>
<tr>
<td valign="top"><label for="telephone">Telephone Number</label></td>
<td valign="top"><input type="text" maxlength="30" name="telephone" size="30" /></td>
</tr>
<tr>
<td valign="top"><label for="comments">Comments *</label></td>
<td valign="top"><textarea cols="30" maxlength="1000" name="comments" rows="6"></textarea></td>
</tr>
<tr>
<td></td>
<td style="text-align: left;" colspan="2">
<?php
          require_once('recaptchalib.php');
          $publickey = "GOkj44zG4SZKeo3PYMTmPYySzp7JPdq4";
          echo recaptcha_get_html($publickey);
?>
<input type="submit" value="Submit" /></td>
</tr>
</tbody>
</table>
</form>
</body>
</html>

我没有看到验证码图像,而是发现提交按钮也消失了。从浏览器查看源代码时,我发现代码在<td style="text-align: left;" colspan="2">. 从 php 代码开始,页面上什么也没有显示。

这不是将php代码插入html的正确方法吗?为什么 html 代码在 php 代码开头被截断?

4

1 回答 1

0

正确的方法。

但是,如果您没有正确下载或安装所有文件,则可能会出现错误。这样的错误可能会立即停止脚本执行,因此也会阻塞脚本后输出的静态 html。

该脚本的语法似乎是正确的,而且显然某些东西试图运行它的事实表明 PHP 也已设置好。所以我的猜测是找不到recaptchalib.php,或者它包含了其他找不到的文件。

如果您的输出中没有任何错误,您可能需要检查错误日志或启用错误输出,以便更好地了解正在发生的事情。

于 2013-07-06T17:32:49.793 回答