Ajax — Модал — Проходная переменная

Я знаю, что об этом много спрашивали, но, посмотрев на это около 6 часов, я могу сказать, что попробовал все, что с моими текущими знаниями (что не так много), я могу понять, поэтому я решил приехать сюда и попросить помощь от профи :).

Эта кнопка также находится внутри korisnik.php

<button href="#myModal1" type="submit" role="button" data-toggle="modal" data-id="<?php print $row['kime']?>" class="open-myModal1"><span class="glyphicon glyphicon-edit"/></button>

Эта кнопка вверху — кнопка, которая при нажатии открывает модальное окно и должна передать ему значение, но это не так. Просмотрев много постов в сети, я обнаружил, что проще всего отправить переменную обратно через AJAX, поэтому я использовал это:

Это находится в нижней части korisnik.php

$(document).on("click", ".open-myModal1", function ()
{
var kime = $(this).data('id');
$(".modal-body #kime").val( kime );
$.post('korisnik.php', { 'kime': kime });
});

С помощью $kime = $_POST['kime']; print $kime; в korisnici.php не показывает значение вообще, но используя <input type="text" name="kime" id="kime" value=""/> делает. Проблема с тем, что работает, заключается в том, что у меня до сих пор нет значения, необходимого внутри переменной, и я не могу использовать его для выполнения запроса на основе отправленного значения.

Итак, мой вопрос:

Как заставить это работать с ajax, чтобы я мог получить значение с помощью $ _POST [‘kime’]?

или же

Как я могу сохранить значение внутри поля ввода внутри переменной?

Я надеюсь, что я достаточно ясно с моей просьбой. Любая из этих работ работает, так как я получаю то, что хочу, и это значение сохраняется в переменной, которую я могу использовать для других целей.

Спасибо за любую помощь.

РЕДАКТИРОВАТЬ: Это модальный код внутри korisnik.php

            <div class="modal fade" id="myModal1">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button class="close" data-dismiss="modal">&times;</button>
<center><h4 class="modal-title">EDIT KORISNIKA</h4></center>
</div><!-- end header -->
<hr/>
<div class="modal-body">
<!--<input type="text" name="kime" id="kime" value=""/>-->
<input type='text' name='kime' id='kime' value=''/>
<form class="form-horizontal" action='korisnik.php' method="post">
<?php
$kime = $_POST['kime'];
$query = $db->prepare("SELECT * FROM korisnik WHERE kime = :kime");
$query-> execute(array(':kime' => $kime ));
$result = $query->fetch();
?>
<table class="table table-striped">
<tr><th style="vertical-align:middle"><center>Korisničko Ime</center></th><td><input readonly class="form-control"  name="username" value="<?php print $result['kime'] ?>"id="username" type="text"></td></tr>
<tr><th style="vertical-align:middle"><center>Ime</center></th><td><input class="form-control" onkeydown="ime(this)" onkeyup="ime(this)" onblur="ime(this)" onclick="ime(this)"  name="name" id="name" value="<?php print $result['ime'] ?>"  type="text"></td></tr>
<tr><th style="vertical-align:middle"><center>Prezime</center></th><td><input class="form-control" onkeydown="ime(this)" onkeyup="ime(this)" onblur="ime(this)" onclick="ime(this)" name="surname" id="surname" value="<?php print $result['prezime'] ?>" type="text"></td></tr>
<tr><th style="vertical-align:middle"><center>E-Mail</center></th><td><input class="form-control" name="email" id="email" onkeydown="emailk(this)" onkeyup="emailk(this)" onblur="emailk(this)" onclick="emailk(this)" value="<?php print $result['email'] ?>" type="email"></td></tr>
<tr><th style="vertical-align:middle"><center>Kredit</center></th><td><input class="form-control" name="kredit" id="kredit" onkeydown="alpha(this)" onkeyup="alpha(this)" onblur="alpha(this)" onclick="alpha(this)" value="<?php print $result['kredit'] ?>" type="number"></td></tr>
</table>
</div><!-- end body-->
<hr/>
<div class="modal-footer">
<input type="submit" class="btn btn-success pull-left" name="editk" value="Spremi Promjene" />
</form>
<button class="btn btn-default pull-right" data-dismiss="modal" type="button">Odustani</button>
</div><!-- end footer -->
</div><!-- end modal-content -->
</div><!-- end modal-dialog -->
</div><!-- end modal -->

