[英]AJAX to PHP - Not displaying new data
我有一小排圖像,我可以單擊,然后將veriable修飾到一個php文件中以進行數據庫查詢。在那里接收到veriable,並執行正確的查詢。 問題是。 而不是在我的頁面上更新HTML。 它只是在我的控制台中回聲...有人知道為什么嗎。 我的代碼似乎足夠合法...
<div id='smallpagination' class='smallpagination'>
<script>
function showvid(vid){
console.log ("sent"+vid);
var $vid = vid;
$.ajax({
type: "POST",
url: "smallpaginationdata.php",
data: {id: $vid},
success: function(vid){
console.log(vid)
},
error: function(){
alert("failure");
}
});
};
</script>
<?php
//search according to chosen search critera NOT LIMITED//
include ("conect.php");
$startit = 0;
$startfrom=rand(0,20);
$displayto=$startfrom+10;
$search="";
$startedfrom=$startfrom;
$sql = "SELECT * FROM testdata
WHERE title LIKE '%%$search%%'
LIMIT $startfrom , $displayto
";
// check how many results //
$result = $conn->query($sql);
$row_cnt = $result->num_rows;
while($row = mysqli_fetch_assoc($result)) {
$videos = $row['videos'];
$v_id = $row['id']; //<!---important is Video ID and needed for video click selection---->
$id = $row['id'];
$Name = $row['Name'];
if (empty($Name)) {$Name='Annonymous';}
$image = $row['image'];
$info = $row['info'];
if (empty($info)) {$info='Contact Listee (if Provided) , No Item Information Given';}
$phone = $row['phone'];
if (empty($phone)) {$phone='See Listing';}
$title = $row['title'];
$locate = $row['locate'];
if (empty($locate)) {$locate='Not Provided';}
$postcoded = $row['postcode'];
if (empty($postcoded)) {$postcoded='???';}
$price= $row['price'];
if (empty($price)) {$price='?';}
if ($price=='0') {$price='?';}
$date = $row['stamp'];
if (empty($date)) {$date='';}
if ($startit<1) {$gotid=$row['id']; $startit=$startit+1;};
$vidd= $row['id']-0.01;
$pidd= $row['id']-0.02;
$type = $row['type'];
$showinglocate=$row['id']-0.03;
$showingphone=$row['id']-0.04;
$displaytype="minlist";
//Thumbnails sized listings
if ($displaytype=="minlist") {
echo"
<div class='floaterminhomepage'>
<div class='innerfloaterminhomepage' >
";
if (!empty($videos)) {
echo "
<video id='$v_id' style='position:absolute; top:0%; left:0%; width:100%; height:100%; background-size: cover; object-fit:fill;' preload='metadata' onclick='showvid($v_id);'>
<source src='vid/{$row['videos']}.mp4' type='video/mp4'>
<source src='vid/{$row['videos']}.mp4' type='video/ogg'>
<source src='vid/{$row['videos']}.mp4' type='video/webm'>
</video >
"; }
if (empty($videos) && empty($image)) {
echo "
<img src='pageimages/blank.png' style='position:absolute; top:0%; left:0%; width:100%; height:100%;'>
"; }
if (!empty($image) && empty($video)) {
echo "
<img src='image/{$image}' style='position:absolute; top:0%; left:0%; width:100%; height:100%; background-size: cover; object-fit:fill;'>
"; }
echo "
</div>
</div>
"; }
};
?>
</div> <!---smallpagination--->
<?php
include('smallpaginationdata.php');
?>
SEND ID TO THIS PHP FILE...
<?php
include ("conect.php");
if (isset($_POST['id'])) {
$gotid = strip_tags($_POST['id']);
};
echo "recieved $gotid";
$sql = "SELECT * FROM testdata
WHERE id=$gotid;
";
// check how many results //
$result = $conn->query($sql);
$row_cnt = $result->num_rows;
while($row = mysqli_fetch_assoc($result)) {
$videos = $row['videos'];
$v_id = $row['id']; //<!---important is Video ID and needed for video click selection---->
$Name = $row['Name'];
if (empty($Name)) {$Name='Annonymous';}
$image = $row['image'];
$info = $row['info'];
if (empty($info)) {$info='Contact Listee (if Provided) , No Item Information Given';}
$phone = $row['phone'];
if (empty($phone)) {$phone='See Listing';}
$title = $row['title'];
$locate = $row['locate'];
if (empty($locate)) {$locate='Not Provided';}
$postcoded = $row['postcode'];
if (empty($postcoded)) {$postcoded='???';}
$price= $row['price'];
if (empty($price)) {$price='?';}
if ($price=='0') {$price='?';}
$date = $row['stamp'];
if (empty($date)) {$date='';}
$type = $row['type'];
};
THIS IS ECHOD INTO THE CONSOLE RATHER THAN IN THE PAGE???
echo "
<div id='pointerbox' class='pointerbox'>
</div>
<div id='smallpagdata' class='smallpagdata'>
<h5> {$gotid} </h5>
<h4><u>{$title}</u></h4>
<p style='color:crimson; margin-top:0px;'>£{$price}</p>
{$info}
<p style='color:crimson; margin-top:-2px;'>{$locate}</p>
<p style='color:blue; margin-top:-20px;'>{$Name}</p>
<p style='color:crimson; margin-top:-14px;'>{$phone}</p>
<p style='color:green; margin-top:0px;'>Thank you for viewing</p>
<p style='color:green; margin-top:-12px;'>Double Click image to view full listing & videos</p>
</div>
";
?>
它發送正確的ID
並收到它。
並且正確的數據顯示在我的控制台m中,而不是在html中更新...
關於為什么的任何想法。
提前致謝。
ps的HTML已經准備好了,一旦顯示在HTML沒有問題,但一旦我onclick並發送ajax,它只是呼應到控制台?
您應該將響應添加到div,而不是在成功函數中使用console.log。 我不知道如何在jquery中完成此操作,但查找起來應該非常簡單。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.