2017-11-22 2 views
0

私のjqueryのコード:接続jqueryとphpが間違っていますか?

 var getid; 
    var urllink; 
    $("li").click(function(){ 
    getid = $(this).attr('id'); 
    switch(getid){ 
     case "brief": 

     urllink = "allbriefs.txt"; 

     $.ajax({ 
      url: 'showtext.php', 
      data: "urlname=" + urllink, 
      type: "POST" 
     }) 

     break; 
     default: break; 
    } 

}) 

私の 'showtext.php' コード:

<!DOCTYPE html> 
    <html> 
    <body> 

<?php 
     $filename = $_POST["urlname"]; 
     $keyword = $_POST["keyword"]; 
     $myfile = fopen($filename,"r") or die("unable to open file"); 
     echo fread($myfile, 120); 
     fclose($myfile); 
     ?> 

     </body> 
     </html> 

htmlコード:これらの作業との誤差を与えていない

<p id="brief" > <?php include 'showtext.php' ?></p> 

"未定義のインデックス:urlname in ... "と表示されます。問題がどこにあるかはわかりません。

+1

多分try 'data:{urlname: urlink} ' –

+0

{urlname:urllink}、 –

+0

もちろん、インクルードを含むページに直接アクセスすると未定義になり、ajaxの成功ブロックでレスポンスを処理し、' keyword'インデックスがリクエスト – Ghost

答えて

2

HTMLでphp fileを含めるので、この行を削除しないでください:

<p id="brief" > <?php include 'showtext.php' ?></p> 

Ajaxは自動的にその特定のページを呼び出し、変数にその内容を返します。

$.ajax({ 
    url: 'showtext.php', 
    data: {urlname: urllink}, 
    type: "POST", 
    success: function(result){ 
     console.log(result); // showtext.php result 
    } 
}); 

場合あなたの例の結果を達成したい場合は、次のようなことをすることができます:

HTML: 
<p id="brief"></p> 

JS: 
$.ajax({ 
    url: 'showtext.php', 
    data: {urlname: urllink}, 
    type: "POST", 
    success: function(result){ 
     console.log(result); // showtext.php result 
     $('#brief').html(result); 
    } 
}); 
+1

Alhamdulillah。出来た。アッラーはあなたに最高の贈り物を与えるかもしれません。 –

+0

あなたはちょうどupvoteと正解としてマークすることができます –

関連する問題