Liebe Php Community,
ich bin gerade dabei einen Chat zu programmieren und bin auch relativ weit gekommen bis mir aufgefallen ist, dass beim Schreiben von Sonderzeichen, wie z.B. Umlaute und +, Fehler auftreten und das Plus sogar gar nicht angezeigt wird, wenn man den Chat aktualisiert. Ich habe nun meinen ganzen Samstag damit verbracht, den Fehler zu finden und bin einfach nur frustriert. Den Chat hatte ich am Freitag abend geschrieben, weil ich einfach mal Lust hatte einen Chat zu programmieren und deswegen ist er auch noch voller Fehler im Aufbau, da es mir eben einfach nur ums Prinzip ging.
den Chat findet ihr hier: www.chabfo.com/1/index.php
index.php
ChatDatenbankGET.php
ChatDatenbank.php
ajax.php
Ich freue mich über jegliche Hilfe und schonmal Danke im Voraus!
Euer Neat
ich bin gerade dabei einen Chat zu programmieren und bin auch relativ weit gekommen bis mir aufgefallen ist, dass beim Schreiben von Sonderzeichen, wie z.B. Umlaute und +, Fehler auftreten und das Plus sogar gar nicht angezeigt wird, wenn man den Chat aktualisiert. Ich habe nun meinen ganzen Samstag damit verbracht, den Fehler zu finden und bin einfach nur frustriert. Den Chat hatte ich am Freitag abend geschrieben, weil ich einfach mal Lust hatte einen Chat zu programmieren und deswegen ist er auch noch voller Fehler im Aufbau, da es mir eben einfach nur ums Prinzip ging.
den Chat findet ihr hier: www.chabfo.com/1/index.php
index.php
PHP-Code:
<?php
session_start();
$_SESSION["TextNr"] = array();
//$_SESSION["TextNr"][] = 4;
//echo $_SESSION["TextNr"][2];
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
<head>
<title>Chat</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="description" content="" />
<meta name="author" content="" />
<meta name="keywords" content="" />
<link href="style.css" type="text/css" rel="stylesheet" />
<script type="text/javascript" src="jQuery/jquery-1.9.1.min.js"></script>
<script type="text/javascript" src="jQuery/draganddrop.js"></script>
<script type="text/javascript" src="jQuery/ajax.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
</head>
<body>
<div id="Chatbox">
<div id="Balken">
Andere Farbe für den header
</div>
<div id="Konversation">
<b>Chatverlauf</b>
</div>
<div id="Textfeld">
<form id="ChatInput" action="" method="">
<textarea name="Text" id="Text"></textarea>
<input id="SubmitMsg" type="submit" value="Senden" />
</form>
</div>
<div id="Senden">
<b>Senden</b>
</div>
</div>
</body>
</html>
PHP-Code:
<?php
session_start();
//mysql_connect("","root");
mysql_connect("rdbms.strato.de", "", "");
//mysql_query("create database if not exists chatbase");
//mysql_select_db("chatbase");
mysql_select_db("");
$Tabelle = "create table if not exists Chatverlauf (Nummer int(11) auto_increment, Sortierung timestamp, Text varchar(1000) not null, Datum varchar(20) not null, Zeit varchar(20) not null, unique key Nummer (Nummer)) ENGINE=MyISAM default charset=latin1";
mysql_query($Tabelle);
$suchen = "select * from Chatverlauf";
$res = mysql_query($suchen);
$num = mysql_num_rows($res);
//$ladenNr = $num - sizeof($_SESSION["TextNr"]);
$ArrayZahl = sizeof($_SESSION["TextNr"]) + 1;
//echo $ladenNr;
for($i = $ArrayZahl; $i <= $num; $i++)
{
$suchenSpec = "select * from Chatverlauf where Nummer = '$i'";
$resSpec = mysql_query($suchenSpec);
while($dsatz = mysql_fetch_assoc($resSpec))
{
$dsatz1 = htmlentities($dsatz["Text"]);
$dsatz2 = htmlentities($dsatz["Zeit"]);
$dsatz3 = htmlentities($dsatz["Datum"]);
echo "<p><b>" . $dsatz2 . "</b>" . $dsatz1 . "</p>";
}
$_SESSION["TextNr"][] = $i;
}
//while($dsatz = mysql_fetch_assoc($res))
//{
//$dsatz1 = htmlentities($dsatz["Text"]);
//echo $dsatz1;
//}
?>
PHP-Code:
<?php
session_start();
//mysql_connect("","root");
mysql_connect("rdbms.strato.de", "", "");
//mysql_query("create database if not exists chatbase");
//mysql_select_db("chatbase");
mysql_select_db("");
mysql_select_db("chatbase");
$Tabelle = "create table if not exists Chatverlauf (Nummer int(11) auto_increment, Sortierung timestamp, Text varchar(1000) not null, Datum varchar(20) not null, Zeit varchar(20) not null, unique key Nummer (Nummer)) ENGINE=MyISAM default charset=latin1";
mysql_query($Tabelle);
if($_GET["Text"] != "")
{
$Datum = date("d.m.Y"); //Tag.Monat.Jahr
$Zeit = date("H:i:s");
$TDecode = $_GET["Text"];
$T = mysql_real_escape_string($TDecode); //umwandeln von sql anweisungen um sie für mysql unschädlcih zu machen
$Datensatz = "insert into Chatverlauf (Nummer, Sortierung, Text, Datum, Zeit) values (NULL, CURRENT_TIMESTAMP, '$T', '$Datum', '$Zeit')";
mysql_query($Datensatz);
$Pruefen = "select * from Chatverlauf where Datum = '$Datum' and Zeit = '$Zeit'";
$res = mysql_query($Pruefen);
while($dsatz = mysql_fetch_assoc($res))
{
$dsatz1 = htmlentities($dsatz["Nummer"]);
$_SESSION["TextNr"][] = $dsatz1;
}
}
?>
PHP-Code:
$(document).ready( function()
{
$("#Text").focus();
$.fn.scrollTo = function( target, options, callback ){
if(typeof options == 'function' && arguments.length == 2){ callback = options; options = target; }
var settings = $.extend({
scrollTarget : target,
offsetTop : 50,
duration : 500,
easing : 'swing'
}, options);
return this.each(function(){
var scrollPane = $(this);
var scrollTarget = (typeof settings.scrollTarget == "number") ? settings.scrollTarget : $(settings.scrollTarget);
var scrollY = (typeof scrollTarget == "number") ? scrollTarget : scrollTarget.offset().top + scrollPane.scrollTop() - parseInt(settings.offsetTop);
scrollPane.animate({scrollTop : scrollY }, parseInt(settings.duration), settings.easing, function(){
if (typeof callback == 'function') { callback.call(this); }
});
});
}
var index = 0;
$("#SubmitMsg").click( function() {
alert("Hallo");
var Msg = $("#Text").val();
$.post("post.php", {text: Msg});
$("#Text").attr("value", "");
return false;
});
$("#Senden").click( function() {
var Text = $('#Text').val();
$("#Konversation").append("<p>" + Text + "</p>");
$("#Konversation").scrollTo("#Konversation:last", {easing: 'swing', duration: '1000'});
$('#Text').val("");
$("#Text").focus();
var URL = "ChatDatenbank.php?Text=" + Text;
$.get(URL, function(ergebnis) {
});
//$('#Konversation').animate({
//scrollTop: $("#Konversation:last").offset().top
//}, 500);
});
$("#Text").keydown(function(e) {
if (e.which == 13) { // Enter
e.preventDefault(); // Damit kein Enter nach dem Absenden hinzugefügt wird
var Text = $('#Text').val();
$("#Konversation").append("<p>" + Text + "</p>");
$("#Konversation").scrollTo("#Konversation:last", {easing: 'swing', duration: '1000'});
$('#Text').val("");
//var meineDaten = $('#ChatInput').serialize();
var URL = "ChatDatenbank.php?Text=" + Text;
$.get(URL, function(ergebnis) {
});
//$.post("ChatDatenbank.php", {TextPost: Text});
//postToUrl(URL, {Text: 'Text'});
//$.post(URL, meineDaten, function(ergebnis) {
//}, 'html');
}
});
setInterval(function() {
var URL = "ChatDatenbankGET.php";
$.post(URL, function(ergebnis) {
if (ergebnis)
{
$("#Konversation").append(ergebnis);
//$("#Konversation").scrollTo("#Konversation:last", {easing: 'swing', duration: '1000'});
if(index == 0)
{
$("#Konversation").animate({ scrollTop: 7000 }, 1000);
index = 1;
}else
{
$("#Konversation").scrollTo("#Konversation:last", {easing: 'swing', duration: '1000'});
}
}
});
}, 1000);
});
Euer Neat
Kommentar