提交按钮->run.php->弹出->刷新php页面的一部分

Submit button -> run .php -> popup -> refresh part of page php

本文关键字:gt 一部分 php php- 按钮 run 提交 弹出 刷新      更新时间:2023-09-26

在我的页面上,我目前有一个选择表单和附加的提交按钮,它是根据数据库中的条目动态生成的。这是我输出的HTML

<div id="structures">
<h1>Build</h1>
<form name="buildForm" id="buildForm" method="POST" onsubmit="buildForm();return false;">
    <select name="buildID" class="buildClass">
    <option value="0" selected="selected" data-skip="1">Build a Structure</option>
<option name='Town Center' value='1' data-icon='../img/structures/tc.png' data-html-text='Town Center<i>
    500 minutes<br>50000 gold</i>'>Town Center</option>
<option name='Barracks' value='2' data-icon='../img/structures/barracks.png' data-html-text='Barracks<i>
    25 minutes<br>1500 gold</i>'>Barracks</option>
<option name='Dragon Roost' value='3' data-icon='../img/structures/droost.png' data-html-text='Dragon Roost<i>
    200 minutes<br>5000 gold</i>'>Dragon Roost</option>
<option name='Mage Hall' value='4' data-icon='../img/structures/mage.png' data-html-text='Mage Hall<i>
    40 minutes<br>300 gold</i>'>Mage Hall</option>
<option name='Test Lab' value='6' data-icon='../img/structures/testlab.png' data-html-text='Test Lab<i>
    1 minutes<br>10 gold</i>'>Test Lab</option>
    </select>
    <div id="buildSubmit">
        <input class="button" type="submit" value="Submit"/>
    </div>
</form>
</div>

虽然我终于用PHP/mySQL和html/css进行了改进,但javascript仍然让我陷入了一个循环。

当用户单击"提交"时,我希望出现一个弹出菜单,并且我希望根据单独的php文件的内容更新数据库。之后,一旦他们关闭了弹出窗口,我想刷新页面的特定区域。我使用的是codeigniter,所以我通过它加载我的模型函数来填充页面。

我很想放更多的代码,尽管说实话,它太乱了,完全没有价值,所以我想我应该更多地要求一个健康的指导方针,关于我必须做什么才能实现这样的东西。

举个例子会很神奇,但我只是想弄清楚我到底需要做些什么才能让它发挥作用。

以下是我认为您试图完成的步骤,以及执行这些步骤的信息。如果我理解不正确,请澄清。。。

单击提交按钮后。。。

执行更改数据库的php文件
为此,由于您使用的是jQuery,因此可以使用数据库更新所需的适当参数对PHP文件进行ajax调用。

有关jQuery、PHP和mysql的示例,请参阅使用JQueryAJAX和PHP从mysql数据库中获取数据。另请参阅jQuery文档:jQuery.ajax-

弹出窗口确认更改(使用JavaScript)

var answer = confirm("Do you want to change this?")
if (answer){
   // Possibly call another PHP ajax script to commit database changes...
}
else{
   // Rollback database changes and do some other processing...
}

要重新加载页面(使用JavaScript)

window.location.reload();