2012-03-21 3 views
1

все. Я относительно новый разработчик с ограниченным опытом работы в jQuery AJAX и PHP. Я работаю над плагином Wordpress, который является для меня очень учебным упражнением.Wordpress jQuery для передачи данных на PHP

Основное описание: На моей странице администрирования моего плагина у меня есть куча форм, которые будут отображаться как модальные окна (с использованием jQuery UI), и когда они заполняются, отправят свои поля в отдельный файл PHP для обработки. Этот файл примет данные и подготовит их для вставки в таблицу wpdb, которую я создал.

Plugin Администратор страницы (PHP):

<div id="form1" title="My Awesome Form"> 
    <form id="frmNewCom"> 
     <fieldset> 
     <table> 
      <tr> 
       <td><label for="name">Community Name</label> 
       <td><input type="text" name="newComName" id="newComName" /> 
      </tr> 
      <tr> 
       <td><label for="lefthead">Left Column Header</label></td> 
       <td><input type="text" name="newComLefthead" id="newComLefthead" /></td> 
      </tr> 
      <tr> 
       <td><label for="righthead">Right Column Header</label></td> 
       <td><input type="text" name="newComRighthead" id="newComRighthead" /></td> 
      </tr> 
     </table> 
     </fieldset> 
    </form> 
</div> 

JQuery код UI для формы ($pcal мой нет конфликтов вещь):

$pcal('#form1').dialog({ 
     autoOpen: false, 
     height: 275, 
     width: 400, 
     modal: true, 
     buttons: { 
      "Add Living Option": function() { 
       // Functionality for submit 
      }, 
      Cancel: function() { 
       $pcal(this).dialog("close"); 
      } 
     }, 
     close: function() { 
      // close function 
     } 
    }); 

Теперь вот проблема. Я не совсем уверен, что делать с этого момента. Я прочитал кучу вещей об использовании .post() и .serialize(), и в этот момент я очень смутился.

У вас, ребята, есть представление о правильном javascript/jQuery для обработки PHP, который вы могли бы предоставить? Я тоже спросил об этом на форуме Wordpress, но я всегда нашел здесь хороший совет, поэтому подумал, что я спрошу. Любая помощь приветствуется.

ответ

1

Очень простой пример был бы:

$pcal.post("test.php", $pcal("#frmNewCom").serialize(), function() { 
    // this will run once returned from PHP 
    alert('thanks'); 
    $pcal(this).dialog("close"); 
}); 

Этих сообщениям формы (id = frmNewCom) в последовательном формате (newComName=1&newComLefthead=2&newComName=3, где 1,2 и 3 являются значением, введенным в форме) с помощью .post() и .serialize()

затем в test.php доступ будет ваши ценности, как это:

$newComName = $_POST['newComName']; 
$newComLefthead = $_POST['newComLefthead']; 
$newComName = $_POST['newComName']; 
// insert into table 

Вышеуказанное: a) непроверено и b) не содержит никакой профилактики против SQL injection, если вы хотите сохранить это в БД

+0

Удивительный. На самом деле это именно то, что у меня есть сейчас. Теперь у меня возникла проблема с методом wpdb-> query(), который выдает ошибку, но это совершенно другой вопрос. – JSchneider