Avatar billede Malika Nybegynder
29. september 2011 - 13:18 Der er 5 kommentarer og
1 løsning

Får returneret værdi fra php side...

Hvad er det jeg gøre forkert...:(
Jeg vil gerne have returneret random nummeret fra php siden...
Bruger Ajax...

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>test</title>
<script type="text/javascript">
function ajax_post(){
        var hr = new XMLHttpRequest();
        // opretter variabler som vi sender til php fil
        var url = "random.php";
       
        var rN = document.getElementById("random_ID").value;
        var vars="random Number"= +rN;
       
        hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
       
       
        hr.onreadystatechange = function(){
        if(hr.readyState == 4 && hr.status == 200)
        {
            alert(hr.responseText);
            document.getElementById("status").innerHTML = return_data;
        }
    }
        hr.send(vars);
        document.getElementById("status").innerHTML = "processing.....";
    }
    </script>
</head>

<body>

<?


echo "random Number: <input type='text' id='random_ID' name='random_ID'/>
<input type='submit' value='submit Data' onclick='ajax_post'/>";

?>

</body>
</html>

random.php


<?

    $combined = "";
        for($i = 0; $i < 10; $i++) {
        $randomNumber = rand(0, 9);
        $combined = $combined.$randomNumber;
    }
    echo $combined;

?>
Avatar billede olsensweb.dk Ekspert
29. september 2011 - 13:30 #1
hurtigt set, kan være flere
i denne linje mangler du functions parantesser
<input type='submit' value='submit Data' onclick='ajax_post'/>";
skal være
<input type='submit' value='submit Data' onclick='ajax_post()'/>";

du anvender short_open_tag det giver problemer på sigt, da flere og flere hoteller ikke understøtter dette.
ret derfor alle dine <? til <?php

får du nogle fejl ??
Avatar billede Malika Nybegynder
29. september 2011 - 13:38 #2
Ja en


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ (...)
<html xmlns="http://www.w3.org/ (...)
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>test</title>
<script type="text/javascript">
function ajax_post(){
        var hr = new XMLHttpRequest();
        // opretter variabler som vi sender til php fil
        var url = "random.php";
       
        var rN = document.getElementById("random_ID").value;
HER---> var vars="random Number"= +rN;
       
        hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
       
       
        hr.onreadystatechange = function(){
        if(hr.readyState == 4 && hr.status == 200)
        {
            alert(hr.responseText);
            document.getElementById("status").innerHTML = return_data;
        }
    }
        hr.send(vars);
        document.getElementById("status").innerHTML = "processing.....";
    }
    </script>
</head>

<body>

<?php


echo "random Number: <input type='text' id='random_ID' name='random_ID'/>
<input type='submit' value='submit Data' onclick='ajax_post()'/>";

?>

</body>
</html>

random.php


<?php

    $combined = "";
        for($i = 0; $i < 10; $i++) {
        $randomNumber = rand(0, 9);
        $combined = $combined.$randomNumber;
    }
    echo $combined;

?>
Avatar billede olsensweb.dk Ekspert
29. september 2011 - 13:44 #3
du sætter en url (var url = "random.php";) op i din ajax_post(), men hvor kalder du din url ??
du mangler fuldstændigt
hr.open("POST", url, true);
hr.send()


http://www.openjs.com/articles/ajax_xmlhttp_using_post.php
Avatar billede Malika Nybegynder
29. september 2011 - 13:52 #4
Det virker nu.. Kan du smide et svar... Så få du lige point...:)
Avatar billede olsensweb.dk Ekspert
29. september 2011 - 14:02 #5
godt du fik det til at virke.

hvordan endte den med at se ud ?
Avatar billede Malika Nybegynder
29. september 2011 - 14:07 #6
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>test</title>
<script type="text/javascript">
        var orderID;
function ajax_post(){
       
        var hr = new XMLHttpRequest();
        // opretter variabler som vi sender til php fil
        var url = "randomNumber.php";
       
        var rN = document.getElementById("random_ID").value;
        hr.open("POST", url, true);
        hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
       
       
        hr.onreadystatechange = function(){
        if(hr.readyState == 4 && hr.status == 200)
        {
            orderID = hr.responseText;
           
            document.getElementById("status").innerHTML = return_data;
        }
    }
        hr.send();
        document.getElementById("status").innerHTML = "processing.....";
    }
    </script>
</head>

<body>

<?php


echo "random Number: <input type='text' id='random_ID' name='random_ID'/>
<input type='submit' value='submit Data' onclick='ajax_post()'/>";

?>

</body>
</html>

<?

    $combined = "";
        for($i = 0; $i < 10; $i++) {
        $randomNumber = rand(0, 9);
        $combined = $combined.$randomNumber;
    }
    echo $combined;

?>
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester