Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Javascript-AJAX发布_Javascript_Php_Ajax - Fatal编程技术网

使用Javascript-AJAX发布

使用Javascript-AJAX发布,javascript,php,ajax,Javascript,Php,Ajax,我目前正在编写一些民意测验软件,尽管它工作得很好,但我的一些javascript很难正常工作。我有一个标记为“添加新选项”的按钮,单击该按钮将调用以下javascript函数: function newoption() { var option = ""; while((option.length < 1)||(option.length > 150)) { var option = prompt("Please enter the optio

我目前正在编写一些民意测验软件,尽管它工作得很好,但我的一些javascript很难正常工作。我有一个标记为“添加新选项”的按钮,单击该按钮将调用以下javascript函数:

function newoption()
{
    var option = "";
    while((option.length < 1)||(option.length > 150))
    {
        var option = prompt("Please enter the option value... ").trim();
    }
    var add = confirm("You entered " + option + ", are you sure?");
    if(add==1)
    {
        var code = window.location.href.length;
        var poll = prompt("Which poll are you adding this to?", window.location.href.substring(code - 5, code));
        var xhttp = new XMLHttpRequest();
        xhttp.onreadystatechange = function() {
        if (this.readyState == 4 && this.status == 200) 
        {this.responsetext = option;}};
        xhttp.open("POST", "../special/new.php", true);
        xhttp.send("poll=" + poll + "&opt=" + option);
    }
    else
    {
        alert("OK... try again");
    }
}
函数newoption()
{
var选项=”;
而((option.length<1)| |(option.length>150))
{
var option=prompt(“请输入选项值…”)。trim();
}
var add=confirm(“您输入了“+选项+”,确定吗?”);
如果(加法==1)
{
var code=window.location.href.length;
var poll=prompt(“您将此添加到哪个轮询?”,window.location.href.substring(代码-5,代码));
var xhttp=newXMLHttpRequest();
xhttp.onreadystatechange=函数(){
if(this.readyState==4&&this.status==200)
{this.responsetext=option;}};
xhttp.open(“POST”,“./special/new.php”,true);
xhttp.send(“poll=“+poll+”&opt=“+option”);
}
其他的
{
警报(“确定……重试”);
}
}
它发布到的页面只是有一个功能,可以将选项添加到用户提供代码的轮询中(它会自动从URL末尾获取该选项),但问题是,当我刷新页面时,选项列表没有更新,这让我觉得它没有被添加到数据库中,但添加新选项的功能在创建轮询时仍然有效。我做错什么了吗

new.php的代码是:

<?php require("internal/index.php");
$option = string_format($conection, $_POST["opt"], 1)
$poll =(int) $_POST["poll"];
if($poll&&$option)
{
        new_poll_option($connection, $poll, $option);
}
?>

根据您编写的内容,我知道在您刷新页面之前,代码一直有效。这意味着您不需要检查Ajax响应,只需插入一些HTML,直到刷新页面为止

如果项目已创建,则需要查看数据库。如果创建了浏览器缓存,那么您可能需要删除浏览器缓存(您可以从Chrome中DevTools的“网络”选项卡中删除)。 如果项目没有插入到数据库中,那么您需要调试或只是
echo
insert函数中使用的消息

如果要在几分钟内刷新页面,还可以使用
表单
,而不使用Ajax