나는 튜토리얼 비디오 (길이 112 비디오)를 따라 갔다. 그래서 나는 코딩에 관해서 많은면에서 아주 무지하다. 나는 톤을 배웠지 만.ajax가있는 페이지에 html을 출력하는 방법을 모른다.
제목을 쓰는 데 어려움을 겪고 있습니다. 현재 작업중인 관리 패널에서 단락 태그에 jquery 부트 스트랩 도우미 클래스 (예 : http://i1379.photobucket.com/albums/...ps44962161.png
)의 "alert alert-success"가 할당되어 있습니다.
위의 예제에서 작동하는 이유는 save (삽입 및 업데이트)를 눌렀을 때 실행되는 SQL에 ajax가 필요하지 않기 때문입니다.
INSERTING 및 UPDATING이 config 폴더의 "queries.php"파일에있을 때 실행되는 코드입니다. 게시물을 삭제하는 경우 반향 할
case 'pages':
if (isset($_POST['submitted']) && $_POST['submitted'] == 1) {
// POST vars
$title = mysqli_real_escape_string($dbc, $_POST['title']);
$label = mysqli_real_escape_string($dbc, $_POST['label']);
$header = mysqli_real_escape_string($dbc, $_POST['header']);
$body = mysqli_real_escape_string($dbc, $_POST['body']);
if (isset($_POST['id']) AND $_POST['id'] != ''){
$action = "updated";
// UPDATE
$query = "UPDATE posts SET user = $_POST[user], slug = '$_POST[slug]', title = '$title', label = '$_POST[label]', header = '$header', body = '$body' WHERE id = $_GET[id]";
}else{
$action = "added";
// INSERT
$query = "INSERT INTO posts (type, user, slug, title, label, header, body) VALUES (1, $_POST[user], '$_POST[slug]', '$title','$label','$header','$body')";
}
$result = mysqli_query($dbc, $query);
//Error Handling
if ($result) {
$message = '<p class = "alert alert-success">Page was '.$action.'!</p>';
}else{
$message = '<p class = "alert alert-danger">Page could not be '.$action.' because: '.mysqli_error($dbc).'</p>';
$message .= '<p class = "alert alert-warning">Query: '.$query.'</p>';
}
}
if (isset($_GET['id'])) {$opened = data_post($dbc, $_GET['id']);}
break;
그러나, 나는 $ 메시지 변수를 얻는 방법을 모르는 : 그것은 (물론 오류 처리 부분)은 다음과 같다. 게시물이 왼쪽의 목록에서 즉시 사라 지도록 아약스를 사용하고 있습니다. 여기
는 자바 스크립트입니다 :$(".page-delete").on("click", function(){
var selected = $(this).attr("id");
var page_id = selected.split("del_").join("");
var confirmed = confirm("Are you sure you wanted to DELETE this page?");
if (confirmed == true) {
$.get("ajax/pages.php?id="+page_id);
$("#page_"+page_id).remove();
};
... 그리고 여기에 아약스의 :
여기include '../../config/connection.php';
$id = $_GET['id'];
$query = "DELETE FROM posts WHERE id = $id";
$result = mysqli_query($dbc, $query);
if ($result) {
echo "Page Deleted.";
} else {
"There was an error...<br>";
echo $query.'<br>';
echo mysqli_error($dbc);
}
이야라는 메시지가 뱉어하기 위해 노력하고있어 :
</div> <!-- END col-md-3 -->
<div class="col-md-9">
<!--FORM-->
<form role="form" action="index.php?page=pages&id=<?php echo $opened['id']; ?>" method="post">
<?php if(isset($message)) { echo $message; } ?>
<!-- INPUT FIELD for title -->
<div class="form-group">
<label for="title">Page Title</label>
<input type="text" class="form-control" value="<?php echo $opened['title'];?>" name="title" id="title" placeholder="Page's Title" />
</div>
감사합니다 도울 수있는 누구에게나, 그리고 나는 그럴듯한 무언가를 알지 못해 사과드립니다.
다시 읽어 주셔서 감사합니다. 평화!
줄'$ .get ("ajax/pages.php? id ="+ page_id);'에서 응답을 얻지 못했습니다. 또한 질문 & 코드의 범위를 좁히십시오. – Raptor
왜 당신은'$ title = mysqli_real_escape_string ($ dbc, $ _POST [ 'title']);'과 같은 어떤 데이터를 벗어나지 만 여전히 대부분의 사용자 데이터를 직접 삽입합니다. '$ query = "UPDATE posts user = $ _POST [user],'?? – Sean
확실하게'$ action'은 테스트되지 않고 할당되지 않아야하고 에러 메시지는'$ 결과 '가 아니라면 –