Re: Umstellung auf PHP

5 views
Skip to first unread message

Stefan Froehlich

unread,
Nov 3, 2020, 6:41:12 AM11/3/20
to
Xpost und Fup nach dclp

On Tue, 03 Nov 2020 12:22:36 Wolfgang Bauer wrote:
> <?php
> echo "<!DOCTYPE html>\n";
> echo "<html lang=\"de\">\n";
> echo "\n";
> echo "<head>\n";
> echo " <title>Wolfgang Bauer, meine private Startseite</title>\n";
> echo " <link href=\"styles.css\" rel=\"stylesheet\" type=\"text/css\" /> \n";
> echo " <link rel=\"shortcut icon\" type=\"image/x-icon\" href=\"images/favicon.ico\">\n";
> echo " <meta name=\"description\" content=\"Meine Kurzbiographie und Bilder meiner Umgebung\" />\n";
> echo " <meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\" />\n";
> echo " \n";
> echo "\n";
> echo " \n";

Tip: Solange Du einfach nur Text 1:1 ausgibst, ist es einfacher, den
direkt in den Quelltext zu schreiben, anstatt ihn via echo
auszugeben:

#v+
<!DOCTYPE html>
<html lang="de">
<head>
<title>Wolfgang Bauer, meine private Startseite</title>
[...]

<?php # hier kommt eine PHP-generierte ausgabe ?>
#v-

> <? function getCounter($counterID)
> {
> // each counter value is stored inside a unique file
> // We use $counterID as a part of the file name
> // Example: file name will be "counter1.txt" if $counterID is set to "1"
>
> $fileName = "counter".$counterID.".txt";
>
> if( file_exists($fileName) ) {
> list($numVisitors)=file($fileName); // Read contents from the file
> } else {
> $numVisitors=0; // This is the first time the page is accessed
> }
>
> $numVisitors=$numVisitors+1; // Increase the count
>
> $fil=fopen($fileName,"w"); // Open the file to replace old value
> fputs($fil,$numVisitors); // Write the new count to the file
> fclose($fil); // Close the file
> return $numVisitors; // Return the new count
> }
> ?>

> Der, wenn ich selbst die Site aufrufe, aber immer auf 1 steht.

Hast Du denn überhaupt Schreibrechte in dem Verzeichnis? Das sieht
mir auf den ersten Blick sehr danach aus, als ob jedes Mal
$numVisitors mit 0 initialisiert, hochgezählt, angezeigt aber danach
nicht gespeichert wird.

(Über die Sinnhaftigkeit von Countern lasse ich mich an dieser
Stelle nicht aus)

Servus,
Stefan

--
http://kontaktinser.at/ - die kostenlose Kontaktboerse fuer Oesterreich
Offizieller Erstbesucher(TM) von mmeike

Das Glück kommt zu dir. Mit Stefan. Ein geniales Vergnügen!
(Sloganizer)

Wolfgang Bauer

unread,
Nov 3, 2020, 7:07:51 AM11/3/20
to
Stefan schrieb:

> Xpost und Fup nach dclp
> On Tue, 03 Nov 2020 12:22:36 Wolfgang Bauer wrote:

>> Ich habe mich mal etwas für PHP interessiert und testweise
>>meine Homepage nach PHP umgestellt. Die ersten Zeilen der index.php
>>sehen so aus.
>> <?php
>> echo "<!DOCTYPE html>\n";
>> echo "<html lang=\"de\">\n";
>> echo "\n";
>> echo "<head>\n";
>> echo " <title>Wolfgang Bauer, meine private Startseite</title>\n";
>> echo " <link href=\"styles.css\" rel=\"stylesheet\" type=\"text/css\" /> \n";
>> echo " <link rel=\"shortcut icon\" type=\"image/x-icon\" href=\"images/favicon.ico\">\n";
>> echo " <meta name=\"description\" content=\"Meine Kurzbiographie und Bilder meiner Umgebung\" />\n";
>> echo " <meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\" />\n";
>> echo " \n";
>> echo "\n";
>> echo " \n";

> Tip: Solange Du einfach nur Text 1:1 ausgibst, ist es einfacher, den
> direkt in den Quelltext zu schreiben, anstatt ihn via echo
> auszugeben:

Dann wäre es einfach HTML, oder?

> #v+
> <!DOCTYPE html>
> <html lang="de">
> <head>
> <title>Wolfgang Bauer, meine private Startseite</title>
> [...]

> <?php # hier kommt eine PHP-generierte ausgabe ?>
> #v-

