Auto refresh div
Hej eksperter.Jeg har lavet et lille feed system på en side jeg leger lidt med lige nu. og det hele virker fint. Bortset fra at jeg gerne vil have den skal refresh der hvor man skal kunne se den nyeste feed når der kommer en.
Jeg har prøvet mig lidt frem men kan ikke få den til at virke som jeg gerne vil.
her kommer min mgh_java.js fil.
function auto_load() {
$.ajax({
url: "controller/features.php",
cache: false,
success: function (data) {
$("#feed").html(data);
}
});
}
$(document).ready(function(){
auto_load();
});
setInterval(auto_load, 1000);
som i kan se prøver jeg at kalde en fil der hedder features.php som ligger i en mappe der hedder controller.
Jeg har en <span id="feed"></span> som er den jeg prøver at fange i mit script. Men intet sker. Jeg kan simpelt hen ikke gennemskue hvad jeg gør forkert.
Lige for en god ordens skyld får i lige mine php filer med også. Det er dem der bliver brugt for at få det til at køre.
features.php
<?php
class Features extends Database {
function __construct() {
parent::__construct();
}
function _feature() {
$sql = "select * from features";
$result = $this->_DBCONN->query($sql);
if(mysqli_num_rows($result)>0) {
while($row = $result->fetch_assoc()) {
$title = $row['title'];
$msg = $row['msg'];
$picture = $row['picture'];
if(empty($picture)) {
$picture = 'nopic.jpg';
}
}
} else {
$title = 'Velkommen';
$msg = 'Dette er et ny cms system som skal kunne bruges til jobrelateret søgning. Det er meningen at denne
side skal fungere som en præsentation af dig.
For at kunne få det til at fungere skal du linke til din side i dit, cv på jobnet.dk og alle andre job sider du
måtte være på';
$picture = 'nopic.jpg';
}
?>
<article id="feature">
<span id="info">
<h1><?php echo $title; ?></h1>
<?php echo nl2br($msg); ?>
</span>
<img src="<?php echo ROOT_URL.IMG_UPL.$picture; ?>">
</article>
<figure id="floor">
</figure>
<?php
}
function _rssFeed() {
$sql = "select * from feeds order by feed_id DESC limit 4";
$result = $this->_DBCONN->query($sql);
echo '<figure id="features">';
if(mysqli_num_rows($result)>0) {
echo '<span id="feed">
<img src="'.ROOT_URL.IMG_ICO_SM.'rss.png" id="ico"><h3>Hvad siger andre!</h3><ul>';
while($row = $result->fetch_assoc()) {
$feed_id = $row['feed_id'];
$name = $row['name'];
$msg = $row['msg'];
?>
<li><a href=""><h4><?php echo $name; ?></h4><p><?php echo $msg; ?></p></a></li>
<?php
}
echo '</ul></span>';
} else {
echo '<span id="rss">
<img src="'.ROOT_URL.IMG_ICO_SM.'rss.png" id="ico"><h3>Hvad siger andre!</h3>
<p>Der er ikke nogen som siger noget vedrørende denne siden endnu. Giv mig din mening og bliv den føreste.</p>
</span>';
}
?>
<span id="rss">
<img src="<?php echo ROOT_URL.IMG_ICO_SM.'rss.png'; ?>" id="ico"><h3>Kom med din mening!</h3>
<form action="" method="post">
<input type="hidden" name="feed_date" value="<?php echo date("Y-m-d"); ?>">
<label>Navn</label><input type="text" name="name" placeholder="Indtast Navn">
<label>Email</label><input type="email" name="email" placeholder="Indtast Email">
<label>Besked</label><textarea name="msg" placeholder="Kom med din mening om denne type side. Kom gerne med en fyldig begrundelse til hvorfor det er godt eller skidt."></textarea>
<input type="submit" name="send" value="Send" id="btn">
<input type="reset" value="Slet Alt" id="btn">
</form>
<?php
if(isset($_POST['send'])) {
$name = $_POST['name'];
$email = $_POST['email'];
$msg = $_POST['msg'];
$feed_date = $_POST['feed_date'];
$this->_sendFeed($name, $email, $msg, $feed_date);
}
?>
</span>
<?php
echo '</figure>';
}
function _sendFeed($name, $email, $msg, $feed_date) {
$sql = "insert into feeds(name, email, msg, feed_date) value('$name', '$email', '$msg', '$feed_date')";
if($this->_DBCONN->query($sql)) {
echo '<span id="success">Mening tilkendegivet, Tak skal du have</span>';
} else {
echo '<span id="failed">Du skal udfylde alle felter korrekt!</span>';
}
}
}
reason.php
<?php
class Reason extends Database {
function __construct() {
parent::__construct();
}
function _reasons() {
$sql = "select * from missions";
$result = $this->_DBCONN->query($sql);
if(mysqli_num_rows($result)>0) {
while($row = $result->fetch_assoc()) {
$title = $row['title'];
$msg = $row['msg'];
?>
<article id="about">
<span id="reason">
<h3><?php echo $title; ?></h3>
<?php echo nl2br($msg); ?>
</span>
</article>
<?php
}
} else {
$title = 'info om side';
$msg = 'Her kommer en beskrivelse af formål og vision for denne side.';
?>
<article id="about">
<span id="reason">
<h3><?php echo $title; ?></h3>
<?php echo nl2br($msg); ?>
</span>
</article>
<?php
}
}
}
home.php
<?php
$featured->_feature();
$reasons->_reasons();
$featured->_rssFeed();
Det som er i det er at det som folk skriver ved at skulle give sin mening om sitet bliver gemt fint nok i min database. Jeg kan også sagtens hente det ud ingen problemer der. Men så snart jeg gerne vil have den til at auto refresh min <span id="feed"></feed> som indeholder det som folk har skrevet. så sker der ikke noget.
Jeg håber i kan finde ud af hvad jeg mener. eller må i sige til og jeg skal prøve at forklare det igen.
på forhånd tak for hjælpen.