Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno PHP script

Dobrý deň,
chcem niekoho zainteresovaného požiadať o pomoc.
Robím si webovú stránku a chcem použiť skript na počítanie návštev (viď nižšie) a keďže ho chcem použiť asi 150 krát rád by som pridal riadok do skriptu aby som v skripte nemusel prepisovať pocet.txt 3 krát. Viem že sa to nejako dá ale php neovládam. Čiže niekde na začiatku bude riadok kde bude požadované slovo (napr. melon) a ten skript si ho nejako automaticky dosadí namiesto toho pocet.txt.
Neviem či chcem teraz moc ale ideálne by bolo ak by namiesto toho pocet.txt napísalo názov_súboru(bez pôvodnej prípony).txt (čiže z melon.html by sa stalo melon.txt)

<?php
if(file_exists("pocet.txt")){
print "";
}else{
$file=fopen("pocet.txt","a");
fputs($file,"0");
fclose($file);
}
$soubor="pocet.txt";
$file=fopen("$soubor","r+");
$pocet=fgets($file,100);
$pocet++;
fseek($file,0);
fputs($file,$pocet);
fclose($file);
echo $pocet
?>

Za pomoc veľmi ďakujem :) Uľahčí mi to robotu a skráti čas strávený za prepisovaním a kopírovaním.

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
a problém je kde, někam na první řádek napíšu $meloun="meloun.txt" a všude kde je text "pocet.txt";…
AZOR 01.07.2013 13:11
AZOR
ďakujem veľmi moc :) ak to bude fungovať problém už nebude nikde :) čiže teraz by to malo vyzerať ta…
PHP noob 01.07.2013 13:19
PHP noob
Sorry vyhořel jsem z práce a nesnáším ji. Přesto poradím ti trochu jinak fintu: $currentFile = $_…
Flash_Gordon 01.07.2013 13:36
Flash_Gordon
Ahoj :) díki za fintu ;) ...problém je že mi to dáva chybu v tomto riadku $currentFile =. '.txt';…
PHP noob 01.07.2013 13:44
PHP noob
možno bude zle aj to že to mám .html
PHP noob 01.07.2013 13:49
PHP noob
nakoniec som to dal takto a chyba nevyskakuje Počet prehratí: <?php $currentFile = $_SERVER["PHP_SE…
PHP noob 01.07.2013 13:52
PHP noob
Tadá: <? $currentFile = $_SERVER["PHP_SELF"]; $parts = Explode('/', $currentFile); $currentFile = $…
Flash_Gordon 01.07.2013 14:05
Flash_Gordon
wueeeej .... funguje ako má ... všetko fičí :) díki moc za pomoc a za trávenie času strávenom pri ri…
PHP noob 01.07.2013 14:57
PHP noob
*a za strávený čas ....preboha to som nejakú hatlaninu napísal :D poslední
PHP noob 01.07.2013 14:58
PHP noob

a problém je kde,
někam na první řádek napíšu
$meloun="meloun.txt"
a všude kde je text "pocet.txt"; nahradím $meloun. Nebo $soubor="pocet.txt"; dám na první řádek a všechny počet.txt nahradím $soubor

ďakujem veľmi moc :) ak to bude fungovať problém už nebude nikde :)
čiže teraz by to malo vyzerať takto ?

<?php
$soubor="cheryl.txt";
if(file_exists($soubor)){
print "";
}else{
$file=fopen($soubor,"a");
fputs($file,"0");
fclose($file);
}
$soubor=$soubor;
$file=fopen($soubor,"r+");
$pocet=fgets($file,100);
$pocet++;
fseek($file,0);
fputs($file,$pocet);
fclose($file);
echo $pocet
?>

Sorry vyhořel jsem z práce a nesnáším ji.

Přesto poradím ti trochu jinak fintu:

  $currentFile = $_SERVER["PHP_SELF"];
                $parts = Explode('/', $currentFile);
                echo $parts[count($parts) - 1]; 

$currentFile = substr($string, 0, -3);
$currentFile =. '.txt';

// Dále to tvoje:

$soubor = $currentFile
if(file_exists($soubor)){
print "";
}else{
$file=fopen($soubor,"a");
fputs($file,"0");
fclose($file);
}
$soubor=$soubor;
$file=fopen($soubor,"r+");
$pocet=fgets($file,100);
$pocet++;
fseek($file,0);
fputs($file,$pocet);
fclose($file);
echo $pocet


Tvoji část jsem nekontroloval, ale pokud funguje, tak by se to celé elegantně měly zakládat soubory txt s názvem navštívené stránky a v nich by měl být počet návštěv.
Samozřejmě je zde řada, ALE ,ale ty nebudu rozepisovat, nehodí se to.

Jo a předpokladem je, že ten fragment kódu umístíš do každého souboru (PHP).

nakoniec som to dal takto a chyba nevyskakuje

Počet prehratí:
<?php
$currentFile = $_SERVER["PHP_SELF"];
                $parts = Explode('/', $currentFile);
                echo $parts[count($parts) - 1]; 
$currentFile = substr($string, 0, -3);
$currentFile = '.txt';
$soubor = $currentFile;
if(file_exists($soubor)){
print "";
}else{
$file=fopen($soubor,"a");
fputs($file,"0");
fclose($file);
}
$soubor=$soubor;
$file=fopen($soubor,"r+");
$pocet=fgets($file,100);
$pocet++;
fseek($file,0);
fputs($file,$pocet);
fclose($file);
echo $pocet
?>

avšak teraz mi ne stránke píše

Počet prehratí: cheryl.html3

tú trojka bola najprv 2 a ešte predtým 1 :/

Tadá:

<?
 $currentFile = $_SERVER["PHP_SELF"];
                $parts = Explode('/', $currentFile);
                $currentFile = $parts[count($parts) - 1]; 

$currentFile = substr_replace($currentFile  ,"",-3);   // ZDE -3 je pro *.PHP  například pro *.html  musíš dát -4
$currentFile = $currentFile.'txt';
// Dále to tvoje:

$soubor = $currentFile;
if(file_exists($soubor)){
print "";
}else{
$file=fopen($soubor,"a");
fputs($file,"0");
fclose($file);
}

$file=fopen($soubor,"r+");
$pocet=fgets($file,100);
$pocet++;
fseek($file,0);
fputs($file,$pocet);
fclose($file);
echo $pocet
?>

Zpět do poradny Odpovědět na původní otázku Nahoru