>> In diese PHP-Skript habe ich noch einen Besucherzähler eingebaut.
>> <? function getCounter($counterID)
>> {
>> // each counter value is stored inside a unique file
>> // We use $counterID as a part of the file name
>> // Example: file name will be "counter1.txt" if $counterID is set to "1"

>> $fileName = "counter".$counterID.".txt";

>> if( file_exists($fileName) ) {
>> list($numVisitors)=file($fileName); // Read contents from the file
>> } else {
>> $numVisitors=0; // This is the first time the page is accessed
>> }

>> $numVisitors=$numVisitors+1; // Increase the count

>> $fil=fopen($fileName,"w"); // Open the file to replace old value
>> fputs($fil,$numVisitors); // Write the new count to the file
>> fclose($fil); // Close the file
>> return $numVisitors; // Return the new count
>> }
>> ?>

>> Der, wenn ich selbst die Site aufrufe, aber immer auf 1 steht.

> Hast Du denn überhaupt Schreibrechte in dem Verzeichnis? Das sieht
> mir auf den ersten Blick sehr danach aus, als ob jedes Mal
> $numVisitors mit 0 initialisiert, hochgezählt, angezeigt aber danach
> nicht gespeichert wird.

Das sind die Rechte auf meinem Server.
http://wolfgang-bauer.at/bilder/rechte.jpg

Freundliche Grüße
Wolfgang 😷
--
Ich bin nicht dumm, ich hab nur Pech beim Denken.

Wolfgang Bauer

unread,
Nov 3, 2020, 7:22:35 AM11/3/20
to
Ich selbst schrieb:

> Stefan schrieb:

>> Xpost und Fup nach dclp
>> On Tue, 03 Nov 2020 12:22:36 Wolfgang Bauer wrote:

>>> Ich habe mich mal etwas für PHP interessiert und testweise
>>> meine Homepage nach PHP umgestellt.
http://wolfgang-bauer.at/my-php-sites/index.php
Freundliche Grüße
Wolfgang 😷
--
Wenn die Guten nicht kämpfen, werden die Schlechten siegen.

Stefan Froehlich

unread,
Nov 3, 2020, 8:25:58 AM11/3/20
to
On Tue, 03 Nov 2020 13:07:47 Wolfgang Bauer wrote:
> Stefan schrieb:
> > Tip: Solange Du einfach nur Text 1:1 ausgibst, ist es einfacher, den
> > direkt in den Quelltext zu schreiben, anstatt ihn via echo
> > auszugeben:

> Dann wäre es einfach HTML, oder?

Bis zum ersten "<?php" halt. Wenn ein File überwiegend aus HTML
besteht, ist es übersichtlicher, es auch so zu schreiben.

> >> $fil=fopen($fileName,"w"); // Open the file to replace old value
> >> fputs($fil,$numVisitors); // Write the new count to the file
> >> fclose($fil); // Close the file

> > Hast Du denn überhaupt Schreibrechte in dem Verzeichnis? Das
> > sieht mir auf den ersten Blick sehr danach aus, als ob jedes Mal
> > $numVisitors mit 0 initialisiert, hochgezählt, angezeigt aber
> > danach nicht gespeichert wird.
>
> Das sind die Rechte auf meinem Server.
> http://wolfgang-bauer.at/bilder/rechte.jpg

Und Du bist Dir sicher, dass Dein Skript mit dem selben User läuft,
der im Screenshot als "Webspace Owner" bezeichnet wird? Das wäre
eher unüblich, da sich das Skript dann selbst überschreiben könnte.

Einfache Frage: gibt's $fileName nach dem Aufruf der Seite denn?

(Und sollte es die Datei tatsächlich geben, was ich nicht annehme:
Welchen Inhalt hat sieß)

Servus,
Stefan

--
http://kontaktinser.at/ - die kostenlose Kontaktboerse fuer Oesterreich
Offizieller Erstbesucher(TM) von mmeike

Geht nicht!? Geht doch: Stefan.
(Sloganizer)

Wolfgang Bauer

unread,
Nov 3, 2020, 9:17:41 AM11/3/20
to
Stefan Froehlich schrieb:
> On Tue, 03 Nov 2020 13:07:47 Wolfgang Bauer wrote:

>> Dann wäre es einfach HTML, oder?

> Bis zum ersten "<?php" halt. Wenn ein File überwiegend aus HTML
> besteht, ist es übersichtlicher, es auch so zu schreiben.

Ich kann die Sites auch in /nur/ .html lassen. Ich wollte .php einfach
mal ausprobieren. Die .html Sites habe ich mit
https://www.beautifyconverter.com/html-to-php-converter.php
konvertiert.

>> Das sind die Rechte auf meinem Server.
>> http://wolfgang-bauer.at/bilder/rechte.jpg

> Und Du bist Dir sicher, dass Dein Skript mit dem selben User läuft,
> der im Screenshot als "Webspace Owner" bezeichnet wird?

Lokal bin ich der Besitzer von index.php mit vollen Rechten
und bin Besitzer des Servers wolfgang-bauer.at.

> Das wäre eher unüblich, da sich das Skript dann selbst überschreiben
> könnte.

> Einfache Frage: gibt's $fileName nach dem Aufruf der Seite denn?

Wo sollte die Datei zu finden sein?

> (Und sollte es die Datei tatsächlich geben, was ich nicht annehme:
> Welchen Inhalt hat sieß)

Übrigens hat sich das mit dem Counter im Moment erledigt,
der ist einfach verschwunden von der Site.

Freundliche Grüße
Wolfgang 😷
--
Wer weiß, was du morgen schon erreicht hättest,
würdest du es heute versuchen.

Stefan Froehlich

unread,
Nov 3, 2020, 9:44:49 AM11/3/20
to
On Tue, 03 Nov 2020 15:17:38 Wolfgang Bauer wrote:
> Stefan Froehlich schrieb:
> > On Tue, 03 Nov 2020 13:07:47 Wolfgang Bauer wrote:
> >> Dann wäre es einfach HTML, oder?

> > Bis zum ersten "<?php" halt. Wenn ein File überwiegend aus HTML
> > besteht, ist es übersichtlicher, es auch so zu schreiben.

> Ich kann die Sites auch in /nur/ .html lassen. Ich wollte .php
> einfach mal ausprobieren.

Das ist nicht der Punkt. Du kannst ja PHP in die Seiten integrieren,
aber deshalb musst Du noch längst nicht *alles* via PHP erzeugen.

> >> Das sind die Rechte auf meinem Server.
> >> http://wolfgang-bauer.at/bilder/rechte.jpg

> > Und Du bist Dir sicher, dass Dein Skript mit dem selben User
> > läuft, der im Screenshot als "Webspace Owner" bezeichnet wird?

> Lokal bin ich der Besitzer von index.php mit vollen Rechten und
> bin Besitzer des Servers wolfgang-bauer.at.

Und Du bist Dir sicher, dass Dein Skript mit dem selben User läuft,
der im Screenshot als "Webspace Owner" bezeichnet wird?

(Hint: Zugegriffen wird vom Webserver, und der muss - und wird -
ziemlich sicher nicht mit Deiner Benutzerkennung laufen)

> > Einfache Frage: gibt's $fileName nach dem Aufruf der Seite denn?

> Wo sollte die Datei zu finden sein?

Wenn Du das nicht weiss, solltest Du das Skript besser gar nicht
erst ausprobieren (das ist von der Auswirkung her ja praktisch so,
als ob Du dem Autor des Skripts beliebige Schreibrechte einräumst).

> Übrigens hat sich das mit dem Counter im Moment erledigt,
> der ist einfach verschwunden von der Site.

Klingt nicht ganz so, als hättest Du die volle Kontrolle über das
Geschehen :-/

Servus,
Stefan

--
http://kontaktinser.at/ - die kostenlose Kontaktboerse fuer Oesterreich
Offizieller Erstbesucher(TM) von mmeike

Ohne Qual bei der Wahl! Stefan.
(Sloganizer)

Wolfgang Bauer

unread,
Nov 3, 2020, 10:05:08 AM11/3/20
to
Stefan Froehlich schrieb:

>> Übrigens hat sich das mit dem Counter im Moment erledigt,
>> der ist einfach verschwunden von der Site.

> Klingt nicht ganz so, als hättest Du die volle Kontrolle über das
> Geschehen :-/

Die habe ich auch nicht. Es war mal ein Abstecher in ein Gebiet das sich
mir nicht ganz erschließt. Ich lasse es wieder bei reinem html5.

Freundliche Grüße
Wolfgang Bauer
--
https://www.wolfgang-bauer.at/index.html

Wolfgang Bauer

unread,
Nov 8, 2020, 5:49:40 AM11/8/20
to
Stefan Froehlich schrieb:

> Und Du bist Dir sicher, dass Dein Skript mit dem selben User läuft,
> der im Screenshot als "Webspace Owner" bezeichnet wird?

Das Skript läuft, der Counter zählt.

