Как отправить текст на сервер и манипулировать им - PullRequest
2 голосов
/ 27 июля 2011

Я немного знаю php, ajax & javascript (и jQuery) - но, поскольку я немного начинающий, мне нужна небольшая помощь, чтобы соединить точки для этой простой задачи:

Я хочу разрешитьпользователь вводит какой-нибудь текст (скажем, «Я видел солнце, солнце такое красивое и блестящее»), и я хочу отправить этот текст на сервер, а затем заменить слово «солнце» на «луна») - отправить его обратнопользователю и напишите ему: «Я видел луну, луна такая красивая и блестящая»).

Мне просто нужна помощь с пониманием:

  1. Как мне отправитьтекст на сервер с помощью php.
  2. Как мне манипулировать им и отправлять его обратно пользователю.

Я уверен, что для него есть учебник - я просто не сделалЯ не знаю, как искать это, поэтому я прошу здесь - чтобы получить хорошее начало.

Ответы [ 4 ]

2 голосов
/ 27 июля 2011
    <?php
       if (isset($_POST['text']))  //only execute if some text were sent to this script
       {
          echo str_replace('sun','moon',$_POST['text']); //manipulate the text and print it
          die(); // stop script execution
       }
    ?>
    <html>
    <head>
      <script>
        $(document).ready(function(){//when document finished to load
          $('#send').click(function(){//when user clicked on send button
            var text = $('#text').val();//get the text from input field
            $.post('',{text:text},function(data){ // send the text to the current script as a post variable called text
              alert(data); // when we received the response display it in alert window
            });
          });
        });
      </script>
    </head>
    <body>
        <input type="text" id="text" />
        <input type="button" value="send" id="send" />
    </body>
    </html>
1 голос
/ 27 июля 2011

Ajax не требуется

<?php
if ($_POST){
    if ($_POST['name']){
        echo str_replace('sun', 'moon', $_POST['name']);
    }
}
?>
<form method="post" action="">
<input type="text" name="text" />
<input type="submit" />
</form>

если вы хотите AJAX, сделайте это

<?php
if ($_POST){
    if ($_POST['name']){
        echo str_replace('sun', 'moon', $_POST['name']);
    }
}else{
?>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js" type="text/javascript" charset="utf-8"></script>
<script>
$("form").submit(function(){ 
       $.post('<?php echo $_SERVER['PHP_SELF']; ?>', {name:$("#name").val()},                                                                                                                   
               function(html){
                    $("body").append(html);
               }
       );
       return false;
</script>
<body>
<form method="post" action="">
<input type="text" id="name" name="name" />
<input type="submit" />
</form>  
</body>
<?php 
}
?>
0 голосов
/ 27 июля 2011

Попробуйте поискать уроки по ajax и jquery. В основном это будет работать примерно так:

Получить пользовательский ввод текста и вызвать функцию javascript, которая отправит этот текст на страницу process.php

//input page    
function getAjax(text){

        var $data = "sentText="+ text +";

            $.ajax({
            type: "GET",
            dataType: 'text',
            url: "process.php",
            data: $data,
            success: function(output){              
                $('#responseDiv').html(output); //output is the text echoed from the php page
                }   
        });
    }

на странице process.php этот текст берется из переменной $ _GET

//process.php
  $sentText = $_GET['sentText'];

echo $sentText.' - some new text added';
0 голосов
/ 27 июля 2011

Google твой друг.Я искал "ajax для начинающих jquery php".Существуют сотни, тысячи ресурсов, которые помогут вам пройти через это.Вот один учебник, который я нашел:

http://www.devirtuoso.com/2009/07/beginners-guide-to-using-ajax-with-jquery/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...