1

Решение

В конце концов, после долгих часов бесконечных поисков и чтений я нашел решение этой проблемы. Вместо того, чтобы отправлять переменную в модальный режим и выполнять запрос внутри модального режима, я выполнял запрос перед модальным и отправлял все нужные мне значения следующим образом.

<script type="text/javascript">

$(document).on("click", ".open-myModal1", function ()
{

var kime = $(this).data('id');
var ime = $(this).data('ime');
var prezime = $(this).data('prezime');
var email = $(this).data('email');
var kredit = $(this).data('kredit');

$(".modal-body #username").val( kime );
$(".modal-body #name").val( ime );
$(".modal-body #surname").val( prezime );
$(".modal-body #email").val( email );
$(".modal-body #kredit").val( kredit );
});
</script>

и кнопка, которую я использовал, чтобы открыть модал, была такой.

<button href="#myModal1" role="button" data-toggle="modal" data-id="<?php print $row['kime']?>" data-ime="<?php print $row['ime']?>" data-prezime="<?php print $row['prezime']?>" data-email="<?php print $row['email']?>" data-kredit="<?php print $row['kredit']?>" class="open-myModal1"></button>

Модальный код:

    <div class="modal fade" id="myModal1">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button class="close" data-dismiss="modal">&times;</button>
<center><h4 class="modal-title">EDIT KORISNIKA</h4></center>
</div><!-- end header -->
<hr/>
<div class="modal-body">
<form class="form-horizontal" action='korisnik.php' method="post">
<table class="table table-striped">
<tr><th style="vertical-align:middle"><center>Korisničko Ime</center></th><td><input readonly class="form-control"  name="username" value=""id="username" type="text"></td></tr>
<tr><th style="vertical-align:middle"><center>Ime</center></th><td><input class="form-control" onkeydown="ime(this)" onkeyup="ime(this)" onblur="ime(this)" onclick="ime(this)"  name="name" id="name" value=""  type="text"></td></tr>
<tr><th style="vertical-align:middle"><center>Prezime</center></th><td><input class="form-control" onkeydown="ime(this)" onkeyup="ime(this)" onblur="ime(this)" onclick="ime(this)" name="surname" id="surname" value="" type="text"></td></tr>
<tr><th style="vertical-align:middle"><center>E-Mail</center></th><td><input class="form-control" name="email" id="email" onkeydown="emailk(this)" onkeyup="emailk(this)" onblur="emailk(this)" onclick="emailk(this)" value="" type="email"></td></tr>
<tr><th style="vertical-align:middle"><center>Kredit</center></th><td><input class="form-control" name="kredit" id="kredit" onkeydown="alpha(this)" onkeyup="alpha(this)" onblur="alpha(this)" onclick="alpha(this)" value="" type="number"></td></tr>
</table>
</div><!-- end body-->
<hr/>
<div class="modal-footer">
<input type="submit" class="btn btn-success pull-left" name="editk" value="Spremi Promjene" />
</form>
<button class="btn btn-default pull-right" data-dismiss="modal" type="button">Odustani</button>
</div><!-- end footer -->
</div><!-- end modal-content -->
</div><!-- end modal-dialog -->
</div><!-- end modal -->

Спасибо всем, кто пытался помочь! До следующего раза!

1

Другие решения

Я думаю, что вы ошиблись в синтаксисе. Вы должны назвать это так:

$.ajax({
type: "POST",
url:  "korisnik.php",
data:
{
kime: kime
}
});
0

Вам не хватает закрывающей фигурной скобки в функции щелчка.

$.post('korisnik.php', { 'kime': kime });

Над постом тоже должен работать.

Получить его в PHP следующим образом:

$kime = $_POST['kime'];
0
По вопросам рекламы [email protected]