无法使用php / ajax代码显示文本:(

时间:2012-11-01 17:58:46

标签: php javascript ajax

首先检查此网站:check this first plz

嗨,我来自墨西哥,我自动学习html,css,js和php,用于个人目的。

我试图将该代码添加到我的测试页面,示例是示例3 - 随机事实生成器(表单)。当您单击随机发生按钮时,它会使随机文本出现问题所在。它是从哪里来的?和xml? PHP服务器?...我不知道..我检查了所有的代码,没有任何东西:(,我可以添加随机文本与其他方法,如JS与案例和random.math,但我更喜欢那个页面,任何sugestions?很多人

2 个答案:

答案 0 :(得分:0)

它来自:http://juicystudio.com/experiments/ajax/form/fact.php

转到http://juicystudio.com/experiments/ajax/form/script.js

所以它来自PHP文件。 PHP可以读取XML文件,CSV文件,数据库等。

如果您仍有疑问,请与我联系。

编辑: 如果你不想覆盖最后一个事实,你必须从script.js中改变它:

    if (objCurrent)
            objCurrent.parentNode.replaceChild(objReplacement, objCurrent);
    else
    {
        var objContent = document.getElementById('content');
        objContent.appendChild(objReplacement);
    }

   var objContent = document.getElementById('content');
   objContent.appendChild(objReplacement);

编辑2: CSV文件(test.csv)

1,test1
2,test2
3,test3
4,test4
5,test5

以下是您提供的网站上的PHP改编

<?php
$handle = fopen("test.csv", "r");

$array= array();
while (($data = fgetcsv($handle, 5000, ",")) !== FALSE) {
    array_push($array,$data);
}

if(count($array) > 0){
    $id = rand(0, count($array) -1);
    echo $array[$id][1];
}
?>

答案 1 :(得分:0)

它从http://juicystudio.com/experiments/ajax/form/fact.php

获取文字

在本节中,它会打开与该页面的连接:

if (objXMLRequest)
{
   objXMLRequest.onreadystatechange = processResult;
   objXMLRequest.open('GET', 'fact.php', true);
   objXMLRequest.send(null);
}

当连接的状态更改事件触发时,它会调用方法processResult。该方法检查readystate是否为4(已完成)且状态为200(确定)并更新页面上的文本。

您不需要数据库或读取文件来制作该示例页面。最简单的方法是创建一个事实数组并随机输出一个,如下所示:

<?php
$facts = array("fact 1", "fact 2", "fact 3", "fact 4", "fact 5", "fact 6");
$random_number = rand(0, count($facts)-1);
echo $facts[$random_number];
?>