好的我在这里遇到了问题。我正在尝试在sql查询中使用JS变量。现在我知道这是不可能的,所以我使用jquery传递变量并使用get方法将其分配给php中的变量。但是php之前加载了php,所以sql查询不会更新。这里有代码:
var monthS = calenderMonths[monthNow];
$.get('load2.php', {location:monthS} );
这是在我的JS文件中的一个函数,它正在HTML中加载
这是我的php:
$monthS = $_GET['location'];
echo "alert($monthS);";
// Connect to MySQL
if ( !( $database = mysql_connect( "localhost",
"root", "" ) ) )
die( "Could not connect to database </body></html>" );
// open Events database
if ( !mysql_select_db( "Events", $database ) )
die( "Could not open Events database </body></html>" );
$result = mysql_query("SELECT * FROM posted_events WHERE Month_ = '$monthS' ")
or die ('Error updating database because: '.mysql_error());
我警告$ monthS以查看它是否通过,但警报最初为空,但点击'ok'后,如3秒,另一个警告框出现变量。所以我相信PHP在变量传递之前加载。无论如何我能解决这个问题吗?谢谢
答案 0 :(得分:2)
在继续使用脚本的其余部分之前,您应该等待.get()完成(如果它依赖于你的响应)。
$.get('load2.php', {location:monthS} )
.done(function(data) {
alert(data);
//rest of your code
});