ERLEDIGT
NEIN
NEIN
ANTWORTEN
27
27
ZUGRIFFE
1234
1234
EMPFEHLEN
-
Hallo zusammen,
ich hab hier ein Tutorial für ein einfaches Newsscript
http://www.phpwelt.at/index.php?action=7&show=11
Ist ja erstmal leicht zu starten, die 4 Dateien erstellen, nen Ordner 'user' erstellen, da die Datei 'avariel.txt' rein, in die 'avariel.txt' mein Passwort.
So, dann trag ich in die 'edit.htm' Benutzername, Passwort und den Newspost ein. Dann öffnet er die 'newse.php'. Und da fängts dann an. Normalerweise sollte er mir hier ne Meldung ausgeben, entweder 'Alles klar, hat ge****t' oder 'da passt was nicht'. Er bringt aber tatsächlich gar nix, leere Seite.
Und in der 'news.php' und der 'news.txt' erscheinen auch keine News.
Wenn ich aber in der 'news.txt' manuell einen Newspost erstelle, erscheint der auch in der 'news.php'. Der Fehler muss also irgendwo in der 'newse.php' oder der 'edit.htm' liegen. Nur wo?CreativePlains <-- Redesigned Mitte Juli 05
-
Hallo,
ich vermute einfach mal das du in der php.ini die Einstellungen "Register-Globals" auf "Off" hast, und somit keine Daten ankommen können, weil du nicht richtig auf sie verweist. Überprüfen ob du besagte Einstellung wirklich auf "Off" hast, kannst du in dem du einfach eine Datei mit dem Inhalt: <?php phpinfo(); ?> machst, und diese dann in deinem Browser aufrufst...dort werden ne Menge Einstellungen dann ausgegeben, und unter anderem auch die Register Globals...
sollte diese auf "off" sein, dann stell diese entweder, sofern möglich, in der php.ini auf "on" oder du machst folgendes:
du musst alle Daten die mit einem input-feld aus einem Formular per Post versendet werden, mit $HTTP_POST_VARS[feldname] aufrufen, soll heißen: Wenn du den Wert aus <input name="name"> ausgeben willst, dann musst du: <?php echo $HTTP_POST_VARS[name]; ?> schreiben, und nicht so wie vorher einfach: <?php echo $name; ?> ... in deinem Fall suchst du dir nun in der newse.php die Variablen die aus der edit.htm per Fomular kommen, und gibst dann halt $HTTP_POST_VARS[feldname] dafür ein, wobei "feldname" natürlich für den Namen steht, den das entsprechende Feld hat...
hoffe ich hab das halbwegs verständlich erklärt...
weitere Infos zu Register Globals findest du hier und natürlich per Suchenfunktion hier...Without deviation progress is not possible (F. Zappa)
-
Danke für die schnelle Antwort, aber das war es wohl nicht. Ich hab das mit phpinfo grad mal ausprobiert und die Register_Globals sind sowohl bei Local als auch bei Master Value auf 'On'.
CreativePlains <-- Redesigned Mitte Juli 05
-
versuch doch mal den:
und deine userdateine müssen in einem eigenen ordner sein und zwar user ...PHP-Code:# orginal code
$check = fopen("user/$benutzer","r");
if ($check)
{
# ersetzen durch
if (file_exist(user/$benutzer))
{ $check = fopen("user/$benutzer","r");
-
Das mit dem Ordner 'user' ist klar, das hab ich. Deine Änderung des Codes hat er aber gar nicht gemocht:
Fatal error: Call to undefined function: file_exist() in C:\apache\htdocs\news\newse.php on line 10CreativePlains <-- Redesigned Mitte Juli 05
-
12.11.02 18:18 #6
- Registriert seit
- Apr 2002
- Beiträge
- 1.721
Es heißt auch file_exists().
War ja nix...
-
Ok, ich habs jetzt mit 'exists' ausprobiert. Das kam dabei raus:
Hört sich für mich so an, als ob das Script jetzt grundsätzlich funktioniert, er aber meine Benutzerkennung nicht findet.Warning: Division by zero in C:\apache\htdocs\news\newse.php on line 10
Dein Name ist nicht registriert!
Ich hab aber nen Ordner 'user' angelegt, drin befindet sich die 'avariel.txt' und in der File steht ausschließlich mein Passwort drin. Verschrieben hab ich mich beim Login auch nicht. Warum geht das nicht?!****?CreativePlains <-- Redesigned Mitte Juli 05
-
ich und meine flüchtigkeitsfehler *grr*
if (file_exists("user/$benutzer"))
nicht nur das s vergessen sondern auch die "
-
Ok, jetzt funktioniert alles.
Danke soweit an alle die mir geholfen haben
Allerdings hat sich jetzt wieder ein neues kleines Problem ergeben:
Ist es möglich, ohne größeren Aufwand 2 Features, nämlich die automatische URL-Umwandlung und die Möglichkeit mehrzeiliger News einzubauen?
Oder sollte ich mich da lieber nach einem anderen Newsscript umschauen?
Das Dumme ist halt nur, dass dieses Script von den beiden erwähnten Funktionen genau so ist, wie ich mir das vorgestellt hab.CreativePlains <-- Redesigned Mitte Juli 05
-
mehrzeilig:
datei edit.htm
<input size="100" name="nr">
ändern in
<textarea rows=10 cols=30 name=nr></textarea>
datei newse.php
$news = fopen("news.txt","w");
einfügen:
$nr = nl2br($nr);
fputs($news,"$date$nl$name$nl$nr$nl$alle_eintraege");
was meinst du mit url umwandlung****?
-
Ich meine wenn ich jetzt ne URL (beispielsweise www.tutorials.de) poste, dass er da automatisch nen Link draus macht.
Und dann noch ne letzte Frage bezüglich der Sicherheit. Die Passwörter zum News-posten stehen in den *.txt-Files ja im Klartext drin. Ist das nicht reichlich unsicher? Bzw. wie einfach ist es, da unbefugt ran zu kommen?
\\edit: Ich habs jetzt ausprobiert. Das mit dem mehrzeiligen Post klappt nicht.
Das bringt die newse.phpWarning: Supplied argument is not a valid File-Handle resource in C:\apache\htdocs\news\newse.php on line 21
Warning: Supplied argument is not a valid File-Handle resource in C:\apache\htdocs\news\newse.php on line 23
News erfolgreich hinzugefügt
In der news.php steht dann die erste Zeile des mehrzeiligen Posts, die zweite Zeile bildet den Namen des nächsten Posts, die dritte Zeile ist das Datum des nächsten Posts.Geändert von Avariel (16.11.02 um 15:11 Uhr)
CreativePlains <-- Redesigned Mitte Juli 05
-
poste mal zeile 18 bis 24
linkumwandlung muss ich mal drüber nachdenken...
nachtrag:
klar ist die passworddatei unsicher jeder kann sie
einsehenGeändert von melmager (16.11.02 um 17:25 Uhr)
-
16.11.02 17:20 #13
müsste man wohl mit nem preg_replace machen....
habs nit ausprobiert...könnte aber klappenPHP-Code:<?php
$text = preg_replace("=(www\\.)(.*)(\\.)(de|org|com|net|biz|info)=sUi", "<a href='http://www.\\\\2.\\\\4'>\\\\1\\\\2\\\\3\\\\4</a>", $text);
?>
- allerdings weiß ich nicht wie weit das board den code zerstückelt und ob ich überall richtig escaped hab aber vom prinzip her müssts gehen. habs halt grad auf die schnelle hier hingeschrieben.
mfg brau
p.s.: das ersetzt natürlich nicht alle urls, hängt von der endung ab...
*edit*
UUUUPPPPS da hatte ich doch glatt die delimiter vergessen.....habs sie jetzt hingemacht und mal ausprobiert: es klappt perfekt..wenn man will kann man ja noch ein target='blank' reinsetzen..damit halt auch im neunen fenster geöffnet wird..usw..
so
*/edit*Geändert von Meisterbrau (16.11.02 um 17:29 Uhr)
"sapere aude"
-
Code newse.php:
Ich hoffe mal du wolltest den Code der newse.php{
$nr = nl2br($nr);
fputs($news,"$date$nl$name$nl$nr$nl$alle_eintraege");
$alle_eintraege=fread($news, filesize("news.txt"));
$news = fopen("news.txt","w");
wg. Sicherheit: Könnte ich den Ordner, in dem die Passwort-Dateien sind auch per .htaccess schützen? Oder funktioniert dann das Script nicht mehr?CreativePlains <-- Redesigned Mitte Juli 05
-
so ist es richtigPHP-Code:
{
$news = fopen("news.txt","r");
$alle_eintraege=fread($news, filesize("news.txt"));
$news = fopen("news.txt","w");
$nr = nl2br($nr);
fputs($news,"$date$nl$name$nl$nr$nl$alle_eintraege");
echo "<h3>News erfolgreich hinzugefügt</h3>";
.htaccess musst du nur beibringen das nur
localhost zugriff auf das verzeichnis hat dat sollte ****en..
Ähnliche Themen
-
Probleme mit Tutorial
Von b0gus im Forum PhotoshopAntworten: 5Letzter Beitrag: 07.08.10, 12:28 -
Probleme mit Tutorial
Von matzibeater im Forum Flash FAQAntworten: 0Letzter Beitrag: 05.07.10, 21:55 -
Probleme mit RSS-Tutorial
Von DaRealMC im Forum PHPAntworten: 6Letzter Beitrag: 11.06.06, 14:20 -
Probleme mit Tutorial
Von VCF im Forum Flash PlattformAntworten: 6Letzter Beitrag: 11.09.05, 20:58 -
Probleme mit dem IRC Tutorial
Von Doctor Drunk im Forum PHPAntworten: 8Letzter Beitrag: 28.12.04, 18:04





Zitieren
Login






[PHP][Snippet] Array zu XML konvertieren