WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   [PHP] Logga intrång i en txt (https://www.wn.se/forum/showthread.php?t=5040)

ArreliuS 2004-12-17 09:16

Hejsan,

Använder mig av en snutt php-kod som jag snappade upp i en artikel på PHPsidan. Den ser ut som följande;
Kod:

if (!preg_match('/^([0-9]+)$/', $_GET['id']))
        {
  $fp = fopen('log.txt',"r+");
 fwrite($fp, $_SERVER['REMOTE_ADDR']." went at ".date('l dS of F Y H:i:s')." to page {$_SERVER['PHP_SELF']} with invalid GET-data.\n");
 fclose($fp);
        die("Hacking attempt!");
        }

Den ska förhindra att människor kan skriva in annat än siffror i query strängen. Om det är något annat tecken så dör den och skriver in den information som jag vill ha i log.txt. Problemet är dock att det bara blir en rad. Varje gång någon försöker sig på att fiffla med strängen så ersätts den gamla texten med en ny.

Skulle helst vilja ha det så att den fortsätter direkt efter radbrytningen \n och sedan den nya datan.

Någon som har något förslag på hur jag kan lösa detta?

Tobbe 2004-12-17 09:18

Har du ens läst på php.net? Där finns tydliga exempel för detta under respektive funktionsnamn.

ArreliuS 2004-12-17 09:30

Jaha där såg man. Ber så hemskt mycket om ursäkt för att jag slösade eran tid.

Storen 2004-12-17 09:48

Citat:

Originally posted by ArreliuS@Dec 17 2004, 09:30
Jaha där såg man. Ber så hemskt mycket om ursäkt för att jag slösade eran tid.
Nja, denna typ av frågeställningar är ju faktiskt bättre än många andra som dyker upp här..

eg0master 2004-12-17 09:57

WTF...
Vem har skrivit den där koden från start?
För det första så är det ganska sällan man behöver öppna en fil med "r+" över huvud taget tycker jag...
Och för det andra; om man nu bara öppnar den, skriver och sedan stänger så duger ju "a" alldeles utmärkt...

ArreliuS 2004-12-17 11:50

Citat:

Originally posted by eg0master@Dec 17 2004, 10:57
WTF...
Vem har skrivit den där koden från start?
För det första så är det ganska sällan man behöver öppna en fil med "r+" över huvud taget tycker jag...
Och för det andra; om man nu bara öppnar den, skriver och sedan stänger så duger ju "a" alldeles utmärkt...

Jag skrev dit "r+ " eftersom koden från början inte hade något sätt att öppna filen på. R+ var det enda kommandot jag kunde i huvudet så därför skrev jag dit det. Såg ju senare att det gick att använda andra tecken.

eg0master 2004-12-17 12:30

hehe, där ser man...
varför kolla manualen när man kan fråga... :D


Alla tider är GMT +2. Klockan är nu 13:19.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson