Отправка нескольких параметров данных с помощью jQuery AJAX
Я отправляю запрос ajax в php файл, как показано ниже:
function checkDB(code, userid)
{
$.ajax({
type: "POST",
url: "<?php bloginfo('template_url'); ?>/profile/check_code.php",
data: 'code='+code+'userid='+userid,
datatype: "html",
success: function(result){
if(result == 0)
{
$('#success').html( code + ' has been redeemed!');
// alert('success');//testing purposes
}
else if(result == 2)
{
$('#err').html( code + ' already exists and has already been redeemed....');
//alert('fail');//testing purposes
}else if(result == 1){
$('#err').html( code + ' redeem code doesnt exist');
}
alert(result);
}
})
}
Это сообщение вызывает функцию для отправки, например:
<form method="post" class="sc_ajaxxx" id="sc_add_voucherx" name="sc_ajax"
onsubmit="checkDB(document.sc_ajax.sc_voucher_code.value, <?php echo $user_id ?>); return false;">
</form>
Проблема заключается в том, что переменная php user id не отправляется на страницу check_code.php с помощью ajax. или, по крайней мере, я не могу повторить идентификатор обратно на страницу.
Является ли это правильным способом передачи нескольких значений на серверную страницу? Без прохождения идентификатора пользователя он отлично работает, просто передавая код.
Спасибо, ребята:)
Ответы
Ответ 1
Вот как следует форматировать данные POST
:
key1=value1&key2=value2&key3=value3
В вашем случае (обратите внимание на &
как разделитель):
'code=' + code + '&userid=' + userid
Но jQuery делает это для вас, если вы укажете свои данные как объект:
data: { code: code, userid: userid }
Ответ 2
вы должны установить data
так:
data: 'code='+code+'&userid='+userid
Ответ 3
вы можете попробовать следующее:
data: 'code='+code+'&userid='+userid,
вместо
data: 'code='+code+'userid='+userid,
Ответ 4
обычно отправка ваших данных, как это помогает:
data: { code: code, userid: userid }
Самое главное не забывать - проверить, совпадает ли имя передаваемых переменных на стороне сервера.
Ответ 5
Попробуйте этот код... он работает для меня...
<script type='text/javascript'>
$(document).ready(function(){
$(".star").click(function(){
var rate_value1= $(this).index(".star")+1;
$.ajax({
type: "POST",
dataType: "json",
url: "<?php echo(rootpath()) ?>/vote.php",
data: { product_id: '<?php echo($product_id_to_permalink) ?>' , rate_value: rate_value1 }
});
});
});
</script>
Ответ 6
Try this code...
<script>
function quote_ajax_table(){
var doc_name = '<?php echo $test; ?>';
var doc_no = '<?php echo $doc_no; ?>';
$.get('quote_ajax_table.php?doc_no='+doc_no+'&doc_name='+doc_name,function(data) {
$('.dyna').html(data);
});
}
</script>
//in html code
<div class="dyna"></div>
Ответ 7
В ответе Линуса Густава Ларссона Тиля говорится, что я использовал следующую функцию &.ajax(), которая срабатывает при нажатии кнопки, и она отлично работает. Я мог бы передать параметры дня, месяца и года.
$('#convertbtn').on('click',function(){
ageddajax = $("#agedd").val();
agedmmajax = $("#agemm").val();
ageyyyyajax = $("#ageyyyy").val();
if(ageddajax > 0 && agemmajax > 0 && ageyyyyajax >0){
$.ajax({
type:'POST',
url:'ajaxDataAge.php',
data:'agedd_id='+ageddajax +'&agemm_id='+agemmajax +'&ageyyyy_id='+ageyyyyajax,
success:function(html){
$('#cydivage').html(html);
}
});
}
});
Ответ 8
требуют ( "conn.php");
if(isset($_POST['save'])){
$temp = explode(".", $_FILES["file"]["name"]);
$newfilename = round(microtime(true)) . '.' . end($temp);
$filetmp = $_FILES["file"]["tmp_name"];
$filetype = $_FILES["file"]["type"];
$filepath = "offerImage/".$newfilename;
if(move_uploaded_file($filetmp,$filepath)){
$insert = "insert into tbl_offer_slider_image (image_path) value ('$filepath') ";
if(mysqli_query($conn,$insert)){
echo"<script>
alert('Image uploaded successfully')
</script>";
}else{
echo "<script>
alert('error in image uploading')
</script>";
}
}else{
echo "<script>
alert('image upload error')
</script>";
}
}
Выберите изображение:
Как я могу загрузить и сохранить несколько изображений