Hallo liebe Gemeinde von tutorials.de,
ich schreibe euch an, da ich nicht weiter komme und mein Lehrer ebenfalls keine Idee hatte warum es nicht klappt.
Nun ich habe vor ein kleines Chat-programm zu erstellen. Soweit steht auch alles. Die nachrichten werden in gruppen hashs gepackt und per post an den chat weiter gegeben, damit mein mysql-script weiss welche Nachrichten bzw. welchen gruppen hashs er aktualiesiren soll. Es fehlt einfach nur, dass er mir die neuen nachrichten anzeigt. Per Ajax läd er die conversation neu, jedoch ohne den aktuelsten einträgen. Es happert nur noch an dieser stelle. Das ist echt ärgerlich.
Hier gebe ich euch noch meine scripte mal weiter damit Ihr auch genau wisst wo das problem liegt, bzw. das problem Lokaliesieren Könnt.
Das ist meien AJAX Funktion
und das ist die jeweilige Seite die aktualiesiert werden soll
Vielen Dank schon mal im Vorraus und hoffe ihr könnt mir helfen und ich hab es nicht im falschen forum gepostet.
mfg. brizzi

ich schreibe euch an, da ich nicht weiter komme und mein Lehrer ebenfalls keine Idee hatte warum es nicht klappt.
Nun ich habe vor ein kleines Chat-programm zu erstellen. Soweit steht auch alles. Die nachrichten werden in gruppen hashs gepackt und per post an den chat weiter gegeben, damit mein mysql-script weiss welche Nachrichten bzw. welchen gruppen hashs er aktualiesiren soll. Es fehlt einfach nur, dass er mir die neuen nachrichten anzeigt. Per Ajax läd er die conversation neu, jedoch ohne den aktuelsten einträgen. Es happert nur noch an dieser stelle. Das ist echt ärgerlich.
Hier gebe ich euch noch meine scripte mal weiter damit Ihr auch genau wisst wo das problem liegt, bzw. das problem Lokaliesieren Könnt.
Das ist meien AJAX Funktion
Code:
<script type="text/javascript" >
$(document).ready(function() {
$("incontent").load("conver.php");
var hash = $("#hasher").val("");
var auto_refresh = setInterval(
function ajax ()
{
$('#incontent').fadeOut("slow").load(function() {
$.ajax({
url:"conver.php?r=" + Math.random(),
data: "hash="+hash,
cache: false,
success: function(update)
{
$("#incontent").html(update);
}
});
return false;
}).fadeIn("slow")}, 30000);
$.ajaxSetup({ cache:false});
});
setTimeout(ajax(),3000);
</script>
und das ist die jeweilige Seite die aktualiesiert werden soll
PHP:
<?php
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
session_start();
$_username = $_SESSION["User"];
$von=$_SESSION['usere'];
$my_id=$_SESSION['my_id'];
require("config.inc.php");
$_SESSION['hash']=$_GET['hash'];
?>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#fom12").submit(function() {
if($("#nachrichten").val() == ""){
$("#incontent").html("Bitte schreibe eine Nachricht");
}else{
var nachrichten = $('#nachrichten').attr("value");
var hash = $('#hasher').attr("value");
$("#incontent").html("Lade...");
$.ajax({
type:"POST",
url:"die_msg.php",
data: "nachricht=" + nachrichten +"&hash="+hash,
success: function(msg)
{
$("#incontent").html(msg);
}
});
}
return false;
});
});
</script>
<input type="text" value="<? echo $_GET['hash'];?>" id="hasher" name="hash" style="visibility:hidden">
<?
require("config.inc.php");
if(isset($_GET['hash']) && !empty($_GET['hash'])){
$hash= $_GET['hash'];
$_SESSION['hash']=$hash;
$message_query= mysql_query("SELECT * FROM nachrichten WHERE gruppen_nachricht='$hash' ORDER BY datum DESC");
while($run_message = mysql_fetch_array($message_query)){
$from_id= $run_message['from_id'];
$message= $run_message['nachricht'];
$datem= $run_message['datum'];
$_SESSION['from_user']=$run_message['from_id'];
$user_query= mysql_query("SELECT * FROM Persons WHERE PersonID='$from_id'");
$run_user= mysql_fetch_array($user_query);
$from_username= $run_user['username'];
if ($from_username == $_username) {
echo'<div class="ich">
<div class="linker">
<h1><b> '.$from_username.'</b></h1>
<h1> '.$message.'</h1>
<div class="wann"> <p> '.$datem.' </p> </div>
</div>
<div class="um_ecke">
<div class="ecke_links"> </div>
</div>
</div>';
} else {
echo'<div class="anderer">
<div class="rechter">
<h1><b> '.$from_username.'</b></h1>
<h1> '.$message.'</h1>
<div class="wann"> <p> '.$datem.' </p> </div>
</div>
<div class="um_ecke_r">
<div class="ecke_rechts"> </div>
</div>
</div>';
}
}
?>
<br/>
<!-- <script type="text/javascript" src="jquery-1.11.0.js"></script> -->
<form name="forml" method="post" id="fom12">
Antwort:<br/>
<textarea name="nachricht" id="nachrichten" rows="6" cols="50"></textarea>
<br/>
<input type="submit" id="submit" value="Sende" />
</form>
<?
}
?>
Vielen Dank schon mal im Vorraus und hoffe ihr könnt mir helfen und ich hab es nicht im falschen forum gepostet.
mfg. brizzi

