jquery — передача результата Mysqli из php-метода в html-файл, чтобы показать его там

Я написал NotesApp, где пользователь может войти в систему после того, как он зарегистрировался.

Я делаю перенаправления после каждого шага.

Я использую UserID в таблице заметок, чтобы иметь возможность передавать только заметки от конкретного пользователя. Идентификатор пользователя сохраняется в переменной $ _SESSION в PHP.

Метод в моем DBHandler-классе, который должен получать данные из базы данных, выглядит следующим образом:

function getNotes($userID){
assert($this->connection);

$db = $this->connection;

$queryCreate = "select `title`,`content` from `notesnew` where `userid` = ?;";
$statement = $db->prepare($queryCreate);
$statement->bind_param('s',$userID);
$statement->execute();
$result = $statement->get_result();
$returnVar = array();
while($row = mysqli_fetch_array($result, MYSQLI_ASSOC)){
$returnVar[] = $row;
}
echo json_encode($returnVar);
}

Я вызываю метод после того, как пользователь нажал «Add-Note» (он может установить заголовок, текст, затем «Add-Note-Button» -> Note вставляется в базу данных.

Теперь я хочу сделать Ajax-запрос на добавление заметок в div.

Я сделал несколько попыток, я знаю, что это не совсем правильно, но я не знаю, как передать $ _SESSION [«UserID»] (который на самом деле только на стороне сервера) в метод ajax.

Вот мои первые попытки AJAX, так что не злись XD

<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<title>MyNotes</title>

<link rel="stylesheet" href="notesStyle.css"/>
<script src="http://code.jquery.com/jquery-latest.min.js"type="text/javascript"></script>
</head>
<body>

<form action="notes.php" method="post">
<label>Add Note</label><br><br>
<input type="text" name="Title" value="title"/><br>
<input type="text" name="Text" value="text"/><br>
<input type="submit" id="Submitter" name="Submit" value="Add Note"/>
</form>

<div id="notesDiv">
<label>YourNotes</label>
</div>


<script>
$.('#Submitter').click(function(){
$.ajax({
url:'DBHandler.php',
data:'POST',
dataType:'json',
success:function(rows){
for (var i in rows){
var row = rows[i];
$('#notesDiv').append(row);
}
}
});
});
</script>
</body>
</html>

Это вообще хороший способ использовать Ajax для моей конкретной проблемы?

Можете ли вы сказать мне, что я должен добавить, чтобы это работало? Это также перенаправляет меня, после того, как я нажал на кнопку добавления заметки (что я не хочу)

Я думал о том, чтобы поместить html в php-файл и отобразить $ _SESSION [«UserID»] в переменную Jscript. Имеет ли это смысл?

Спасибо за вашу помощь! Я очень рад, что зарегистрировался здесь 🙂

1

Решение

Задача ещё не решена.

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

Других решений пока нет …

По вопросам рекламы [email protected]