Будучи относительно новым для javascript, AJAX и jQuery, я хочу опубликовать 3 значения в базе данных, 2 из которых являются результатами запроса mysql. Рассматривая исходный код, var userid
имеет правильное значение идентификатора пользователя. Второй ( var obid
) и третий ( var authoruserid
) значения. Строки, возвращаемые из запроса, пусты, когда я проверяю исходный код, а значения в firebug – просто имя var. Данные также не отправляются в базу данных.
Любая помощь всегда приветствуется.
Я был бы очень рад, если бы кто-нибудь мог просто сказать мне, что я правильно делаю AJAX, и что AJAX может использовать строки SQL в качестве данных, тогда я могу начать искать другие причины, почему это не работает.
Серверная сторона:
if( isset( $_POST['user_id'] ) && isset($_POST['ob_id'] ) && isset( $_POST['author_user_id']) ) { $result = mysql_query("INSERT INTO ilike (ilike_user_id, ilike_object_id, ilike_author_user_id) VALUES (" . mysql_real_escape_string( $_POST['user_id'] ) . ", " . mysql_real_escape_string( $_POST['ob_id'] ) . ", " . mysql_real_escape_string( $_POST['author_user_id'] ). ")" ); echo $result ? 'Vote Succeeded' : 'Vote Failed: ' . mysql_error(); exit; } $status = $rows['status_id']; // done via a separate query $aid = $rows['user_id']; // as above $user_id = uid(); // User cookie check function
HTML:
<a href="javascript:;" onclick="updateScore(this)" class="blue">Vote</a>
Javascript:
<script type="text/javascript"> function updateScore( answer ) { var userid = '<?php echo $user_id; ?>'; var obid = '<?php echo $status_id; ?>'; var authoruserid = '<?php echo $aid; ?>'; if ( confirm( "Are you sure?" ) ) { $.post('index.php', {user_id: "userid", ob_id: "obid", author_user_id: "authoruserid"}, function(d) { alert('Vote Accepted: ' + d); $(answer).after("<span>You Voted!</span>").remove(); }); } } </script>
Исходный код:
<script type="text/javascript"> function updateScore( answer ) { var userid = '5'; var obid = ''; var authoruserid = ''; if ( confirm( "Are you sure?" ) ) { $.post('index.php', {user_id: "userid", ob_id: "obid", author_user_id: "authoruserid"}, function(d) { alert('Vote Accepted: ' + d); $(answer).after("<span>You Voted!</span>").remove(); }); } } </script>