0

jqueryで簡単な送信フォームを作成しようとしています。これは私のコードです:

jQuery:

$(document).ready(function() {
 $(".someButton").click(function(){
     var response = $('#dle-poke').val()
     var responses = $('#dle-pokes').val()
     $.post(dle_root + 'engine/ajax/fastpm.php', {text:response, texts:responses, action:"fastqpro"},

  function(data) {      
  });   

});
});

PHP:

if ($_POST['action'] == "fastqpro") {
  $title= $db->safesql($text);
  $db->query("INSERT INTO dle_post (`autor`, `title`) values ('{$name}', '{$title}')");
}

すべてが機能していますが、送信結果を表示する必要があります。

たとえば、タイトルが空の場合、または次のような場合:

if ($_POST['action'] == "fastqpro") {
  if($text == "" ){
    "Title is empty"
  };
  $title= $db->safesql($text);
  $db->query("INSERT INTO dle_post (`autor`, `title`) values ('{$name}', '{$title}')");
}

そして、すべてが問題ない場合は、OKメッセージを表示してフォームを非表示にする必要があります。

HTML:

<div class="area">
  <input id='dle-pokes' type='text' /><br>
  <textarea name='dle-poke' id='dle-poke'></textarea>
  <div id='resault'></div>
</div>

PHPコードから結果を取得して表示し、HTMLページに表示するにはどうすればよいですか?

4

2 に答える 2

1

echoあなたはあなたのPHPコードを見逃しています。

そのはず

if($text == "" ){
    echo "Title is empty";
};

結果を表示するには、これを次の場所に追加しますdivfunction(data)

$('#resault').html(data);

div idにタイプミスがありますが、ここでは問題ではないと思います。jqueryのdividとselectorが同じであることに注意してください:)

一般的には次のようになります。

jQuery:

$.post('mywebsite.com/adress.php', {variable1_name: var1_value, variable2: value2}, function(data) {
    $('element_selector').html(data);
});

PHP:

$var1 = $_POST['variable1_name'];
$var2 = $_POST['variable2'];

//..... do something

echo $result;
于 2012-12-20T18:48:26.763 に答える
1

この方法を試してください:

 if ($_POST['action'] == "fastqpro") {
  if($text == "" ){
    echo "Title is empty";
  }else{
  $title= $db->safesql($text);
  $db->query("INSERT INTO dle_post (`autor`, `title`) values ('{$name}', '{$title}')");
  echo "Success Message";
  }
}

その後、jqueryスクリプト領域に配置されます function(data){

$('#resault').html(data);
于 2012-12-20T18:57:06.617 に答える