#javascript #php #jquery #mysql #wordpress
#javascript #php #jquery #mysql #wordpress
Вопрос:
Мой код не вставляет данные в базу данных при использовании jQuery.
Мой код Jquery:
$("#addMatches").button().click(function( event ) {
var that = $('#group-settings-form.standard-form'),
oldUrl = that.attr('action'),
testUrl = oldUrl.split('/'),
url = testUrl[0] '//' testUrl[2] '/' testUrl[3] '/wp-content/themes/betting/bet_wager.php',
data = {};
var matchRound = $('#matchRound').val(), group_id = $('#group_id').val(); firstPlayer = $('input[name="firstPlayer"]').val();
that.removeAttr('action');
that.attr('action',url),
that.find("[name]").each(function(index,value) {
var that = $(this),
name = that.attr('name'),
value = that.val();
data[name] = value;
});
console.log(firstPlayer);
$.post(url,{matchRound:matchRound,group_id:group_id,firstPlayer:firstPlayer},
function(results) {
}); console.log(firstPlayer);
event.preventDefault();window.location.reload();
});
мой код PHP-файла WordPress:
<?php
include_once($_SERVER['DOCUMENT_ROOT'].'/wordpress/wp-config.php' );
if (isset($_POST['matchRound'])){
$matchRound = $_POST['matchRound'];$group_id =$_POST['group_id'];$firstPlayer = $_POST['firstPlayer'];$secondPlayer = $_POST['secondPlayer'];
$addTeam1 = $wpdb->prefix . "dzwebmatch";$wpdb->insert($addTeam1,
array( 'matchRound' => $matchRound, 'group_id' => $group_id, 'firstPlayer' => $firstPlayer, 'secondPlayer' => $secondPlayer ),
array( '%d','%d','%s',"%s" ) );
$wpdb->show_errors();
$wpdb->print_error();
$wpdb->hide_errors();
}else{}
?>
Мой код формы:
Раунд ввода
Player1Player2 ‘;
for ($i=0; $i < $ladderRows; $i )
{
echo "<tr><td><input name='firstPlayer'/></td><td>Vs</td><td><input name='secondPlayer'/></td></tr>";
}
?>
</table>
<input type="submit" id="addMatches" value="Add Matches" />
</form>
Дайте мне знать, если потребуется дополнительная информация.
Комментарии:
1. Спасибо за помощь, я нашел решение, которое, похоже, работает. Я добавил атрибут класса к входам firstPlayer и secondPlayer. Затем использовал jQuery для получения значения на основе класса.
Ответ №1:
В WP ajax запросы отправляются немного по-другому . Проверьте эти ссылки.
http://www.smashingmagazine.com/2011/10/18/how-to-use-ajax-in-wordpress/
Комментарии:
1. Спасибо, но ни в одной статье не рассматривается вставка данных в базу данных WordPress или проблема, с которой я сталкиваюсь.
Ответ №2:
Использование wp-load.php для загрузки встроенных функций WordPress
include_once($_SERVER['DOCUMENT_ROOT'].'/wordpress/wp-load.php' );
Комментарии:
1. Нет, это загрузит WP 2 раза: ottopress.com/2010/dont-include-wp-load-please