0

我正在构建一个 SEO 脚本,现在将此事推迟了 2 周,但没有得到答复。我在这里看到了几十个答案,但没有一个令人满意(或者至少我没有发现它们有用)。

我有一个包含多个字段的 MySQL 表,数据库将关键字字段作为主要字段,其他字段是相关关键字的 SEO 变量。好的,没问题,我将 MySQL 的值放在表中,当 php 请求时,它们会被吐出到一个漂亮的表中……</p>

我在每一行的开头都有一个圆形按钮,指示关键字是容易优化、中等优化还是难以优化。分别是绿色按钮、橙色按钮和红色按钮。每行只有一个节目。

颜色由页面排名(表格中的一列,从 0-10(<2 - 绿色,2-4 橙色,超过 4 个红色))确定。

所以我的问题很简单……</p>

我想单击这些按钮、图像或您想要调用它们的名称并选择它们,它们将变为蓝色(用蓝色图像替换图像),然后它们可以包含在 .CSV 文件中以进行导出。

所以,我会向您展示我拥有的代码,但我已经更改了很多次,我认为它没有任何好处并且不重要,但我可以回答任何问题。

基本上它是在 ONCLICK 的基础上用 mysql 和 php 来回更改 2 个图像。

一半是葡萄牙语,所以我会翻译...

$query = "SELECT `CÔR`(COLOR), `keyword`, `Adds`, `PRMédio`, `PRDomínioMédio`, `Searches`, `CPC`, `.com`, `.org`, `.net`, `All in URL`, `All in Title`, `All in Desc.` FROM keywords";

if ($query_run = mysql_query($query)) {
    while ($query_row = mysql_fetch_assoc($query_run)) {
        (COLOR)$côr = $query_row['CÔR'];
            $keyword = $query_row['keyword'];
            $Adds = $query_row['Adds'];

            $PRMédio = $query_row['PRMédio'];
            $PRDomínioMédio = $query_row['PRDomínioMédio'];
            $Searches = $query_row['Searches'];
            $CPC = $query_row['CPC'];
            $com = $query_row['.com'];
            $org = $query_row['.org'];
            $net = $query_row['.net'];
            $All_in_URL = $query_row['All in URL'];
            $All_in_Title = $query_row['All in Title'];
            $All_in_Desc = $query_row['All in Desc.'];


            echo "
            <tr>

            <th>";
            if ($PRMédio < 2) {
                echo "(GREEN BUTTON)$botao_verde";
            } else if ((2 <= $PRMédio) && ($PRMédio < 4)) {
                echo "(ORANGE BUTTON)$botao_laranja";
            } else if (4 < $PRMédio) {
                echo "(RED BUTTON)$botao_vermelho";
            }

            // this is the part where i do not know what I'm doing

            echo "<form>
                <input type='submit' name='submit' class='image'
                value=(BUTTON)'botão' onClick='UPDATE keywords SET CÔR = ~CÔR'>";
            echo "</form>
            </th>
            <td>$keyword</td>
            <td>$Adds</td>
            <td>

它继续与表的其余列...

4

2 回答 2

0

你可以试试这个-

演示在这里

function main() {
    "use strict";
    var toggles = document.querySelectorAll('img.toggle'), i;
    for (i=0; i < toggles.length; i++) {
        toggles[i].addEventListener('click', toggle);
    }
}
function toggle() {
    "use strict";
    this.src = (this.src == "blue.jpg") ? "red.jpg" ? "blue.jpg";
}
window.addEventListener('load', main);

更新

您将服务器端代码与客户端代码混合在一起。这个 -

<input type='submit' name='submit' class='image' value=(BUTTON)'botão' 
onClick='UPDATE keywords SET CÔR = ~CÔR'>

永远不会(永远)去上班。您不能从 JavaScript 执行数据库查询。您需要在服务器和客户端之间架起一座桥梁。简而言之,您需要AJAX,而Mozilla Developers Network有一套很好的教程可以帮助您入门。

于 2013-04-25T17:34:43.257 回答
0

这应该让您开始 - 您需要做的就是为您的行生成适当的 HTML,如下所示

Javascript

var PathToImages = "/Images/";

// Let's store the initial colours in in array so we know what to toggle back to...
var Colors = ["Red", "Blue"];

// And set up somewhere to record which ones have been clicked...
var Toggled = [];

//Using jQuery this might look more elegant but I'll keep it simple

function Toggle(RowNumber) { //RowNumber is 0-indexed
    var NewImageSource;
    if(Toggled.indexOf(RowNumber) < 0) {
        //Toggle on
        Toggled.push(RowNumber);
        NewImageSource = PathToImages + "Blue.png";
    } else {
        //Toggle off
        Toggled.splice(Toggled.indexOf(RowNumber), 1); //Remove the Row number from the toggled array
        NewImageSource = PathToImages + Colors[RowNumber] + ".png";
    }
    document.getElementById("Image" + RowNumber).src = NewImageSource;
}

html

<img src="/Images/Red.png" id="Image0" onclick="toggle(0);"/>
<img src="/Images/Green.png" id="Image1" onclick="toggle(1);"/>
于 2013-04-25T17:07:55.817 回答