Ajax 使用xmlhttprequest可以获取什么?
我很难找到答案 我能用ajax从php文件中获取html元素吗?我有一种感觉,我想做一些我不该做的事 我正在使用:Ajax 使用xmlhttprequest可以获取什么?,ajax,Ajax,我很难找到答案 我能用ajax从php文件中获取html元素吗?我有一种感觉,我想做一些我不该做的事 我正在使用: . . . <tr> <td colspan="3" style="font-size:11px;"><a href="javascript:void(0)" onclick="getData('includes/forgot-passwordajax.php', 'targetDiv')">Forgot Password?<
.
.
.
<tr>
<td colspan="3" style="font-size:11px;"><a href="javascript:void(0)" onclick="getData('includes/forgot-passwordajax.php', 'targetDiv')">Forgot Password?</a></td>
</tr>
</table></td>
</tr>
</table>
</form>
<div id="targetDiv">
</div>
。
.
.
includes/forget-passwordajax.php是一个包含表单数据的表,等等。这应该可以工作吗
编辑:以下是脚本:
<script language = "javascript">
var XMLHttpRequestObject = false;
if (window.XMLHttpRequest) {
XMLHttpRequestObject = new XMLHttpRequest();
} else if (window.ActiveXObject) {
XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
}
function getData(dataSource, divID)
{
if(XMLHttpRequestObject) {
var obj = document.getElementById(divID);
XMLHttpRequestObject.open("GET", dataSource);
XMLHttpRequestObject.onreadystatechange = function()
{
if (XMLHttpRequestObject.readyState == 4 &&
XMLHttpRequestObject.status == 200) {
obj.innerHTML = XMLHttpRequestObject.responseText;
}
}
XMLHttpRequestObject.send(null);
}
}
</script>
var XMLHttpRequestObject=false;
if(window.XMLHttpRequest){
XMLHttpRequestObject=新的XMLHttpRequest();
}else if(window.ActiveXObject){
XMLHttpRequestObject=新的ActiveXObject(“Microsoft.XMLHTTP”);
}
函数getData(数据源,divID)
{
if(XMLHttpRequestObject){
var obj=document.getElementById(divID);
open(“GET”,数据源);
XMLHttpRequestObject.onreadystatechange=函数()
{
如果(XMLHttpRequestObject.readyState==4&&
XMLHttpRequestObject.status==200){
obj.innerHTML=XMLHttpRequestObject.responseText;
}
}
XMLHttpRequestObject.send(null);
}
}
php:
从您发布的PHP中,看起来您将HTML代码包含在了
标记中。这是不正确的。您应该将PHP代码放在标记中,并将HTML放在外面。在末端有一个未闭合的支架。在您的情况下,应该(未经测试):
找回密码
/图片/顶部bg.jpg“>
电子邮件地址
顺便说一下,您可以转到浏览器中的页面(includes/forget passwordajax.php
),查看php给出的错误消息
编辑:此外,HTML有点奇怪-表单从来没有关闭过,不清楚表单第一次显示时应该显示哪些部分,表单提交后应该显示哪些部分。你应该能够获取数据并根据数据更改HTML-这就是AJAX的用途。但是你能发布 getData()
因为不清楚它在这里的作用是什么?完成了。我仍然不确信我的php文件的格式是否正确,但我很不好意思发布它-哈哈-我没有编写它。你发布的所有代码看起来都是正确的,发布php。这可能有问题。好的。谢谢。我现在至少在主页上看到了ajax输出。现在我可以开始调整这些其他表单元素,以避免将我重定向到其他页面等。再次感谢!
<?php
<div class='a_login'>
<table class="tabbody">
<tr class="tprowbgcolor">
<td class="title">Retrieve Password</td></tr>
</table>
<center><BR><BR>
<table cellpadding="0" cellspacing="0">
<form name='loginForm' action="forgot-password.php" method="POST">
<tr><td><img src="<?=SITE_URL?>/images/top-bg.jpg"></td></tr>
<tr>
<td class="a_td_color" align="center" valign="top">
if(isset($_POST['formSubmitted']))
{
$email = addslashes(trim($_POST['e_address']));
if($email=="") {
echo '<p>Just kidding? Ehh! <a href="forgot-password.php">try again</a></p>';
} else {
$query = "SELECT `Password`, `UserName` FROM users WHERE `Email`='$email'";
$result = mysql_query($query);
if(mysql_num_rows($result)>0) {
$row = mysql_fetch_assoc($result);
$password=$row['Password'];
$username=$row['UserName'];
$to = $email;
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'To: '.$username.' <'.$email.'>' . "\r\n";
$headers .= 'From: Joel Laviolette <admin@mbira.me>' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
$subject = "Here is your password";
$message = '<p>Hello '.$username.',</p><p>Your password is: ';
$message .= '<strong>'.$password.'</strong><br><br>';
$message .= 'You can login here: <a href="'.SITE_URL.'/login2.php">'.SITE_URL.'/login2.php</a></p>';
$message .= '<p>With Love and gratitude,<br>Joel Laviolette</p>';
if(mail($to, $subject, $message, $headers)) {
echo '<p>Your password has been sent. Please check your email.</p>';
} else {
echo '<p>Email could not be sent! Please contact me directly at joel@rattletree.com.</p>';
}
} else {
echo '<p>Email not found! <a class="external" href="forgot-password.php">try again</a></p>';
}
}
} else {
<table border='0'>
<tr>
<td colspan="3">
<p>Email Address<br />
<input type="text" name="e_address" value="" size="20"></p></td>
</tr>
<tr>
<td colspan="3" align="center"><input type="submit" value="Submit" name="submit"><input type="hidden" name="formSubmitted" value='1'></td>
</tr>
<tr>
<td colspan="3"> </td>
</tr>
</table>
?>
<div class='a_login'>
<table class="tabbody">
<tr class="tprowbgcolor">
<td class="title">Retrieve Password</td></tr>
</table>
<center><BR><BR>
<table cellpadding="0" cellspacing="0">
<form name='loginForm' action="forgot-password.php" method="POST">
<tr><td><img src="<?=SITE_URL?>/images/top-bg.jpg"></td></tr>
<tr>
<td class="a_td_color" align="center" valign="top">
<?php
if(isset($_POST['formSubmitted'])) {
$email = addslashes(trim($_POST['e_address']));
if($email=="") {
echo '<p>Just kidding? Ehh! <a href="forgot-password.php">try again</a></p>';
} else {
$query = "SELECT `Password`, `UserName` FROM users WHERE `Email`='$email'";
$result = mysql_query($query);
if(mysql_num_rows($result)>0) {
$row = mysql_fetch_assoc($result);
$password=$row['Password'];
$username=$row['UserName'];
$to = $email;
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'To: '.$username.' <'.$email.'>' . "\r\n";
$headers .= 'From: Joel Laviolette <admin@mbira.me>' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
$subject = "Here is your password";
$message = '<p>Hello '.$username.',</p><p>Your password is: ';
$message .= '<strong>'.$password.'</strong><br><br>';
$message .= 'You can login here: <a href="'.SITE_URL.'/login2.php">'.SITE_URL.'/login2.php</a></p>';
$message .= '<p>With Love and gratitude,<br>Joel Laviolette</p>';
if(mail($to, $subject, $message, $headers)) {
echo '<p>Your password has been sent. Please check your email.</p>';
} else {
echo '<p>Email could not be sent! Please contact me directly at joel@rattletree.com.</p>';
}
} else {
echo '<p>Email not found! <a class="external" href="forgot-password.php">try again</a></p>';
}
}
} else {
?>
<table border='0'>
<tr>
<td colspan="3">
<p>Email Address<br />
<input type="text" name="e_address" value="" size="20"></p></td>
</tr>
<tr>
<td colspan="3" align="center"><input type="submit" value="Submit" name="submit"><input type="hidden" name="formSubmitted" value='1'></td>
</tr>
<tr>
<td colspan="3"> </td>
</tr>
</table>
<? } ?>