我有几个按钮,当你点击它们中的每一个时,一个检查图像打开或关闭(按钮是从mysql查询请求信息的表的一部分,它的长度取决于mysql结果的数量)
我用php和mysql编写了脚本,但由于我需要一个表单将数据发布到该页面而无法刷新我现在卡在了ajax上。
我有一个PHP文件:“phpcode.php”
CÔR是打开和关闭图像的binnary变量,关键字是mysql表中的主键
<?php
$n = "SELECT `CÔR` FROM `keywords` WHERE `keyword`='$keyword'";
$b = mysql_query ($n);
$row = mysql_fetch_array($b);
$t = $row['CÔR'];
if ($t == 1) {
$m = "UPDATE `keywords` SET `CÔR`=0 WHERE `keyword`='$keyword'";
mysql_query ($m);
}
if ($t == 0) {
$l = "UPDATE `keywords` SET `CÔR`=1 WHERE `keyword`='$keyword'";
mysql_query ($l);
}
?>
这是由javascipt代码调用的......
document.getElementById('ajaxButton').onClick = function ('$keyword') { url = 'phpcode.php'; makeRequest(url);}
function makeRequest(url) {httpRequest.open('GET', url);}
javascript由按钮触发......
$query = "SELECT `CÔR`, `keyword`, `Adds`, `PRMédio`, `PRDomínioMédio`, `Searches`, `CPC`, `.com`, `.org`, `.net`, `All in URL`, `All in Title`, `All in Desc.`
FROM keywords WHERE ( `Adds`>='$adds' && `Adds`<='$addsm' && `PRMédio`>='$pr' && `PRMédio`<='$prm' && `PRDomínioMédio`>= '$prdom' && `PRDomínioMédio`<= '$prdommax'
&& `Searches`>='$s' && `Searches`<='$smax' && `CPC`>='$cpc' && `CPC`<='$cpcmax')";
if ($query_run = mysql_query($query)){
while($query_row = mysql_fetch_assoc($query_run)){
(... code)
$keyword = $query_row['keyword'];
(... code)
include('.php');
echo "
<button id='ajaxButton' method 'GET'>Select</button>
(... code)
这是我第二次获得帮助,使用php html和mysql我很舒服,但我似乎没有与javascript和ajax相处。
自上周以来,我正努力完成这项工作......
再次感谢所有的帮助, 米格尔
答案 0 :(得分:0)
JavaScript是区分大小写的,因此.onClick
与.onclick
的含义不同。将事件更改为全部小写。如果您使用addEventListener
答案 1 :(得分:0)
我认为您应该以这种方式更改代码:
document.getElementById('ajaxButton').onclick = function () { makeRequest('phpcode.php');}
makeRequest成为:
function makeRequest(theUrl)
{
var xmlHttp = null;
xmlHttp = new XMLHttpRequest();
xmlHttp.open( "GET", theUrl, false );
xmlHttp.send( null );
return xmlHttp.responseText;
}
请替换:
<button id='ajaxButton' method 'GET'>Select</button>
由:
<input type="button" id="ajaxButton">Select</input>
我希望它有所帮助。