#php #jquery #mysql #json #ajax
#php #jquery #mysql #json #ajax
Вопрос:
В файле .js я беру данные, сохраняю их во входных данных и выполняю модальный
$('.editCircle').click('click', function () {
var reclamoIDedit = $(this).attr('data-edit');
$("#numReclamo").attr("value", reclamoIDedit);
$("#formUpdate").attr("action", "update.php?idReclamo=" reclamoIDedit);
$('#modalEdicion').modal('show');
});
другой файл .js отвечает за «отображение данных» из моей базы данных
var editorReclamo = document.getElementById('editReclamo')
, loader = document.getElementById('loader');
function cargarEditor() {
var peticion = new XMLHttpRequest();
var r = document.getElementById('numReclamo');
peticion.open('GET', 'edicionExistente.php?reclamo=' r);
loader.classList.add('active');
peticion.onload = function () {
var datos = JSON.parse(peticion.responseText);
for (var i = 0; i < datos.length; i ) {
var elemento = document.createElement('ul');
elemento.innerHTML = ('<form id="formUpdate" method="POST" action="" autocomplete="off"><input id="numReclamo" name="reclamo" value=""><div class="input-group"><input name="titulo" type="text" class="form-control" id="titulo" aria-describedby="basic-addon3" value="' datos[i].titulo '" maxlength="50"><div class="caracteres"> </div></div><div class="input-group" id="responsableID"><input name="responsable" type="text" class="form-control typeahead" id="responsableForm" aria-describedby="basic-addon3" data-toggle="tooltip" data-placement="right" value="' datos[i].responsable '"> </div><div class="input-group" id="descripcionID"><textarea name="descripcion" class="form-control" aria-label="With textarea" data-toggle="tooltip" data-placement="right" title="Deja claro la importancia y los beneficios para la comunidad la resolucion del problema">' datos[i].descripcion '</textarea></div><div class="modal-footer"><button type="Submit" class="btn btn-primary enviarReclamo btnGuardar"> Guardar!</button></div></form>');
editorReclamo.appendChild(elemento);
}
}
peticion.onreadystatechange = function () {
if (peticion.readyState == 4 amp;amp; peticion.status == 200) {
loader.classList.remove('active');
}
}
peticion.send();
$('.editCircle').click('click', function () {
cargarEditor();
});
url, по которому он все читает, будет следующим: edicionExistente.php
<?php
error_reporting(0);
header('Content-Type: application/json; charset=utf-8');
include "db.php";
$var = $_GET['reclamo'];
$db->set_charset("ut8");
$reclamos = mysqli_query($db, "SELECT * FROM `reclamos` WHERE id_reclamo= $var ");
$propuestas = [];
while ($fila = mysqli_fetch_array($reclamos)) {
$usuario = [
'id_propuesta' => $fila['id_reclamo'],
'titulo' => $fila['titulo'],
'responsable' => $fila['responsable'],
'descripcion' => $fila['descripcion'],
'imagen' => $fila['file_name'],
];
array_push($propuestas, $usuario);
}
echo json_encode($propuestas);
?>
мой вопрос в том, я понимаю, что проблема в том, что он не «изменяет» или не считывает переменную «r», куда я отправляю номер для фильтрации в базе данных dat….
Комментарии:
1. Предупреждение: Вы широко открыты для SQL-инъекций и действительно должны использовать параметризованные подготовленные инструкции вместо ручного построения ваших запросов. Они предоставляются PDO или MySQLi . Никогда не доверяйте никаким входным данным, особенно тем, которые поступают со стороны клиента. Даже когда ваши запросы выполняются только доверенными пользователями, вы все еще рискуете повредить свои данные .
2. Если вы хотите, чтобы мы ответили на вопрос, вам нужно задать его. У нас нет времени выяснять, с какой проблемой вы можете столкнуться или какого результата пытаетесь достичь. Мы бы хотели вам помочь, но нам нужно знать больше.
3. Я понимаю, что проблема в том, что она не «изменяет» или не считывает переменную «r», куда я отправляю номер для фильтрации в базе данных dat….
4. Если вы понимаете проблему, то что вы просите нас решить?
5. Я не знаю, как это исправить
Ответ №1:
Не могу прокомментировать. Но мы сказали выше в комментариях document.getElementById('numReclamo')
, что это не даст вам строку, которую, я полагаю, вы хотели бы передать в своем GET.
Может быть, вам стоит попробовать document.getElementById('numReclamo').value
? Это то, что вам нужно? Вы получите значение из этого элемента DOM (например, input или sth).