2009-10-03 7 views
0

Je possède ce code php:Le script du compteur de clics ne fonctionne pas correctement!

<?php 
if(!file_exists('counter.txt')){ 
file_put_contents('counter.txt', '0'); 
} 
if($_GET['click'] == 'yes'){ 
file_put_contents('counter.txt', ((int) file_get_contents('counter.txt')) + 1); 
header('Location: ' . $_SERVER['SCRIPT_NAME']); 
die; 
} 
?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<title>counter</title> 
</head> 
<body> 
<h1><?php echo file_get_contents('counter.txt'); ?></h1> 
<a href="?click=yes">clickMe</a> 
</body> 
</html> 

Il est censé compter le nombre de fois que quelqu'un clique sur un certain lien.

J'ai enregistré ce code dans un fichier appelé index.php, puis dans le même répertoire j'ai créé un fichier appelé counter.txt (définissez les autorisations de counter.txt sur 666). Cependant quand je lance le script, il arrive avec:

Erreur fatale: Appel à fonction non définie: file_put_contents() dans /home/index.php en ligne 6

Comment puis-je corriger cette erreur, et en quelque sorte afficher le compte cliquez sur la même page que le lien?

Répondre

3

Si file_put_contents() est définie, je suppose que vous utilisez une version de php < 5.

Si tel est le cas, vous devrez remplacer cette fonction avec fopen(), fwrite() et fclose(), voir aussi php manual page.

+0

Merci @jeroen, heureusement mon hébergeur me permet de changer ma version de php, corrigé ça, merci beaucoup! –

+0

De rien! – jeroen

Questions connexes