ERLEDIGT
NEIN
NEIN
ANTWORTEN
15
15
ZUGRIFFE
749
749
EMPFEHLEN
-
27.04.07 15:25 #1
Hallo Leude,
hab ein Problem. Und zwar brauch ich ein News-Script.
Ich hab auch eins, das folgenden Quellcode hat (Betreff und Inhalt werden durch Formular in anderer Datei übergeben..is unwichtig):
news_eintrag.php
Also folgende Probleme:<?php
$inhalt = $_POST['inhalt'];
$betreff = $_POST['betreff'];
$user_vorname = $_SESSION['user_vorname'];
$user_nachname = $_SESSION['user_nachname'];
$filename = 'news.htm';
$news_eintrag = "<div align='center'><table border='0' cellspacing='1' width='395px' bgcolor='#0072BC' class='text'>
<tr bgcolor='#0072BC' height='20'><td> <font color='#ffffff'> <b>$betreff</b> von $user_vorname</font></td></tr>
<tr><td bgcolor='#ffffff'>
<div align='center'>
<br>
$inhalt
<br>
</div>
</td></tr>
</table><br><br></div>";
if (is_writable($filename)) {
if (!$handle = fopen($filename, "r+")) {
print "News.htm kann nicht geöffnet werden.";
exit;
}
if (!fwrite($handle, $news_eintrag)) {
print "Die Datei news.htm is nicht schreibbar!";
exit;
}
header ("Location: intern.php");
fclose($handle);
} else {
print "Die Datei news.htm existiert nicht! Bitte an Mathias oder Fabian wenden .";
}
?>
1. fügt er bei dem $user_vorname den Vornamen nicht ein
und
2. Wenn ich einen neuen Eintrag verfasse, ersetzt er den neuen mit dem alten und es wird nur der neue angezeigt...
Danke für jegliche Art von Hilfe!
Greetz,
Fai
Achja: Ich hab die Suche benutzt, nichts gefunden...Lass mich gerne eines besseren belehren, hab aber gründlich gesucht.
-
Zu Frage 2 schau dir folgende Seite an:
http://de.php.net/manual/de/function.fopen.php'a+'
Öffnet die Datei zum Lesen und Schreiben. Positioniert den Dateizeiger auf das Ende der Datei. Wenn die Datei nicht existiert, wird versucht sie anzulegen.
-
27.04.07 15:48 #3
ok, danke erstmal

Das hilft mir schon weiter. Jedoch werden jetzt die neuesten News unten angezeigt. Kann man das ganze dann von hinten auslesen, oder gibts da ne andere Möglichkeit?
-
In ein Array einlesen und dann array_reverse().
Nur so ein Vorschlag!
be inspired...simplify...
-
27.04.07 16:03 #5
gibts da auch ne simplere Variante ?
-
27.04.07 16:09 #6
Hmm, nein, einfacher gehts net wirklich.
Code php:1 2 3 4 5
$file = 'test.txt'; $cont = file($file); $content = array_reverse($cont); print_r($content);
Und schon fertig...KIDS Kinderbetreuungsdienst
Xing
"When you play the game of thrones, you win or you die. There is no middle ground."
by Cersei Lannister in "A Game Of Thrones"
-
27.04.07 16:38 #7
alles klar.
Danke dir.
Aber der Code ist ja der Code für die Ausgabe. Muss ich dann nicht beim einfügen schon nen array mit einbauen ?
Ich probiers jetzt schnell ohne, wennst nicht geht, meld ich mich nochmal...
EDIT: hm, ich glaub ich bau den falsch ein. Oder muss man doch noch beim schreiben in die Datei news.htm einen array mit einfügen=?Geändert von Fabian Frank (27.04.07 um 16:41 Uhr)
-
27.04.07 16:40 #8
Nein, musst du nicht, da es bei fwrite mit "a" einfach ans Ende drangehängt wird.
KIDS Kinderbetreuungsdienst
Xing
"When you play the game of thrones, you win or you die. There is no middle ground."
by Cersei Lannister in "A Game Of Thrones"
-
27.04.07 16:44 #9
hm...
Ok, wenns mit "a" dran gehängt wird, geh ich jetzt einfach mal davon aus, dass das auch bei "a+" der Fall ist.
Aber ich bekomm da bei der ausgabe in der datei nur so Wirres aus Zahlen und Folge-Pfeilen...
Hier mal der Code, der sich in der Datei befindet, in der die News angezeigt werden:
PHP-Code:<?
$file = 'news.htm';
$cont = file($file);
$content = array_reverse($cont);
print_r($content);
?>
-
27.04.07 17:00 #10
print_r() sollte natürlich nur zum Testen verwendet werden

