내 코드가 모든 POST 데이터를 보내지 않는 이유를 알아 내려고했습니다. 이 코드는 메인 페이지에서 DB에 저장되어있는 요청 정보를 얻기 위해 사용되며 별도의 페이지에서 DB에 대한 상태 업데이트를 게시하는 데 사용됩니다. 기본적으로 변수 이름을 제외하고는 동일합니다.POST가 모든 양식 변수를 가져 오지 않음
참고 : 여기를 많이 검색했습니다. 필자는 배열의 '내용'데이터 만 보여주는 var_dump를 사용했습니다. 임씨는 js에 완전히 만족하지는 않지만 그 중 일부는 따라갈 수 있습니다. 따라서 아래 코드는 다른 페이지로 확장하기 전에 한 페이지에서 편집하고 테스트 한 템플릿입니다. 문제가있는 곳. 나는 그것이 왜 다른 하나가 아니라면 효과가 있는지 확신하지 못한다. 이것이 무엇이라도 중복으로 여겨지는 경우 사과드립니다.하지만 이유를 설명하는 유사한 게시물에서 좋은 답변을 찾지 못했습니다. admin.php :를 호출
if(isSet($_POST['content1'], $_POST['avatar']))
{
$content1=$_POST['content1'];
$avatar=$_POST['avatar']; // <--- comes back NULL
$sql_in= mysqli_query($con,"SELECT comment,comment_id,status_time FROM comments order by comment_id desc");
$r=mysqli_fetch_array($sql_in);
}
그리고 마지막으로 post.js :
$(function() {
$(".post_button").click(function() {
var element = $(this);
var test = $("#content1").val();
var dataString = 'content1='+ test;
if(test=='')
{
alert("Please Enter Some Text");
}
else
{
$("#flash").show();
$("#flash").fadeIn(400).html('<span class="loading">Loading Comment...</span>');
$.ajax({
type: "POST",
url: "insert.php",
data: dataString,
cache: false,
success: function(html){
$("#display").after(html);
document.getElementById('content1').value='';
$("#flash").hide();
}
});
}
return false;
});
});
위해서 var_dump 등 :
다음<form action="insert.php" method="post" enctype="multipart/form-data">
<div class="share">
<div class="arrow"></div>
<div class="panel panel-default">
<div class="panel-body">
<div class="">
<img src="../logo.png" style="height:60px; width:60px; float:left; margin-right:3px;" />
<textarea name="content1" id="content1" cols="40" rows="10" class="form-control message" style="height: 60px; width:450px; overflow: hidden;"></textarea>
</div>
</div>
<div class="panel-footer">
<div class="row">
<div class="col-md-7">
<div class="form-group">
<div class="btn-group">
<select name="avatar" id="avatar" class="form-control-issue-avatar"> <----whats not sending
<option value="0" selected="selected">Author</option>
<option value="per1">P</option>
<option value="per2">W</option>
</select>
</div>
</div>
</div>
<div class="col-md-5">
<input type="submit" value="Post" class="post_button">
</div>
</div>
</div>
</div>
</form>
는 insert.php입니다
Array ([content1] => sass)
C:\wamp64\www\post\insert.php:32:
array (size=1)
'content1' => string 'sass' (length=4)
PHP로 아약스를 통해 전달하는 형태의 모든 데이터를 얻기 위해 양식에
serialize()
를 사용 귀하의 JS에서 데이터를 보내지 않았거나 뭔가를 놓치고 있습니까? – BarryWalsh하나의 변수 만 보내고 있습니다. 왜 양식을 연재하시지 않으시겠습니까 – Akintunde007
알아 내고자하는 게 뭐죠? js는 첫 번째 페이지에서 사용 된 함수와 같습니다. 첫 번째 페이지에는 모든 부분 (IE 이메일, 사용자 이름, 문제의 텍스트 입력)을 잡는 데 아무런 문제가 없습니다. 단서가 없습니다. 나는 수정없이 querySelectorAll을 사용하여 편집을 시도했다. @BarryWalsh – wiggins3