Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Estou precisando enviar variáveis para o arquivo "meu_ajax.php", estou usando o plugin serializeToJSON, porém não está enviando com método POST para o arquivo php.
Como eu poderia enviar as variáveis dos **<input type=hidden> **para que grave no banco?
Loop do PHP
...
<form>
<input type="hidden" name="id_i" id="id_i" value="<?php echo $id_i; ?>">
<input type="hidden" name="id_usuario" id="id_usuario" value="<?php echo $id_usuario; ?>"/>
<input type="hidden" name="auxiliar_fornecedor" id="auxiliar_fornecedor" value="<?php echo $row["auxiliar"]; ?>">
<div class="number" data-last="<?php echo substr($row ["telefone"], 6, 6); ?>"><?php echo substr($row ["telefone"], 0, 6); ?><span><strong>Clique aqui para ver o número</strong></span></div>
</form>
...
JavaScript
$('.number').click(function(ev) {
$(this).find('span').text( $(this).data('last') );
$.ajax({
type: "POST",
url:'meu_ajax.php',
data: $(ev.target).parents('form').serializeToJSON(),
error: function () {
alert('Erro');
}
});
});
meu_ajax.php
...
if(!$conect->query("INSERT INTO visualizacoes_telefone (id_usuario, auxiliar_fornecedor, ip, data) VALUES ('".$_POST['id_usuario']."', '".$_POST['auxiliar_fornecedor']."','".$dado2."','".$dado1."')")) die ('Os dados não foram inseridos');
...>
5 minutos atrás, d1eg0. disse:
Amigo tente definindo as vars, e debugando oq teu php retorna
var param: $('input[name="nomeHidden"]').val();
$.ajax({
type: "POST",
url:'meu_ajax.php',
data: {param:param},
success:function(ret){
console.info(ret);//Debug pelo console do retorno do PHP
},
error: function () {
alert('Erro');
}
});
Estou fazendo assim, e agora está pegando sempre o ultimo resgistro do loop PHP
dos <input>. Como eu poderia fazer pra pegar a variável de acordo com o conteudo da div que eu clicar?
$('.number').click(function(ev) {
$(this).find('span').text( $(this).data('last') );
$.ajax({
type: "POST",
url:'meu_ajax.php',
data: $("#floorplan-form").serialize(),
error: function () {
alert('Erro');
}
});
});
<form id="floorplan-form">
<input type="hidden" name="id_i" id="id_i" value="<?php echo $id_i; ?>">
<input type="hidden" name="id_usuario" id="id_usuario" value="<?php echo $id_usuario; ?>"/>
<input type="hidden" name="auxiliar_fornecedor" id="auxiliar_fornecedor" value="<?php echo $produto["auxiliar"]; ?>">
<div class="number" data-last="<?php echo substr($produto ["telefone"], 6, 6); ?>"><i class="fa fa-phone" aria-hidden="true" </i> <?php echo substr($produto ["telefone"], 0, 6); ?><span><strong>Clique aqui para ver o número</strong></span></div>
</form>Desculpa mas não entendi a parte do loop
Faça assim:
$('.number').click(function(ev) {
$(this).find('span').text( $(this).data('last') );
$.ajax({
type: "POST",
url:'meu_ajax.php',
data: $(this).parents('#floorplan-form').serialize(),
error: function () {
alert('Erro');
}
});
});>
1 minuto atrás, d1eg0. disse:
Desculpa mas não entendi a parte do loop
Vou explicar,
Tem um loop** While do php** com todos os registros de telefones dos fornecedores. O tele fone está dentro da **<div class=number...>.**
Quero que quando o usario clica na **<div class=number...> **envia uma requisição ao jquery para que ele chame o arquivo **"meu_ajax.php" **e grave no banco as variáveis dos <input type=hidden> de acordo com a **<div class=number...> **clicada.
Do modo que falei por último está pegando apenas o último registro do loop do phpVocê precisa usar o seletor "$(this)"...
$('.number').click(function(ev) {
$(this).find('span').text( $(this).data('last') );
$.ajax({
type: "POST",
url:'meu_ajax.php',
data: $(this).parents('#floorplan-form').serialize(),
error: function () {
alert('Erro');
}
});
});>
2 minutos atrás, Eziquiel disse:
Você precisa usar o seletor "$(this)"...
$('.number').click(function(ev) {
$(this).find('span').text( $(this).data('last') );
$.ajax({
type: "POST",
url:'meu_ajax.php',
data: $(this).parents('#floorplan-form').serialize(),
error: function () {
alert('Erro');
}
});
});
Perfeito! obrigado
Amigo tente definindo as vars, e debugando oq teu php retorna
var param: $('input[name="nomeHidden"]').val();
$.ajax({
type: "POST",
url:'meu_ajax.php',
data: {param:param},