【发布时间】:2012-11-13 23:35:02
【问题描述】:
我在一个项目中使用 WAMP,但遇到了一些困难。基本上,我想单击一个表单提交按钮,该按钮调用一个在 php 中请求一些数据的函数。 我的功能
/**********************************************************************************/
//USER LOG IN
$('#cSignIn').click(function(){
//Get User name and password
var uname = $('#uName').val();
var pword = $('#pWord').val();
loginRequest(uname, pword);
$('.formList').hide();
$('#information').show();
return false;
});
//LOGIN REQUEST
function loginRequest(uName, pWord){
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function(){
if (xmlhttp.readyState==4 && xmlhttp.status==200){
document.getElementById("rText").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","login.php?Username=" + uName +"&Password=" + pWord ,true);
xmlhttp.send();
return false;
}
当我尝试使用 $('#rText').val(); 返回 rText(我的 div)的值时;或 $('#rText').text();这不是我所期望的。 php代码回显一个数字,login.php的代码如下
<?php
$con = mysql_connect("localhost:3306","root","");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("Library", $con);
$username=$_GET["Username"];
$password=$_GET["Password"];
$result = mysql_query("SELECT * FROM Customers");
$success = 0;
while($row = mysql_fetch_array($result))
{
if($username==$row['Username'])
if($password==$row['Password'])
if($row['Admin'] == true)
{
$success = 1;
}
else
{
$success = $row['Id'];
}
}
echo $success;
mysql_close($con);
?>
再次,当我在所涉及的任何一个函数中检查 rText 的值时,该值不是预期的。但是,当我退出函数时,该值是有效的。
从函数 loginRequest 返回后,如何在 rText 中获得正确的值?
【问题讨论】:
-
很好奇,你为什么不使用 jQuery AJAX 方法进行 ajax 调用
-
你说的
rText是什么? -
不使用 ajax,因为我不熟悉它,我见过 $.ajax 调用,它非常好。主要是好奇这个例子出了什么问题。 rText 是一个 DIV,据我所知,它保存了我的 login.php 的返回值
-
没有 rText 或 html/js 我什至不知道从哪里开始
-
你的数据库中 $row['id'] 的值是什么?数字?名字?随机字母?
标签: php javascript jquery wamp