Webmaster Forum Logo Part 1 Webmaster Forum Logo Part 2
Webmaster Forum Logo Part 3
     
 
  :: Anmeldung

Benutzername:

Registrierung...

Passwort:

Passwort vergessen?

angemeldet bleiben


  
  :: Umfrage
Welche sozialen Netzwerke benutzt du regelmäßig?

 Facebook
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 73%
 keines
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 22%
 Google+
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 19%
 Twitter
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 11%
 Xing
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 6%
 schülerVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 6%
 meinVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 4%
 studiVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 4%
 MySpace
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 2%
 LinkedIn
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 2%

 ges. 393 Stimmen
 
  :: Buttons

Valid XHTML 1.0 Transitional

jasminkaemmi

Doppel-As

Dabei seit: 18.11.2005

Beiträge: 101

 

1 Zum Seitenanfang

Dienstag, 13. November 2007, 21:03

Gästebuch Problem

so nochmal ich. habe jetzt mein Gästebuch mittels JSON Arrays und XMLHTTPRequest eingebunden das funzt auch prima zumindest im Firefox im IE 7 macht er dagegen garnichts hier mein code:

das gb:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
<html>
  <head>
    <title>JavaScript</title>
    <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
    <script type="text/javascript" src="http.js"></script>
    <script type="text/javascript">
    var xhr;
    window.onload = function() {
      xhr = http();
      xhr.open("GET", "gbdaten.txt", true);
      xhr.onreadystatechange = datenAusgeben;
      xhr.send(null);
    };
    
    function datenAusgeben() {
      if (xhr.readyState == 4) {
        var rueckgabe = xhr.responseText;
        var objekt = eval("(" + rueckgabe + ")");
		var text='';

        for (var index in objekt) {
          var element = objekt[index];
          var name = element.name;
          var email = element.email;
          var homepage = element.homepage;
          var datum = element.datum;
          var zeit = element.zeit;
          var comment = element.comment;
		text+='<div id="entry">';
  		text+='<div id="name">'+name+'</div><div id="tbar">';
  		text+='<table width="460" border="0" cellspacing="0" cellpadding="0" ><tr>';
  		text+='<td height="27" background="images/Bilder/Unbenannt-1_01.gif" id="date">vom '+datum+' um '+zeit+'</td></tr><tr>';
    	text+='<td height="39" valign="top" background="images/Bilder/Unbenannt-1_02.gif" id=text>'+comment+'</td></tr> <tr>';
    	text+='<td height="27" background="images/Bilder/Unbenannt-1_04.gif" id="ehp"><div align="right">';
		text+='<a href="mailto:'+email+'">Email</a> <a href="'+homepage+'">Homepage</a></div></td></tr></table></div></div><br><br>';
		        document.getElementById("p").innerHTML = text;
        }


      }
    }
    
    </script>
    
    <style type="text/css">
<!--
#text {
	padding-right: 10px;
	padding-left: 10px;
	font-family: Arial, Helvetica, sans-serif;
	color: #666666;
}
#ehp {
	padding-right: 30px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 11px;
	color: #990000;
	font-weight: bold;
}
#entry {
	width: 600px;
	background-image: url(images/gb_entry.gif);
	background-repeat: no-repeat;
}
#tbar {
	display: block;
	margin-top: 30px;
	margin-left: 90px;
	width: 460px;
}
#name {
	font-family: Impact, "Arial Black", Arial;
	font-size: 24px;
}
a {
	text-decoration:none;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	color:#333333;
	}
a:hover{
	text-decoration:none;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #ff9900;
}
#date {
	padding-left: 20px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	color: #000000;
	font-weight: bold;
}
-->
    </style>
  </head>
  <body>
    <h1>AJAX</h1>
    <p id="p"></p>
  </body>
</html>


und hier die gbdaten.txt

Quellcode

1
2
3
4
5
6
7
8
[
 {"name": "dasf", "email":"", "homepage": "", "datum": "08.11.2007" , "zeit": "16:49:1", "comment": "dsf"} , 
 {"name": "dasf", "email": "","homepage": "", "datum": "08.11.2007" , "zeit": "17:22:0", "comment": "dasf"} ,
 {"name": "dasf", "email": "","homepage": "", "datum": "08.11.2007" , "zeit": "17:22:0", "comment": "dasf"} ,
 {"name": "dasf", "email": "","homepage": "", "datum": "08.11.2007" , "zeit": "17:22:0", "comment": "dasf"} ,
 {"name": "dsfa", "email": "","homepage": "", "datum": "08.11.2007" , "zeit": "17:23:1", "comment": "dasf"} , 
{"name": "dsfa", "email": "","homepage": "", "datum": "08.11.2007" , "zeit": "17:23:1", "comment": "dasf"} 
]


und die http.js

Quellcode

1
2
3
4
5
6
7
8
9
function http() {
  var http;
  if (window.XMLHttpRequest) { 
    http = new XMLHttpRequest();
  } else if (window.ActiveXObject) {
    http = new ActiveXObject("Microsoft.XMLHTTP");
  }
  return http;
}
 

Dabei seit: 05.08.2003

Beiträge: 1 073

 

2 Zum Seitenanfang

Dienstag, 13. November 2007, 21:32

Poste mal den Link zu der Seite, damit man sich das Ganze ansehen kann... Erleichtert die Problemsuche ;)
 

jasminkaemmi

Doppel-As

Dabei seit: 18.11.2005

Beiträge: 101

 

3 Zum Seitenanfang

Dienstag, 13. November 2007, 22:54

http://www.die-schaumschlaeger.de/album/json.php

EDIT:

Außerdem hab ich noch ein problem mit JSON und zwar macht mein kommentarfeld automatisch zeilenumbrüche kann ich irgenwie jedesmal wenn der einen zeilenumbruch macht ein <br> reinschreiben sonst funzt das net?

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »jasminkaemmi« (13. November 2007, 23:45)

 

nocturne

Kaiser

Dabei seit: 06.01.2005

Beiträge: 1 167

 

4 Zum Seitenanfang

Mittwoch, 14. November 2007, 09:22

RE: Gästebuch Problem

Hi jasminkaemmi,

die http.js ist suboptimal.
Verwende dieses Sniplet:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
// Gecko / IE7
	if ( typeof(XMLHttpRequest) != 'undefined' )
		return new XMLHttpRequest() ;

	// IE6
	try { return new ActiveXObject("Msxml2.XMLHTTP") ; }
	catch(e) {}

	// IE5
	try { return new ActiveXObject("Microsoft.XMLHTTP") ; }
	catch(e) {}


Weiterhin kann der Browser meckern wenn die seite zu langsam geladen wird!
Die Methode Onload verweist auf die Funktion datenAusgeben, weil aber die Seite noch nicht vollständig geladen wurde, ist die methode "datenAusgeben" noch nicht bekannt.

Ich empfehle die Verwendung von einem Framework wie "Prototype".

Zur "for-in" schleife. Diese könnte die Java-Script Funktionalitäten deaktivierien bei lese-/schreibgeschützten attributen.

Nochmal zu for-each:

die Variable index enthält keinen Index, sondern eine Methode, objekt oder Attribut - also teil der Menge aus Objekt. Das was du "element" zuweisen must ist nicht "objekt[index]" sondern "index".

Die Notation aus JSon ist falsch, das Array ist ok, alle definierten Objekte sind falsch.
Ein Objekt wird nicht durch {"stimmung":"gut"} sondern durch {stimmung:"gut"} definiert.
Siehe testcase: javascript: var o={h:'wert'};alert(o.h);

Ich find gut das du dich damit beschäftigst, javascript ist aber anfangs ein hartes Pflaster! Hardcore Javascript läst sich nicht aus dem Ärmel schütteln.

Dieser Beitrag wurde bereits 6 mal editiert, zuletzt von »nocturne« (14. November 2007, 09:42)

 

jasminkaemmi

Doppel-As

Dabei seit: 18.11.2005

Beiträge: 101

 

5 Zum Seitenanfang

Mittwoch, 14. November 2007, 17:18

so jetzt funzt es auch im internetexplorer musste nur stat <p> ein <div> element nehmen! hab aber jetzt noch ein problem die json datei funktioniert nicht sobald ich in der datei einen zeilenumbruch drin hab!

also ich erstelle meine json datei dynamisch mit php aus einer mysql tabelle heraus und der eintrag comment ist nunmal mit leerzeichen! und dann glabt das ganze nicht mehr
 

nocturne

Kaiser

Dabei seit: 06.01.2005

Beiträge: 1 167

 

6 Zum Seitenanfang

Donnerstag, 15. November 2007, 09:35

Guten morgen,

du must die Seite nochmal online stellen. Sonst können wir dir nicht helfen.
*g*
 

ospx

Kaiser

Dabei seit: 11.11.2006

Beiträge: 1 131

 

7 Zum Seitenanfang

Samstag, 17. November 2007, 14:42

Zeilenumbrüche in JSON müssen javascript killen, da javascript nach einem Zeilenumbruch einen neuen Befehl erwartet und JSON nun mal aus javascript Literal-objekten entstand.
JSON="JavaScript Object Notation"

Wie baust du denn das JSON zusammen? Von hand oder über die seit php 5.2 integrierte Funktion: json_encode()

Du könntest über die Funktion nl2br()eeventuell alle Zeilenumbrüche schnell in br's umwandeln, falls obige Funktion nicht weiterhilft.
 

jasminkaemmi

Doppel-As

Dabei seit: 18.11.2005

Beiträge: 101

 

8 Zum Seitenanfang

Donnerstag, 29. November 2007, 19:47

hi, so hab jetzt das problem mit dem jason umbruch hinbekommen! hab mir eine fertige json codierungs klasse aus dem internet heruntergeladen!

hab leider jetzt ein neues problem und zwar kann gibt der firefox keinen eintrag mehr aus im internet explorer gehts komischer weise.

der link ist: http://www.greenorange-band.de/go/?site=gb

liegt das vielleicht am xmlhttprequest?

meine xttp.js sieht so aus:

Quellcode

1
2
3
4
5
6
7
8
9
function http() {
  var http;
  if (window.XMLHttpRequest) { 
    http = new XMLHttpRequest();
  } else if (window.ActiveXObject) {
    http = new ActiveXObject("Microsoft.XMLHTTP");
  }
  return http;
}


stimmt das?

Edit:

Hat sich erledigt musste zum aufruf die methode GET nehmen nicht POST

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »jasminkaemmi« (30. November 2007, 00:20)