Delphi-PRAXiS
Seite 2 von 4     12 34      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [PHP] Counter erhöhen (https://www.delphipraxis.net/126932-%5Bphp%5D-counter-erhoehen.html)

Larsi 5. Jan 2009 10:45

Re: [PHP] Counter erhöhen
 
Code:
<? 
 $fp=fopen("diedatei.txt","a+");

fwrite($fp,$_SERVER['REMOTE_ADDR']."\n");
 fclose($fp);
?>
Damit nicht so viele doppelte Einträge sind speicher ich einfach die Ip. In Delphi werde ich dann die Anzahl auswerten und die Datei automatisch jeden Tag leeren lassen.

Edit: Und ich habe die Lösung nicht einfach aus irgendeiner Website kopiert sondern sebler erarbeitet.

DeddyH 5. Jan 2009 10:48

Re: [PHP] Counter erhöhen
 
Wieso schreibst Du nicht einfach die Zahl rein? So bliebe die Datei schön klein.

Larsi 5. Jan 2009 10:49

Re: [PHP] Counter erhöhen
 
Das mit dem "einfachen" Post kriege ich irgendwie nicht richtig hin. Idhttp erwartet ja noch weitere Paramter aber ich will ja einfach nur die Datei aufrufen.

Delphi-Quellcode:
IdHttp1.post('http://wiltfang.wi.funpic.de/meinipskript.php');

klappt nicht.

DeddyH 5. Jan 2009 10:51

Re: [PHP] Counter erhöhen
 
Ich habe keine Indys installiert, aber statt Post sollte Get doch klappen, wenn ich nicht irre (das Script muss ja nur aufgerufen werden).

Matze 5. Jan 2009 10:51

Re: [PHP] Counter erhöhen
 
Es können auch mehrere Leute mit der gleichen externen IP unterwegs sein. Also dafür die IP zu speichern ist in meinen Augen großer Quatsch.
Wie Detlef schrieb: Speicher die Zahl und gut ist. Die könntest du mit Delphi und Get() auch leicht und schnell auslesen, falls du das willst.

Edit: Post() erwartet mind. einen 2. Parameter, soweit ich weiß. Doch das müsste dir doch Delphi mitteilen. :roll: Get() reicht für das Skript vollkommen aus.

Luckie 5. Jan 2009 10:54

Re: [PHP] Counter erhöhen
 
Du gehörst wahrscheinlich auch zu den Leuten, die sich einen zweiten Monitor kaufen, wenn man auf dem ersten vor lauter Postit Zetteln, das Bild nicht mehr sehen kann oder? Aber gut, deine Lösung funktioniert natürlich auch, nur brauchst du jetzt ein zweites Programm oder Skript, welches dir die Anzahl der zeilen anzeigen kann, wenn du wissen willst, wie viele Leute dein Programm benutzen.

Also ich würde es auch für sinnvoller halten die Zahl in die Datei zu schreiben. Wie as geht, hat die Matze gezeigt.

Und zum Erhöhen reicht einfaches aufrufen der Datei. Probier es im Browser aus.

Larsi 5. Jan 2009 11:00

Re: [PHP] Counter erhöhen
 
Ok, jetzt geht alles. Hat sich geklärt.

Luckie 5. Jan 2009 11:02

Re: [PHP] Counter erhöhen
 
Wenn du das Skript von Matze nutzt, kannst du sie einfach löschen. Sie wird neu erstellt, wenn sie nicht vorhanden ist.

Valle 5. Jan 2009 11:17

Re: [PHP] Counter erhöhen
 
Zitat:

Zitat von Matze
per FTP anlegen und ChMod auf 777 setzen

Warum das denn bitte? Warum denn gleich 777? Wie wäre es mit was passenderem, wie z.B. 640, oder von mir aus auch 660. Oder am besten gleich default lassen. Aber 777 halte ich für Unsinn. Das kann bei einigen Hostern Probleme machen. Und außerdem sollte mittlerweile jeder Hoster so weit sein, dass es auch ohne volle Rechte funktioniert.

Zitat:

Zitat von Matze
Die PHP könnte grob so aussehen:

Code:
<?php

define('MY_FILE', 'counter.txt');

$counter = 1;

if (file_exists(MY_FILE))
{
    $file_handle = fopen(MY_FILE, 'r');
    $counter = fgets($file_handle);
    fclose($file_handle);

    $counter = (!empty($counter)) ? $counter + 1 : 1;  
}

$file_handle = fopen(MY_FILE, 'w');
fputs($file_handle, $counter);
fclose($file_handle);

// evtl. eine Ausgabe für dich zur Kontrolle:
echo 'Wert: ' . $counter;

?>

Code:
file_put_contents("counter.txt", intval(file_get_contents("counter.txt"))+1);
SCNR :mrgreen:

Mit freundlichen Grüßen,

Valle

Matze 5. Jan 2009 11:21

Re: [PHP] Counter erhöhen
 
Hi Valle,

ich habe schon Ewigkeiten nichts mit Textdateien gemacht. Bei einem früheren Hoster (vor 3 Jahren vllt.) hat es bei mir nur mit 777 funktioniert und meine bisherigen Hoster haben das alle unterstützt.

Deine Kurzlösung ist natürlich fein, aber wie gesagt, da ich nie damit arbeite kann das schonmal eine umfangreichere Lösung werden. :mrgreen: Funktionieren tut sie, aber deine ist natürlich eleganter.

Grüße


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:48 Uhr.
Seite 2 von 4     12 34      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz