WinFuture-Forum.de: Gästebuch - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
  • 3 Seiten +
  • 1
  • 2
  • 3

Gästebuch


#1 Mitglied ist offline   Stefan92 

  • Gruppe: aktive Mitglieder
  • Beiträge: 28
  • Beigetreten: 20. Januar 07
  • Reputation: 0

geschrieben 25. Januar 2007 - 16:07

Hallo,

Ich erstelle mir momentan mein eigenes Gästebuch, nur leider schein das seinen eigenen Willen zu haben.
Das heißt der eingegebene Text wird überhauptnicht ausgegeben( und auch nicht abgespeichert), jedesmal wenn man die Seite öffnet, bzw. einen neuen Beitrag schreibt wird alles doppelnd ausgegeben( und doppelnd abgespeichert) und ab und zu kommt es vor, dass das Programm einfach anstatt den Namen oder der E-mail Adresse irgendwelche Buchstaben ausgibt(Beispiel: asde).
Ich kann mir einfach nicht erklären wo diese Fehler liegen. Wer nett wenn mir da wer weiterhelfen könnte.
Aber genug geredet, hier kommt das Programm:
<html>
<head>
<title>Gästebuch.php</title>
</head>
<body text="#FFFFFF" bgcolor="#000000" link"#005152" vlink"#5A00FF" alink"#7B7D7B">
<h1><font size="7"><div align="center">Gästebuch.php</div></font></h1>

<?
$file=fopen("gaestebuch.txt","r");
$text="";
while (!feof($file))
{
$zeile=fgets($file,100000);
$text=$text.$zeile;
}
echo $text;
fclose($file);


?>

<form action="Gaestebuch.php" method="post">
Name(erforderlich):
<input name="name" maxlength="" size="" type="text"> <!-- Welchen Befehl muss ich eingeben, damit 
							  man erst Absenden kann, wenn der Name 
							  angegeben ist? //-->
<br>
E-mail:
<input name="email" type="text" maxlength="" size="">
<br>
<br>
<textarea name="text" cols"" rows"" type="text">
</textarea>
<button type="submit">Abschicken
</button>
</form>

<?

$Leer="   ";
$datei=fopen("gaestebuch.txt","a");
$date=$name.$Leer.$email."<br><br>".$text.Chr(13).Chr(10);
fputs($datei, $date);
fclose($datei);

?>
</body>
</html>


Ich hoffe einer weiß da weiter.

Mfg Stefan
0

Anzeige



#2 Mitglied ist offline   [Elite-|-Killer] 

  • Gruppe: aktive Mitglieder
  • Beiträge: 762
  • Beigetreten: 02. Oktober 05
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Passau

geschrieben 25. Januar 2007 - 20:34

Ich sehe nicht mal, dass du jemals was mit $_POST['XXX'] empfangen würdest, im übrigen ist das Script nicht grade der Hit, kein valides XHTML, da besteht noch sehr viel nachbesserungsbedarf...
0

#3 Mitglied ist offline   Stefan92 

  • Gruppe: aktive Mitglieder
  • Beiträge: 28
  • Beigetreten: 20. Januar 07
  • Reputation: 0

geschrieben 26. Januar 2007 - 07:13

Hallo,

Zitat

im übrigen ist das Script nicht grade der Hit

Das weiß ich auch, hab ja auch nie behauptet, dass es gut ist... die beste methode etwas zu lernen ist selber ausprobieren.

Mfg Stefan
0

#4 Mitglied ist offline   asko 

  • Gruppe: aktive Mitglieder
  • Beiträge: 144
  • Beigetreten: 17. November 02
  • Reputation: 0

geschrieben 26. Januar 2007 - 10:36

Elite-|-Killer sagte:

Ich sehe nicht mal, dass du jemals was mit $_POST['XXX'] empfangen würdest, im übrigen ist das Script nicht grade der Hit, kein valides XHTML, da besteht noch sehr viel nachbesserungsbedarf...


Sorry, aber dein Kommentar ist mal total für die Tonne. Stefan92 fragt nach PHP-Hilfe für sein Script und Du kommst mit nicht validem XHTML an. :rolleyes:


@ Stefan92
Ich finde den ganzen Aufbau des GB falsch. Am besten schaust Du dir erst mal einige Tutorials zu dem Thema an, weil man mit trial 'n' error nicht sehr weit kommt beim coden. Sehr gute Tutorials für den Einstieg findest Du hier, hier und hier.

Dieser Beitrag wurde von asko bearbeitet: 26. Januar 2007 - 10:38

0

#5 Mitglied ist offline   [Elite-|-Killer] 

  • Gruppe: aktive Mitglieder
  • Beiträge: 762
  • Beigetreten: 02. Oktober 05
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Passau

geschrieben 26. Januar 2007 - 14:16

Beitrag anzeigenZitat (Stefan92: 26.01.2007, 07:13)

Hallo,
Das weiß ich auch, hab ja auch nie behauptet, dass es gut ist... die beste methode etwas zu lernen ist selber ausprobieren.

Mfg Stefan

Dann würde ich ab gleich richtig anfangen und nicht schon zu beginn soleche Fehler machen...

Beitrag anzeigenZitat (asko: 26.01.2007, 10:36)

Sorry, aber dein Kommentar ist mal total für die Tonne. Stefan92 fragt nach PHP-Hilfe für sein Script und Du kommst mit nicht validem XHTML an. :P

Danke Danke, aber dennoch soll man nicht gleich mit einer Fehlerhaften und unübersichtlichen Grundstrucktur anfangen, man muss sich das Leben ja nicht noch künstlich schwer machen, und wenn die Basics schon schief gehen wie soll es dann mit PHP was werden :S

Zitat

@ Stefan92
Ich finde den ganzen Aufbau des GB falsch. Am besten schaust Du dir erst mal einige Tutorials zu dem Thema an, weil man mit trial 'n' error nicht sehr weit kommt beim coden. Sehr gute Tutorials für den Einstieg findest Du hier, hier und hier.

^^
Du sagst aber auch nix anderes wie ich, ausser, dass du mein "Das Script ist nicht gerade der Hit" umformuliert hast ;)
Das mit dem xHTML war ja nur ein Nebensatz^^
0

#6 Mitglied ist offline   amalbhalbe 

  • Gruppe: aktive Mitglieder
  • Beiträge: 643
  • Beigetreten: 14. Mai 04
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:BMW E38 740i V8 286 PS 4.4L Hubraum
  • Interessen:Design is the production of braindysentery

geschrieben 26. Januar 2007 - 14:38

steht da irgendwas von xhtml?
glaub nich oder? es gibt nich nur xhtml !

"Welchen Befehl muss ich eingeben, damit
man erst Absenden kann,"

ich bin zwar selber kein php pro aber ich denke was dir vl helfen könnte wäre ne if zu erzeugen in der kontrolliert wird ob in dem feld was drin steht also ungefähr

if ( $_POST['name']=="")
{ bitte namen eintragen };

so glaub ich zumindest - lern das selber erst aber ich hoff du fängst was mit an?!

bin mir aber nich sicher ob der die variable auch so erkennt
ansonsten halt

$nameinput = $_POST['name'];

und dann die if mit $nameinput

für fehler entschuldige ich mich im voraus ^^

Dieser Beitrag wurde von amalbhalbe bearbeitet: 26. Januar 2007 - 14:47

Pc is my life, amd my world, intel my enemy and Linux my Hell
0

#7 Mitglied ist offline   [Elite-|-Killer] 

  • Gruppe: aktive Mitglieder
  • Beiträge: 762
  • Beigetreten: 02. Oktober 05
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Passau

geschrieben 26. Januar 2007 - 15:22

Beitrag anzeigenZitat (amalbhalbe: 26.01.2007, 14:38)

steht da irgendwas von xhtml?
glaub nich oder? es gibt nich nur xhtml !

Super was gibts noch? HTML4 und drunter^^
Kommt sich unterm strich auf das gleiche raus, es ist jedenfalls kein valider Standard --> Da gehts schon mal los^^

Zitat

"Welchen Befehl muss ich eingeben, damit
man erst Absenden kann,"

ich bin zwar selber kein php pro aber ich denke was dir vl helfen könnte wäre ne if zu erzeugen in der kontrolliert wird ob in dem feld was drin steht also ungefähr

if ( $_POST['name']=="")
{ bitte namen eintragen };

so glaub ich zumindest - lern das selber erst aber ich hoff du fängst was mit an?!

bin mir aber nich sicher ob der die variable auch so erkennt
ansonsten halt

$nameinput = $_POST['name'];

und dann die if mit $nameinput

für fehler entschuldige ich mich im voraus ^^

Geht beides gleichermaßen^^
0

#8 Mitglied ist offline   amalbhalbe 

  • Gruppe: aktive Mitglieder
  • Beiträge: 643
  • Beigetreten: 14. Mai 04
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:BMW E38 740i V8 286 PS 4.4L Hubraum
  • Interessen:Design is the production of braindysentery

geschrieben 26. Januar 2007 - 15:25

xhtml is selbst ja nur ne abart und ne übergangslösung sollte auch kein angriff oder dergleichen sein

aber naja offensichtlich schreibt ers ja nich auf xhtml -
und danke für die untermauerung meiner lösung mit der if funktion ( war mir wirklich nich sicher *g* )

achja @ersteller -> www.php-einfach.de is auch zu empfehlen
Pc is my life, amd my world, intel my enemy and Linux my Hell
0

#9 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.942
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 26. Januar 2007 - 15:39

Wenn ich hier noch einmal das Wort xhtml lese, dann ist aber was los!

Entweder ihr hilft Stefan92 oder lasst es bleiben!
0

#10 Mitglied ist offline   Gitarremann 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.263
  • Beigetreten: 04. Juni 06
  • Reputation: 3
  • Geschlecht:Männlich
  • Wohnort:Trebnitz

geschrieben 26. Januar 2007 - 16:36

ich hab das bei mir nicht so komplex geschrieben, sondern auf verschiedene seiten aufgeteilt, wegen der übersichtlichkeit.

ich hab das ganze auf drei seiten aufgeteilt eine seite ist nur die anzeige des gäatebuches. da muß man auch nicht extra mit fopen die datei öffnen und das ganz kompliziert auslesen. mit

$daten = file("gaestebuch.txt") ;

schreibt man den inhalt zeilenweise in ein array. da kann man dann zum beispiel pro gb-eintrag eine zeile machen und die einzelnen teile des eintrages wie name, mail, text durch ein bestimmtes zeichen trennen. zum beispiel "|".


auf der seite gibts einen link zu "eintrag erstellen". das ist auch wieder alles auf einer separaten seite, da ist nur das formular und das wird an ein drittes formular geschickt, welches die auswertung der formulardaten macht, den neuen beitrag einträgt und dann automatisch auf die anzeigeseite des gb weiterleitet.
Der Pessimist sagt: "Das Glas ist halb leer,"
Der Optimist sagt: "Das Glas ist halb voll."
Der Realist sagt: "Bedienung, zwei Neue!"
0

#11 Mitglied ist offline   Stefan92 

  • Gruppe: aktive Mitglieder
  • Beiträge: 28
  • Beigetreten: 20. Januar 07
  • Reputation: 0

geschrieben 26. Januar 2007 - 17:00

Hallo,

Erstmal danke für alle Posts.

Zitat

@ Stefan92
Ich finde den ganzen Aufbau des GB falsch. Am besten schaust Du dir erst mal einige Tutorials zu dem Thema an, weil man mit trial 'n' error nicht sehr weit kommt beim coden. Sehr gute Tutorials für den Einstieg findest Du hier, hier und hier.

Danke für die Links, aber ich hab auch ein Buch(Websiten programmieren und gestalten).
Was ich vielleicht noch hätte erwähnen sollte ist, das ich das Gästebuch(unter anderm) für Informatik brauche und da machen/sollen wir das auf diese weise(also mit den Dateien) machen. Achso was mich noch interessieren würde wäre, du sagst der Aufbau wäre nicht so gut. Ich hab mir da grad mal Gedanken gemacht, aber mir ist keine andere Lösung eingefallen. Wie würdest du das machen?

Mfg Stefan
0

#12 Mitglied ist offline   K050V4 

  • Gruppe: aktive Mitglieder
  • Beiträge: 788
  • Beigetreten: 13. August 04
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Stuttgart
  • Interessen:(X)HTML<br />CSS2+<br />PHP 4/5<br />MySQL 5<br />Symfony 1.2+<br />JavaScript / AJAX<br />jQuery<br />C++<br />C#<br />Java<br />...

geschrieben 26. Januar 2007 - 19:48

So vielleicht kannst du das gebrauchen...
hab mir mal ein bischen zeit genommen
alles in eine datei ;)

//Code entfernt...

Dieser Beitrag wurde von K050V4 bearbeitet: 17. Mai 2008 - 08:34

Zitat

"In der Welt des Erkennbaren ist die Idee des Guten die höchste." - Platon

Spritify! Easy CSS-Sprite-Generator | Albanisch Deutsch Wörterbuch
0

#13 Mitglied ist offline   Stefan92 

  • Gruppe: aktive Mitglieder
  • Beiträge: 28
  • Beigetreten: 20. Januar 07
  • Reputation: 0

geschrieben 28. Januar 2007 - 13:06

Hallo,

Danke keny.
Ich werde mich mal in die Thematik reinarbeiten(dann kann ich vielleicht sogar hier im Forum auch mal Fragen beantworten und nicht nur immer welche Stellen) , und dann mit Hilfe deines Scripts mein eigenes Gästebuch schreiben, denn einfach deines zu übernehmen fänd ich arm. Also nochmal danke für die Mühe.

Mfg Stefan
0

#14 Mitglied ist offline   Dyon 

  • Gruppe: aktive Mitglieder
  • Beiträge: 125
  • Beigetreten: 04. April 08
  • Reputation: 0

geschrieben 23. April 2008 - 12:58

Ich spiel mal wieder Leichenschänder;-)

Ich hab mal des Gästebuch von K050V4 ausprobiert nur wie kann ich es verhindern wenn jemand in dem Textfeld einen Zeilenumbruch macht, dass der in der *.txt Datei nich als solcher gespeichert wird sondern vllt mit einer bestimmten Zeichenfolge, dass dann nacher im Gästebuch das normal aussieht und nicht das Datum beim nächsten Eintrag steht oder so was^^

MFG
0

#15 Mitglied ist offline   Gitarremann 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.263
  • Beigetreten: 04. Juni 06
  • Reputation: 3
  • Geschlecht:Männlich
  • Wohnort:Trebnitz

geschrieben 23. April 2008 - 13:23

Ich tausche dann den Zeilenumbruch, in ein [br] um und in der Anzeige des Textes im GB ersetze ich dann [br] durch <br />

$text   = ereg_replace( "\n", "[br]", $text );


und dann so:
$text   = ereg_replace("\[br\]", "<br />", $text );


Natürlich könnte man gleich <br /> draus machen aber dann besteht die Gefahr, dass irgendwo ein strip_tags, was man übersehen hat im Skript das rausfiltert und man wundert sich, warum es nicht funktioniert.

Dieser Beitrag wurde von Gitarremann bearbeitet: 23. April 2008 - 13:29

Der Pessimist sagt: "Das Glas ist halb leer,"
Der Optimist sagt: "Das Glas ist halb voll."
Der Realist sagt: "Bedienung, zwei Neue!"
0

Thema verteilen:


  • 3 Seiten +
  • 1
  • 2
  • 3

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0