<?php
// Counter
$Dateiname = "counter.txt";
$Datei = fOpen($Dateiname,"r+");
$Zaehler = fGets($Datei,255);
fClose($Datei);
$Zaehler++;
$Datei = fOpen($Dateiname,"w");
fPuts($Datei,$Zaehler);
fClose($Datei);
?>

Nun ist es aber so, der Counter erhöht um eins wenn die Site
http://wolfgang-bauer.at/website-test/index.php
besucht wird. Wenn der User dann auf die Site "Meine Wohnung" geht
und "zurück" zu index.php mit dem Counterskript wird wieder um 1 erhöht.
Da möchte ich das Hochzählen abschalten.

Ich habe mich schon mit Sprungmarke und -ziel befaßt, sodaß bei "zurück
der Counter nicht durchlaufen wird, bin damit aber nicht zum Erfolg
gekommen. Dann habe ich eine index2.php erstellt die aus Wohnung
"zurück" aufgerufen wird, mit dem Counter Skript.

Welche Zeile(n) sind es die Hochzählen, die ich hinter Kommentarzeichen
setzen müßte? http://wolfgang-bauer.at/website-test/index.php

Freundliche Grüße
Wolfgang
--
Die Katze ist nicht mein Gefangener,
sondern ein unabhängiges Wesen von fast gleichem Status,
das zufällig im selben Haus lebt, wie ich.
Konrad Lorenz

Stefan Froehlich

unread,
Nov 8, 2020, 8:15:25 AM11/8/20
to
On Sun, 08 Nov 2020 11:49:37 Wolfgang Bauer wrote:
> Das Skript läuft, der Counter zählt.

Fein.

> <?php
> // Counter
> $Dateiname = "counter.txt";
> $Datei = fOpen($Dateiname,"r+");
> $Zaehler = fGets($Datei,255);
> fClose($Datei);
> $Zaehler++;
> $Datei = fOpen($Dateiname,"w");
> fPuts($Datei,$Zaehler);
> fClose($Datei);
> ?>
>
> Nun ist es aber so, der Counter erhöht um eins wenn die Site
> http://wolfgang-bauer.at/website-test/index.php
> besucht wird. Wenn der User dann auf die Site "Meine Wohnung"
> geht und "zurück" zu index.php mit dem Counterskript wird wieder
> um 1 erhöht.

Ja, das ist genau sein Job (weshalb Counter ja auch generell nicht
mehr so beliebt sind, wie vor 20 Jahren).

> Da möchte ich das Hochzählen abschalten.

> Ich habe mich schon mit Sprungmarke und -ziel befaßt, sodaß bei
> "zurück der Counter nicht durchlaufen wird, bin damit aber nicht
> zum Erfolg gekommen. Dann habe ich eine index2.php erstellt die
> aus Wohnung "zurück" aufgerufen wird, mit dem Counter Skript.

Das ist eher ein Verschlimmbessern, denn damit hast Du zwei Seiten
mit dem gleichen Inhalt - was über kurz oder lang dazu führen wird,
dass Du auf einer der beiden Seiten etwas änderst, aber darauf
vergisst, das auch auf der anderen zu tun.

Ganz abgesehen davon hilft es nicht gegen Leute, die den Back-Button
verwenden.

> Welche Zeile(n) sind es die Hochzählen, die ich hinter
> Kommentarzeichen setzen müßte?
> http://wolfgang-bauer.at/website-test/index.php

Wenn Du das wirklich so tun möchtest, reicht es aus, das fputs()
auszukommentieren, damit der erhöhte Zähler nicht mehr
zurückgeschrieben wird.

Servus,
Stefan

--
http://kontaktinser.at/ - die kostenlose Kontaktboerse fuer Oesterreich
Offizieller Erstbesucher(TM) von mmeike

Mit der Sympathie des Verführers! Stefan, so stumpf...
(Sloganizer)

Wolfgang Bauer

unread,
Nov 8, 2020, 9:40:23 AM11/8/20
to
Stefan Froehlich schrieb:
> On Sun, 08 Nov 2020 11:49:37 Wolfgang Bauer wrote:

>> Da möchte ich das Hochzählen abschalten.

Das mache ich indem der Counter entfernt wird, die index.php
wieder index.html heißt. Wie ich schrieb, war das mal ein Abstecher um
PHP etwas kennen zu lernen. Anfangs war auch die index.php komplett in
PHP, nicht nur der Counter. Jetzt sind beide Sites wieder HTML, ohne
Counter. https://www.wolfgang-bauer.at/index.html

Freundliche Grüße
Wolfgang
--
Die meisten Menschen sind unbestechlich.
Manche nehmen nicht einmal Vernunft an.
Reply all
Reply to author
Forward
0 new messages