如何在不使用JSON的情况下进行AJAX调用?

时间:2015-11-02 16:02:09

标签: javascript php jquery ajax

我正在努力改进我的jQuery和AJAX知识,我想创建一个对我的数据库的简单调用。但是,我遇到了一些问题,我无法理解为什么。这是代码:

function provaajax() {
    $.ajax({
        url: 'visualizza.php',           
        data: "",                      
        dataType: 'text',               
        complete: function(data) {
            var nome = data[0];
            var cognome = data[1];
            $('.provajax').html("<b>nome: </b>" + nome + "<b> cognome: </b>" + cognome);
        }
    });
}

这是我的PHP文件:

<?
    Connection();
    $result = mysql_query("SELECT * FROM prova WHERE ID = 117");
    $array = mysql_result($result, 0, "Nome");
    $array = mysql_result($result, 0, "Cognome");
    echo $array;
?>

我的HTML中的一些代码:

<div>
    <button onclick="provaajax()">Prova Ajax</button>
    <p class="provajax"> Hello world </p>
</div>

但这段代码不起作用。我不知道如何使用JSON,所以最好不要使用它。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

要从PHP中检索nomecognome值,最简单的方法是返回JSON。为此,您可以使用这些值创建一个数组,并使用json_encode对其进行编码:

<?
    Connection();
    $result = mysql_query("SELECT * FROM prova WHERE ID = 117");
    $arr = array('nome' => mysql_result($result, 0, "Nome"), 'cognome' => mysql_result($result, 0, "Cognome"));
    echo json_encode($arr);
?>

然后你可以通过jQuery从提供给success函数的反序列化对象中检索这些值:

complete: function(data) {
    var nome = data.nome;
    var cognome = data.cognome;
    $('.provajax').html("<b>nome: </b>" + nome + "<b> cognome: </b>" + cognome);
}