簡體   English   中英

用php的jquery.ajax

[英]jquery.ajax with php

我剛剛開始研究php。 這是一個非常好的lang,因為我的感覺,但有一點我被卡住,因為我是新來的。

我的javascript代碼

var pv = $("#txtStart").val();
var av = $("#txtStartNextLevel").val();
var au = $("#fileStartPlay").val();
alert(pv+" "+av+" "+au);
var myau = au.split('\\');
$.ajax({
    type:"POST",
    url:php_url,
    data:"{startPoint:"+pv+"nextLevelPoint:"+av+"audioFile:"+myau[myau.length-1]+"}",
    contentType:"application/json",
    dataType:"json",
    success:function(){
        alert("done");
    },
    error:function(){
        alert(response);
    }
});

我的PHP代碼。

<?php
    if(file_exists("Text.txt"))
    {
        $fileName = "Text.txt";
        $fh = fopen($fileName,"a")

        $Starts = $_POST["startPoint"];
        $NextLevel = $_POST["nextLevelPoint"];
        $AudioFileName = $_POST["audioFile"];
            $code .=$Starts."*".$NextLevel."_1*".$AudioFileName."\"";
            fwrite($fh,$code);
        fclose($fh);   
    }
?>

當我運行它時,它會執行但不會在變量中寫入值

$Starts,$NextLevel,$AudioFileName**.

如果我在中寫相同的ajax程序

$.post(php_url,{startPoint:pv,nextLevelPoint:av,audioFile:myau[myau.length-1]},function(data){});

這工作正常,並在文件中寫入內容。

此外,由於我正在使用post方法,它不應該在地址欄中顯示我要傳遞給寫的內容。 但它在這兩種方法中都顯示了這些值。

localhost://myphp.php?txtStart=Start&fileStartPlay=aceduos.jpg&txtStartNextLevel=adfd

請指導我缺少的地方......

替換下面的值(帶配額)

"{startPoint:"+pv+"nextLevelPoint:"+av+"audioFile:"+myau[myau.length-1]+"}"

{startPoint:pv, nextLevelPoint: av, audioFile: myau[myau.length-1]}

做Burak TAMTURK所說的,也擺脫了

contentType:"application/json",

$ _POST數據應該在內容類型application/x-www-form-urlencoded ,這是默認值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM