php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 05.11.2008, 21:41  
Neuer Benutzer
 
Registriert seit: 05.11.2008
Beiträge: 16
sunehri befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Forum Probleme beim Beitrag hinzufügen

Hallo allerseits,

ich habe ein PHP-Script für ein Forum auf meinen Server geladen nund eigentlich funktioniert es auch allerdings werden keine neuen Beiträge in die Bereits vorhandene .txt datei geschrieben. Zur Kontrolle füge ich auch noch alle Scripte bei.

forum.php:

PHP-Code:
     include ("forumfunktionen.php");
     if (isset (
$text)) beitrag_hinzufuegen();

     include (
"beitraege.php"); 
<html>
<head>
<title> Forum</title>
</head></html>
<body>
<h1> Willkomen beim Forum </h1>
<b>Sagen Sie uns Ihre Meinung!</b><p/>
PHP-Code:
 formular_anzeigen() 
<hr>
PHP-Code:
                 for ($i=0$i count ($beitrag); $i++) {
                 
beitrag_ausgeben ($beitrag[$i]);
                 } 
</body>
</html>


forumsfunktionen.php:

PHP-Code:
     function beitrag_ausgeben ($beitrag)  {
              print 
$beitrag ["text"];
              print 
"<br>Autor: ";
              print 
$beitrag ["autor"];
              print 
"<hr>";


     }

     function 
beitrag_hinzufuegen () {
              global 
$text$autor;

              
$texte file ("beitraege.txt");
              
$neuer_text $text;
              
$letzter_textindex count ($texte)-2;
              if (
trim($texte[$letzter_textindex]) !=$neuer_text) {
                 
$datei fopen ("beitraege.txt""a");
                 
fputs ($datei"\n$neuer_text\n");
                 
fputs ($datei"$autor");
                 
fclose ($datei);
                 }
              }
              function 
formular_anzeigen () { 
<form action="forum.php" method="POST">
Text: <input type="text" size=50 name="text"><br>
Autor: <input type="text" size=20 name="autor">
<p><input type="submit" value="Abschicken"
</form>
PHP-Code:
              
beitraege.php:

PHP-Code:
     $datei fopen ("beitraege.txt""r");
     
$i 0;
     while (!
feof($datei)) {
     
$beitrag[$i]["text"] = fgets ($datei1024);
     
$beitrag[$i]["autor"] =fgets ($datei1024);
     
$i++;
     }
   
fclose ($datei); 
Könnt ihr mir helfen?

Vielen Dank im vorraus

sunehri

Geändert von sunehri (05.11.2008 um 22:01 Uhr).
sunehri ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 05.11.2008, 21:51  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

1. Bitte den Coden in [ php][ /php] Tags einbauen.
2. Bitte beschreib uns etwas genauer was nicht funktioniert. Ist in der Funkion wo der Text gespeichert wird überhaupt in der Variable die in die Textdatei gespeichert wird etwas drinnen?
Flor1an ist offline  
Alt 05.11.2008, 22:04  
Neuer Benutzer
 
Registriert seit: 05.11.2008
Beiträge: 16
sunehri befindet sich auf einem aufstrebenden Ast
Standard HI

ich habe schon zum test ein paar Daten in die txt datei eingegebn, nur wenn ich jetzt versuche über das Formular weitere einträge in die txt. datei zu schreiben werden diese nicht dort abgespeichert.

liebe grüße sunehri
sunehri ist offline  
Alt 06.11.2008, 20:53  
Neuer Benutzer
 
Registriert seit: 05.11.2008
Beiträge: 16
sunehri befindet sich auf einem aufstrebenden Ast
Standard bitte

HI,

bitte helft mir ich brauche eure Hilfe und komme leider überhaupt nicht weiter.

liebe grüße
sunehri
sunehri ist offline  
Alt 06.11.2008, 23:04  
Erfahrener Benutzer
 
Registriert seit: 24.05.2008
Beiträge: 173
PHP-Kenntnisse:
Anfänger
Griffith sorgt für eine eindrucksvolle AtmosphäreGriffith sorgt für eine eindrucksvolle Atmosphäre
Standard

PHP-Code:
if (isset ($text)) beitrag_hinzufuegen(); 
Der Ausdruck isset($text) ist immer false, solange Register Globals deaktiviert ist - und es sollte auch lieber deaktiviert bleiben!
Es kommt also nie zum Aufruf der Funktion beitrag_hinzufuegen().

Um auf die gesendeten Formulardaten zuzugreifen benutze $_POST['text'] und $_POST['autor'].

Generell sollte beim Testen von Quelltexten dieser Aufruf möglichst zu Beginn des Scriptes nicht fehlen:
PHP-Code:
error_reporting(E_ALL E_STRICT); 
Füge diesen Aufruf also bitte in die erste Zeile deiner forum.php ein, nutze die $_POST-Variablen und teste, ob es nun funktioniert. Wenn nicht -> Fehlermeldungen posten.



Geändert von Griffith (06.11.2008 um 23:12 Uhr).
Griffith ist offline  
Alt 07.11.2008, 19:17  
Neuer Benutzer
 
Registriert seit: 05.11.2008
Beiträge: 16
sunehri befindet sich auf einem aufstrebenden Ast
Standard

Danke für deine Hilfe. Nur weis ich nicht wo ich das dann ändern soll. Kannst du meinen Quelltext entsprechend ändern?
sunehri ist offline  
Alt 07.11.2008, 22:41  
Neuer Benutzer
 
Registriert seit: 05.11.2008
Beiträge: 16
sunehri befindet sich auf einem aufstrebenden Ast
Standard Hilfe

Bitte um hilfe wäre sehr nett wenn mir jemand helfen kann.

liebe grüße
sunehri
sunehri ist offline  
Alt 07.11.2008, 23:04  
Benutzer
 
Registriert seit: 06.11.2008
Beiträge: 53
dark alex befindet sich auf einem aufstrebenden Ast
Standard

Du musst in deiner datei forum.php
DIREKT NACH <?php
PHP-Code:
error_reporting(E_ALL E_STRICT); 
einbauen.

=>
forum.php
PHP-Code:
<?php
error_reporting
(E_ALL E_STRICT);  
... 
hier dann dien code ...
und überall wo du auf Formulareingaben zugreifst das Array $_POST verwenden, denn register_globals ist eine unsichere Funktion (von PHP ind er PHP.ini) und sollte möglichst deaktiviert werden. Dann hast du nur die Möglichkeit mit $_POST.

z.B. hier:

schlecht
PHP-Code:
if (isset ($text)) beitrag_hinzufuegen(); 
besser
PHP-Code:
if (isset ($_POST["text"])) beitrag_hinzufuegen(); 
dark alex ist offline  
Alt 09.11.2008, 19:12  
Neuer Benutzer
 
Registriert seit: 05.11.2008
Beiträge: 16
sunehri befindet sich auf einem aufstrebenden Ast
Standard immernoch nicht

Hallo,

danke, ich kann jetzt schon etwas eingeben aber statt dem Tet den ich hineingeschrieben habe kommt nur :

text
Autor: autor


kann mir da jemand helfen?

danke

sunehri
sunehri ist offline  
Alt 09.11.2008, 19:27  
PTC
Erfahrener Benutzer
 
Benutzerbild von PTC
 
Registriert seit: 27.10.2007
Beiträge: 1.708
PHP-Kenntnisse:
Anfänger
PTC ist einfach richtig nettPTC ist einfach richtig nettPTC ist einfach richtig nettPTC ist einfach richtig nett
Standard

@sunehri
Hör auf zu drängeln. Diese unnötigen Posts stören.
PTC ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Suche Forum mit folgenden funktionen homezonebenny PHP-Fortgeschrittene 6 03.04.2008 16:45
Problem mit test forum. kann nicht in DB schreiben tux_rules PHP Tipps 2008 10 30.01.2008 11:52
PhpBB Forum an bestehende Userdatenbank anknüpfen ChrisV PHP Tipps 2006 8 02.10.2006 13:17
Kniffelig: DB Layout check, Instanzierbares Forum [pic] Melchior Datenbanken 6 09.09.2006 16:49
Forum selber machen - Problem mit neuen Beiträgen PHP Tipps 2006 2 01.04.2006 20:52
Ein kleine Frage zum posten hier im Forum Kein Genie Off-Topic Diskussionen 3 20.03.2006 13:40
Probleme beim speichern in der DB PHP Tipps 2006 3 23.02.2006 10:00
PHP Forum – ungelesene Beiträge im Forum I-Spy PHP Tipps 2005-2 14 09.10.2005 13:07
[Erledigt] Forum ohne mySQL ??? Off-Topic Diskussionen 14 15.07.2005 00:08
Forum: Forenstruktur anzeigen &amp;amp; als gelesen markieren PHP-Fortgeschrittene 4 05.06.2005 22:29
[Erledigt] Forum PHP-Fortgeschrittene 7 29.10.2004 16:45
"Wo bin ich" hier im Forum irgendwie kaputt? freq.9 Off-Topic Diskussionen 6 09.06.2004 16:07

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php forumsfunktione, array in txt schreiben php forumsfunktion, probleme mit php forumfunktionen, spieletipps beitrag hinzufügen, function beitrag_hinzufuegen (), beitrag_hinzufuegen

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:13 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum