HTML-код
<form action="send.php" method="post">
<input type="hidden" name="qty" id="quantity" value="">
<input type="submit" id="submit">
</form>
КОД JAVASCRIPT
var qty=10;
$("#submit").click(function(){
$("#quantity").val(qty);
});
PHP FILE (send.php)
<?php
$showqty=$_POST['qty'];
echo $showqty;
?>
Мой код выше получает ошибку в php файле. В нем указано, что индекс qty не определен. Как отправить целочисленное значение переменной из javascript в php?
У вас нет проблем с javascript
или PHP
кодом.
когда вы получаете неопределенную ошибку, это означает, что объект даже не отправлен в файл send.php. поэтому проблема связана с объектом или с тем, как вы его отправляете, а не с его значением.
взглянув на ваш код, я увидел, что у вас есть два тега action
и тег method
и это то, что вызывает ошибку.
без тега метода, форма использует метод GET
вместо метода POST
.
поэтому вам просто нужно изменить эту строку:
<form action="send.php" action="post">
с этой строкой:
<form action="send.php" method="post">
просто используйте
var qty = document.getElementById("qty").value
action="post">
должен быть method="post">
Это может помочь вам:
<!doctype html>
<html lang="en">
<head>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script type="text/javascript">
$(document).ready(function(e) {
var qty=10;
$("#submit").click(function(e){
var qty=10;
$.ajax({
url:'send.php',
type:'POST',
data:{'qty':qty},
success: function(e){
alert(e);
//do some thing
}
});
});
});
</script>
</head>
<body>
<form id="myform" action="send.php" method="post" onSubmit="return false;">
<input type="submit" id="submit">
</form>
</body>
</html>
send.php
<?php
$showqty=$_POST['qty'];
echo $showqty;
?>