Allerdings empfehle ich dir, nicht den HTML Code in der Seite zu speichern, sondern eher so zu verfahren:
Und zum Auslesen dann so:PHP-Code:<?php
$inhalt = 'TEST NEWS HALLO WIE GEHT ES EUCH <br/> TEST TESTME <br/>';
$betreff = 'Test';
$user_vorname = 'Hans';
$user_nachname = 'Mustermann';
$filename = 'news.htm';
$news_eintrag = $user_vorname."::".$user_nachname."::".$betreff."::".$inhalt;
if (is_writable($filename)) {
if (!$handle = fopen($filename, "a")) {
print "News.htm kann nicht geöffnet werden.";
exit;
}
if (!fwrite($handle, $news_eintrag)) {
print "Die Datei news.htm is nicht schreibbar!";
exit;
}
#header ("Location: intern.php");
fclose($handle);
} else {
print "Die Datei news.htm existiert nicht! Bitte an Mathias oder Fabian wenden .";
}
?>
Dadurch kannst du auch das "Template" ändern ohne die gesamte "Datenbank" des Skriptes zu verändern.PHP-Code:<?php
$file = 'news.htm';
$cont = file($file);
$content = array_reverse($cont);
foreach($content as $value) {
$content = explode("::", $value);
echo "
<div align='center'><table border='0' cellspacing='1' width='395px' bgcolor='#0072BC' class='text'>
<tr bgcolor='#0072BC' height='20'><td> <font color='#ffffff'> <b></b> von ".$content[0]."</font></td></tr>
<tr><td bgcolor='#ffffff'>
<div align='center'>
<br>
".$content[2]."
<br>
</div>
</td></tr>
</table><br><br></div>
";
}
?>KIDS Kinderbetreuungsdienst
Xing
"When you play the game of thrones, you win or you die. There is no middle ground."
by Cersei Lannister in "A Game Of Thrones"
-
27.04.07 18:55 #11
- Registriert seit
- Sep 2005
- Beiträge
- 705
Ist nicht fputs zum anhängen gedacht?
Fängt zumindest am ende an, also beim Dateizeiger an ...
-
27.04.07 19:14 #12KIDS Kinderbetreuungsdienst
Xing
"When you play the game of thrones, you win or you die. There is no middle ground."
by Cersei Lannister in "A Game Of Thrones"
-
28.04.07 13:29 #13
hm ok. Danke erstmal. Daweil gehts auch, indem man runterscrollt.
Aber es gibt ein weiteres Problem. Und zwar möcht ich eine Tabelle in der MySQL-Datenbank ausgeben.
Dazu habe ich folgenden Code:
In der DB sind folgende Spalten: ID, Tag, Termin, Wachleiter und WachgaengerPHP-Code:<?
$server = "localhost";
$user = "****";
$pass = "****";
$datenbank = "****";
$verbindung = mysql_connect($server,$user,$pass) or die ("Keine Verbindung möglich.");
mysql_select_db($datenbank) or die ("Die Datenbank existiert nicht.");
$details = mysql_query("SELECT ID, Tag, Termin, Wachleiter, Wachgaenger FROM Wachplan WHERE ID = 1");
$d = mysql_fetch_array($details);
echo $d['Count'];
?>
Jedoch wenn ich es ausführe, kommt keine Fehlermeldung, aber es wird auch nichts angezeigt
THX 4 Help
-
28.04.07 19:11 #14
- Registriert seit
- Sep 2005
- Beiträge
- 705
Naja -.- dann wars halt etwas anders -.- aber einen Unterschied gibt es mit Optionalen Variablen ...
Das stimmt nun aber -.-So öffnest du die Datei um etwas anzuhängen (a = append):
PHP-Code:
PHP-Code:$fp = fopen("datei.txt","a");
oder
$fp = fopen("datei.txt","a+");// Datei erstellen wenn nicht vorhanden
-
29.04.07 00:55 #15
Jein

Es stimmt, dass bei a+ versucht wird die Datei zu erstellen. Dies ist aber genauso der Fall bei "a", "w", "w+", "x" und "x+".
Und zu Fabian:
Versuch es mal so:
Dann kriegen wir vielleicht eine Fehlermeldung, mit der wir weiterarbeiten können.PHP-Code:<?
$server = "localhost";
$user = "****";
$pass = "****";
$datenbank = "****";
$verbindung = mysql_connect($server,$user,$pass) or die ("Keine Verbindung möglich.");
mysql_select_db($datenbank) or die ("Die Datenbank existiert nicht.");
$details = mysql_query("SELECT ID, Tag, Termin, Wachleiter, Wachgaenger FROM Wachplan WHERE ID = 1") or die(mysql_error());
$d = mysql_fetch_array($details);
echo $d['Count'];
?>KIDS Kinderbetreuungsdienst
Xing
"When you play the game of thrones, you win or you die. There is no middle ground."
by Cersei Lannister in "A Game Of Thrones"
Ähnliche Themen
-
Eintrag zu Auswahlliste hinzufügen
Von Sven4972 im Forum PHPAntworten: 1Letzter Beitrag: 13.09.08, 21:45 -
Eintrag in DB ersetzen
Von Sasser im Forum PHPAntworten: 5Letzter Beitrag: 16.07.08, 21:21 -
Autoplay - Eintrag hinzufügen
Von Aiwonnie im Forum Microsoft WindowsAntworten: 0Letzter Beitrag: 14.07.08, 17:59 -
Listbox-Eintrag hinzufügen
Von rat-cop im Forum Visual Basic 6.0Antworten: 1Letzter Beitrag: 23.05.06, 08:24 -
textbausteine hinzufügen / ersetzen
Von südpol im Forum CGI, Perl, Python, Ruby, Power ShellAntworten: 1Letzter Beitrag: 15.02.05, 10:40





Zitieren


Login






[PHP][Snippet] Array zu XML konvertieren